Linux-KVMプラットフォームにNetScaler VPXインスタンスをインストールするための前提条件
NetScaler VPXインスタンス上で動作するLinux-KVMサーバーの最小システム要件を確認してください。
CPU要件:
-
Intel VT-Xプロセッサに含まれるハードウェア仮想化機能を備えた64ビットx86プロセッサ。
お使いのCPUがLinuxホストをサポートしているかどうかをテストするには、ホストLinuxシェルプロンプトで次のコマンドを入力します。
*.egrep '^flags.*(vmx|svm)' /proc/cpuinfo*
前述の拡張機能のBIOS設定が無効になっている場合は、BIOSで有効にする必要があります。
-
ホストLinuxに少なくとも2つのCPUコアを提供してください。
-
プロセッサ速度に関する具体的な推奨事項はありませんが、速度が速いほどVMアプリケーションのパフォーマンスが向上します。
メモリ (RAM) 要件:
ホストLinuxカーネル用に最低4GB。VMが必要とする場合は、さらにメモリを追加してください。
ハードディスク要件:
ホストLinuxカーネルとVMの要件に必要なスペースを計算してください。単一のNetScaler VPX VMには20GBのディスクスペースが必要です。
ソフトウェア要件
使用するホストカーネルは、すべての仮想化ツールを備えた64ビットLinuxカーネル、リリース2.6.20以降である必要があります。Citrixは、3.6.11-4以降のような新しいカーネルを推奨しています。
Red Hat、CentOS、Fedoraなどの多くのLinuxディストリビューションには、テスト済みのカーネルバージョンと関連する仮想化ツールがあります。
ゲストVMのハードウェア要件
NetScaler VPXは、IDEおよびvirtIOハードディスクタイプをサポートしています。ハードディスクタイプは、NetScalerパッケージの一部であるXMLファイルで構成されています。
ネットワーク要件
NetScaler VPXは、virtIO準仮想化、SR-IOV、およびPCIパススルーネットワークインターフェイスをサポートしています。
サポートされているネットワークインターフェイスの詳細については、以下を参照してください。
-
SR-IOVネットワークインターフェイスを使用するようにNetScaler VPXインスタンスを構成する
-
PCIパススルーネットワークインターフェイスを使用するようにNetScaler VPXインスタンスを構成する
ソースインターフェイスとモード
ソースデバイスタイプは、BridgeまたはMacVTapのいずれかです。MacVTapでは、VEPA、Bridge、Private、Pass-throughの4つのモードが可能です。以下に従って、使用できるインターフェイスの種類とサポートされているトラフィックの種類を確認してください。
ブリッジ:
-
Linuxブリッジ。
-
正しい設定を選択しないか、
IPtableサービスを無効にしない場合、ホストLinux上のEbtablesおよびiptables設定がブリッジ上のトラフィックをフィルタリングする可能性があります。
MacVTap (VEPAモード):
-
ブリッジよりも優れたパフォーマンス。
-
同じ下位デバイスからのインターフェースはVM間で共有できます。
-
同じものを使用するVM間通信
-
下位デバイスは、アップストリームまたはダウンストリームスイッチがVEPAモードをサポートしている場合にのみ可能です。
MacVTap (プライベートモード):
-
ブリッジよりもパフォーマンスが優れています。
-
同じ下位デバイスからのインターフェースはVM間で共有できます。
-
同じ下位デバイスを使用するVM間通信は不可能です。
MacVTap (ブリッジモード):
-
ブリッジと比較して優れています。
-
同じ下位デバイスからのインターフェースはVM間で共有できます。
-
同じ下位デバイスを使用するVM間通信は、下位デバイスリンクがUPの場合に可能です。
MacVTap (パススルーモード):
-
ブリッジと比較して優れています。
-
同じ下位デバイスからのインターフェースはVM間で共有できません。
-
1つのVMのみが下位デバイスを使用できます。
注記:
VPXインスタンスの最高のパフォーマンスのために、ソースインターフェースで
groおよびlro機能が無効になっていることを確認してください。
ソースインターフェースのプロパティ
ソースインターフェースのgeneric-receive-offload (
gro) および large-receive-offload (lro) 機能を無効にしてください。groおよびlro機能を無効にするには、ホストLinuxシェルプロンプトで次のコマンドを実行します。
ethtool -K eth6 gro off ethool -K eth6 lro off
例:
[root@localhost ~]# ethtool -K eth6
Offload parameters for eth6:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
[root@localhost ~]#
例:
次の例のように、ホストLinuxブリッジがソースデバイスとして使用されている場合、ホストをゲストVMに接続する仮想インターフェースであるVNetインターフェースで
lro機能を無効にする必要があります。
[root@localhost ~]# brctl show eth6_br
bridge name bridge id STP enabled interfaces
eth6_br 8000.00e0ed1861ae no eth6
vnet0
vnet2
[root@localhost ~]#
上記の例では、2つの仮想インターフェースはeth6\_brから派生しており、vnet0およびvnet2として表されます。これらのインターフェースで
groおよびlro機能を無効にするには、次のコマンドを実行します。
ethtool -K vnet0 gro off
ethtool -K vnet2 gro off
ethtool -K vnet0 lro off
ethtool -K vnet2 lro off
プロミスキャスモード
次の機能が動作するためには、プロミスキャスモードを有効にする必要があります。
-
L2モード
-
マルチキャストトラフィック処理
-
ブロードキャスト
-
IPV6トラフィック
-
仮想MAC
-
動的ルーティング
プロミスキャスモードを有効にするには、次のコマンドを使用します。
[root@localhost ~]# ifconfig eth6 promisc
[root@localhost ~]# ifconfig eth6
eth6 Link encap:Ethernet HWaddr 78:2b:cb:51:54:a3
inet6 addr: fe80::7a2b:cbff:fe51:54a3/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:9000 Metric:1
RX packets:142961 errors:0 dropped:0 overruns:0 frame:0
TX packets:2895843 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14330008 (14.3 MB) TX bytes:1019416071 (1.0 GB)
[root@localhost ~]#
必要なモジュール
ネットワークパフォーマンスを向上させるには、Linuxホストにvhost\_netモジュールが存在することを確認してください。vhost\_netモジュールの存在を確認するには、Linuxホストで次のコマンドを実行します。
lsmod | grep "vhost\_net"
vhost\_netがまだ実行されていない場合は、次のコマンドを入力して実行します。
modprobe vhost\_net