※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

Open vSwtichのインストール



Open vSwitchのダウンロード

openvswitch.orgからtarのダウンロードをします。
wget http://openvswitch.org/releases/openvswitch-1.4.0.tar.gz

tar -xzf openvswitch-1.4.0.tar.gz

RPMパッケージの作成

CentOS6.2の場合
openvswitch-1.4.0.tar.gzを/rpmbuild/SOURCEにコピーします。

cp -i openvswitch-1.4.0.tar.gz $HOME/rpmbuild/SOURCE

openvswitch1.4.0/rhelから以下のファイルを/rpmbuild/SPECSにコピーします。
openvswitch.spec
openvswitch-kmod-rhel6.spec

cd openvswitch-1.4.0/rhel
cp -i openvswitch.spec $HOME/rpmbuild/SPECS
cp -i openvswitch-kmod-rhel6.spec $HOME/rpmbuild/SPECS

SPECSディレクトリに移動し、RPMを作成します。
cd $HOME/rpmbuild/SPECS
rpmbuild -bb -D `uname -r` openvswitch.spec
rpmbuild -bb -D `uname -r` openvswitch-kmod-rhel6.spec

$HOME/rpmbuild/RPMS内にRPMファイルが作成されます。
kmod-openvswitch-1.4.0-1.el6.x86_64.rpm
openvswitch-1.4.0-1.x86_64.rpm
openvswitch-debuginfo-1.4.0-1.x86_64.rpm

RPMパッケージのインストール

rpm -ivh kmod-openvswitch-1.4.0-1.el6.x86_64.rpm
rpm -ivh openvswitch-1.4.0-1.x86_64.rpm
rpm -ivh openvswitch-debuginfo-1.4.0-1.x86_64.rpm

インストールが終わったらリブートします。

ホストOSが起動したら /etc/init.d/openvswitch start で起動します。
この時、Linuxのブリッジモジュールが有効になっているとエラーになるので、
modprobe -r bridge でブリッジ機能を無効にします。

インターフェイススクリプトの作成

ゲストOSは/etc/sysconfig/network-scripts/を使いません。ゲストOSが起動するときに自動的にポートを作成します。
スクリプトは以下のようなものを作成します。

インターフェイスアップ用のスクリプト

/etc/ovs-ifup-br0
#!/bin/sh

switch='br0'
/sbin/ifconfig $1 up
ovs-vsctl -- --may-exist add-port ${switch} $1

インターフェイスダウン用のスクリプト

/etc/ovs-ifdown-br0
#!/bin/sh

switch='br0'
/sbin/ifconfig $1 down
ovs-vsctl del-port ${switch} $1

起動スクリプトの作成

ホストOSを再起動するとOpen vSwtichの設定が消えてしまいます。
/etc/sysconfig/network-scripts/は使用しないので、/etc/rc.d/rc.localに

bridge="br0"
/usr/bin/ovs-vsctl set bridge $bridge datapath_type=netdev
/usr/bin/ovs-vsctl add-br $bridge
/usr/bin/ovs-vsctl add-port $bridge eth0
/sbin/ifconfig eth0 down
/sbin/ifconfig eth0 up
/sbin/ifconfig $bridge up
のようなスクリプトを書いて、起動時にブリッジの設定を行います。