Linux-KVMプラットフォームにNetScaler VPXインスタンスをインストールするための前提条件
NetScaler VPXインスタンス上で動作するLinux-KVMサーバーの最小システム要件を確認してください。
CPU要件:
- Intel VT-Xプロセッサに含まれるハードウェア仮想化機能を備えた64ビットx86プロセッサ。
お使いのCPUがLinuxホストをサポートしているかテストするには、ホストLinuxシェルプロンプトで次のコマンドを入力します。
*.egrep '^flags.*(vmx|svm)' /proc/cpuinfo*
<!--NeedCopy-->
前述の拡張機能の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パススルーネットワークインターフェイスをサポートしています。
サポートされているネットワークインターフェイスの詳細については、以下を参照してください。
- 仮想マシンマネージャーを使用してNetScaler VPXインスタンスをプロビジョニングする
- SR-IOVネットワークインターフェイスを使用するようにNetScaler VPXインスタンスを構成する
- PCIパススルーネットワークインターフェイスを使用するようにNetScaler VPXインスタンスを構成する
ソースインターフェイスとモード
ソースデバイスタイプは、BridgeまたはMacVTapのいずれかです。MacVTapでは、VEPA、Bridge、Private、Pass-throughの4つのモードが可能です。使用できるインターフェイスの種類とサポートされているトラフィックの種類を以下で確認してください。
ブリッジ:
- Linuxブリッジ。
- ホストLinux上の
Ebtablesおよびiptables設定は、正しい設定を選択しない場合、またはIPtableサービスを無効にした場合、ブリッジ上のトラフィックをフィルタリングする可能性があります。
マックブイタップ (ベパ モード):
- ブリッジよりも優れたパフォーマンス。
- 同じ下位デバイスからのインターフェースはVM間で共有できます。
- 同じものを使用した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 ~]#
<!--NeedCopy-->
例:
次の例のように、ホスト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 ~]#
<!--NeedCopy-->
上記の例では、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
<!--NeedCopy-->
プロミスキャスモード
次の機能が動作するためには、プロミスキャスモードを有効にする必要があります。
- 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 ~]#
<!--NeedCopy-->
必要なモジュール
ネットワークパフォーマンスを向上させるには、Linuxホストにvhost_netモジュールが存在することを確認してください。vhost_netモジュールの存在を確認するには、Linuxホストで次のコマンドを実行します。
lsmod | grep "vhost\_net"
<!--NeedCopy-->
vhost_netがまだ実行されていない場合は、次のコマンドを入力して実行してください。
modprobe vhost\_net
<!--NeedCopy-->