今回は、
CentOS 5とFedora 13のLinux KVMの違い
先述の記事では、
Fedora 13のLinux KVMおよびその周辺ツールは、
- 仮想マシンマネージャーのアップデート
- virshコマンドの拡充
- vhost_
net機能の追加
Fedora14について
つい先日、
- デスクトップ仮想化
「SPICE」 の搭載 - XenからKVMへの移行支援ツール
「virt-v2v」 を収録 - Xenカーネルのサポート
(DomUのみ)
仮想マシンマネージャーでネットワークブリッジを設定する
これまで、
ブリッジ設定を行う前に必要な作業
Fedora 13は、
そこで、
# /etc/init.d/NetworkManager stop # /etc/init.d/network start # chkconfig NetworkManager off # chkconfig network on
仮想マシンマネージャーでブリッジを作成
仮想マシンマネージャーのリストからホストを選択し、
![図1 仮想マシンマネージャーのメイン画面 図1 仮想マシンマネージャーのメイン画面](/assets/images/admin/feature/01/virtualize2010/0005/thumb/TH800_001.jpg)
ホストの詳細ウィンドウの
![図2 ホストの詳細画面 図2 ホストの詳細画面](/assets/images/admin/feature/01/virtualize2010/0005/thumb/TH800_002.jpg)
インターフェースの種類を選択します。
![図3 インターフェースの設定画面(1ページ目) 図3 インターフェースの設定画面(1ページ目)](/assets/images/admin/feature/01/virtualize2010/0005/thumb/TH200_003.jpg)
ブリッジ名や、
「完了」
![図4 インターフェースの設定画面(2ページ目) 図4 インターフェースの設定画面(2ページ目)](/assets/images/admin/feature/01/virtualize2010/0005/thumb/TH200_004.jpg)
以上でブリッジが作成され、
強化されたvirshコマンド
Fedora 13に収録されているvirshコマンドはバージョン0.
新しい機能すべてを紹介するのは大変ですので、
ちなみに、
# virsh migrate 仮想マシン名 qemu+ssh://移動先ホスト名/system
※ライブマイグレーションを行う場合は--liveを付記する
domjobinfo
# virsh domjobinfo 仮想マシン名
このオプションは仮想マシンのマイグレーションの状態を表示します。仮想マシンのライブマイグレーションを実行している途中で実行すると、
# virsh domjobinfo vm01 Job type: Unbounded Time elapsed: 23763 ms Data processed: 495.160 MB Data remaining: 579.109 MB Data total: 1.016 GB Memory processed: 495.160 MB Memory remaining: 579.109 MB Memory total: 1.016 GB
domjobabort
このオプションは実行中のマイグレーションを中止させます。中止すると、
# virsh domjobabort VM名
vhost_net機能を試す
vhost_
vhost_netを有効にする
有効にするには
# modprobe vhost_net
lsmodコマンドで、
# lsmod | grep vhost_net vhost_net 21253 0 macvtap 6980 1 vhost_net tun 13854 3 vhost_net
仮想マシンの仮想NICオプションでvhost_
vhost_netを有効にして仮想マシンを起動する
現状では、
# ps auxww | grep qemu-kvm
不要なパラメータを取り除きつつ、
/usr/bin/qemu-kvm -S -M fedora-13 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name FedoraVM1 -uuid 74b52e50-b95e-569e-1f04-85101152e6e3 -nodefaults -chardev socket,id=monitor,path=/var/lib/libvirt/qemu/FedoraVM1.monitor,server,nowait -mon chardev=monitor,mode=readline -rtc base=utc -boot c -drive file=/var/lib/libvirt/images/FedoraVM1.img,if=none,id=drive-virtio-disk0,boot=on,format=raw -device virtio-blk-pci,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0 -device virtio-net-pci,vlan=0,id=net0,mac=52:54:00:89:50:ba,bus=pci.0,addr=0x5 -net tap,fd=40,vlan=0,name=hostnet0,vhost=on -chardev pty,id=serial0 -device isa-serial,chardev=serial0 -usb -device usb-tablet,id=input0 -vnc 127.0.0.1:0 -vga cirrus -device AC97,id=sound0,bus=pci.0,addr=0x6 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3
上記パラメータで仮想マシンを実行する前に、
#!/bin/sh
echo "Bringing up $1 for bridged mode..."
ifconfig $1 0.0.0.0 promisc up
echo "Adding $1 to br0..."
brctl addif br0 $1
同じく
#!/bin/sh
echo "Removing $1 to br0..."
brctl delif br0 $1
echo "Shutting down $1..."
ifconfig $1 down
スクリプトの設置が完了したら、
パフォーマンスの確認
vhost_
ベンチマークは、
# netperf -H VMのIPアドレス -t TCP_RR -c -C -l 30
私が社内のサーバと10Gbのイーサネットカードを使用したベンチマークを実施したところ、
ベンチマークの詳細は以前イベントで発表したスライドがありますので、
- 日本仮想化技術株式会社 公開資料
- URL:http://
VirtualTech. jp/ handout/
まとめ
KVMの基本的な部分に関してはCentOS 5でも概ね簡単に管理することができましたが、
vhost_