以下の手順で仮想ネットワークの設定を行います。OSをインストール直後(デフォルト)は、1つのNICに対してのみ仮想ネットワークが設定されます。高信頼ネットワークを構築するには、複数のNICに対して仮想ネットワークの設定をする必要があります。詳細は、「Linux 仮想マシン機能 ユーザーズマニュアル」を参照してください。
仮想ブリッジ作成用シェルスクリプトを作成します。また、以下のタイミングで、GLS固有スクリプトを実行するように設定してください。
仮想ブリッジの生成
仮想ブリッジが生成(op_start)される前に、GLS固有の停止スクリプト(/opt/FJSVhanet/local/sbin/hanetxen stop)を実行し、仮想ブリッジを作成後にGLS固有の起動スクリプト(/opt/FJSVhanet/local/sbin/hanetxen start)を実行するように設定してください。
仮想ブリッジの削除
仮想ブリッジを削除する(op_stop)前に、GLS固有の停止スクリプトを実行するように設定してください。
以下は、作成するシェルスクリプト名をnetwork-bridge-glsとした場合の設定例です。下記の例では、2枚のNIC(eth0,eth1)に対して仮想ネットワークを設定しています。
/etc/xen/scripts/network-bridge-gls
#!/bin/sh # # Sample of Create/Delete virtual bridge # # $1 start : Create virtual bridge # stop : Delete virtual bridge # status: Display virtual bridge information # Exit if anything goes wrong #set -e command=$1 xenscript=/etc/xen/scripts/network-bridge glsxenscript=/opt/FJSVhanet/local/sbin/hanetxen # op_start:subscript for start operation # op_start () { $xenscript $command vifnum=0 netdev=eth0 $xenscript $command vifnum=1 netdev=eth1 } # op_stop:subscript for stop operation # op_stop () { # same operation as start op_start } case "$command" in start) # Create your virtual bridge $glsxenscript stop op_start $glsxenscript start ;; stop) # Delete virtual bridge $glsxenscript stop op_stop ;; status) # display virtual bridge information $xenscript status ;; *) echo "Unknown command: $command" >&2 echo 'Valid commands are: start, stop, status' >&2 exit 1 esac |
参考
RHEL5とRHEL5.1では仮想ネットワークの設定方法が異なります。RHEL5の場合、“$xenscript $command vifnum=X netdev=ethX”ではなく、“$xenscript $command vifnum=X”を設定します。
“C.4.1 ドメイン0上のGLSでゲストドメインのネットワークを高信頼化する構成(構成1)”では、スクリプトから“set -e”の記述を削除してください。
作成したスクリプトは、“/etc/xen/scripts”配下に配置してください。
# cp network-bridge-gls /etc/xen/scripts # cd /etc/xen/scripts # chmod +x network-bridge-gls |
xendサービスへの登録
xendサービスの設定ファイル(/etc/xen/xend-config.sxp)の“network-script”パラメータを編集してください。“network-script”パラメータには、“network-bridge”が設定されています。作成したスクリプト名に変更してください。
# Your default ethernet device is used as the outgoing interface, by default. # To use a different one (e.g. eth1) use # # (network-script 'network-bridge netdev=eth1') # # The bridge is named xenbr0, by default. To rename the bridge, use # # (network-script 'network-bridge bridge=<name>') # # It is possible to use the network-bridge script in more complicated # scenarios, such as having two outgoing interfaces, with two bridges, and # two fake interfaces per guest domain. To do things like this, write # yourself a wrapper script, and call network-bridge from it, as appropriate. # (network-script network-bridge-gls) |
注意
仮想ブリッジを5つ以上作成する場合は、/etc/modprobe.confに以下の設定を追加してください。詳細は、「Linux 仮想マシン機能 ユーザーズマニュアル」を参照してください。以下は最大6つの仮想ブリッジを作成する場合の例です。
options netloop nloopbacks=6 |