Ubuntu 12.04にKVMをインストールし、bridge接続の設定を行う
DebianにKVMをインストールし、ブリッジ接続が行える環境を構築したことがあります。Debian(squeeze 64bit)にKVMをインストールし、Ubuntuから接続する
DebianにインストールしたKVMの仮想OSで、ブリッジ接続が使えるようにする
節電が求められる昨今、余分なサーバーを起動したくないので、
普段使用しているUbuntu 12.04(64bit)の環境にKVMをインストールしてみます。
インストール
以下のコマンドを実行してインストール。
$ sudo apt-get install kvm libvirt-bin bridge-utils virt-manager
インストールが終わったら、libvirtdグループが作成されます。
libvirtdグループにログインしているユーザーを追加しておきます。
$ sudo adduser $USER libvirtd
ユーザ `user_name' をグループ `libvirtd' に追加しています...
ユーザ user_name をグループ libvirtd に追加
完了。
ブリッジの作成
※かなり試行錯誤したので、やらなくてよい手順があるかもしれません。
NAT用のブリッジ接続「virbr0」が作成されている場合、特に使う予定はないので
CentOSでKVMを動かしてみた
こちらを参考に、削除しました。
$ brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes
$ virsh net-autostart default --disable
ネットワーク default の自動起動設定が解除されました
$ virsh net-destroy default
ネットワーク default は強制停止されました
$ brctl show
bridge name bridge id STP enabled interfaces
次に、/etc/network/interfacesの編集を行うのですが、
NetworkManagerがあると設定ファイルが上書きされてしまうので、
network-managerを削除しておきます。
これがわからなくてはまりました。
qemu, kvmでブリッジ接続 (ubuntu, Debian編)
こちらを参考にさせて頂いています。
$ sudo apt-get remove network-manager
/etc/network/interfacesのバックアップを作成して編集します。
$ sudo cp /etc/network/interfaces /etc/network/interfaces.org
$ sudo vi /etc/network/interfaces
ファイルの初期値は以下のとおり。
auto lo
iface lo inet loopback
以下の内容に変更します。
DHCPを使用する場合
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_maxwait 0
bridge_df 0
bridge_stp off
固定IPを指定する場合
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.1.50
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 192.168.1.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
こちらを参考にさせて頂きました。
KVM on ubuntu
ここまで設定できたら、一旦再起動します。
再起動後、ネットワークの構成がこのようになっていれば、
設定は上手くいっていると思います。
$ ifconfig
br0 Link encap:イーサネット ハードウェアアドレス xx:xx:xx:xx:xx:xx
inetアドレス:192.168.1.50 ブロードキャスト:192.168.1.255 マスク:255.255.255.0
inet6アドレス: 2408:100:c223:0:e907:a356:cc96:b436/64 範囲:グローバル
inet6アドレス: 2408:100:c223:0:52e5:49ff:febe:f991/64 範囲:グローバル
inet6アドレス: fe80::52e5:49ff:febe:f991/64 範囲:リンク
UP BROADCAST RUNNING MULTICAST MTU:1500 メトリック:1
RXパケット:71150 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:40048 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:0
RXバイト:98449639 (98.4 MB) TXバイト:3252345 (3.2 MB)
eth0 Link encap:イーサネット ハードウェアアドレス xx:xx:xx:xx:xx:xx
UP BROADCAST RUNNING MULTICAST MTU:1500 メトリック:1
RXパケット:77406 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:40146 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:1000
RXバイト:100888168 (100.8 MB) TXバイト:3269367 (3.2 MB)
割り込み:45 ベースアドレス:0xe000
lo Link encap:ローカルループバック
inetアドレス:127.0.0.1 マスク:255.0.0.0
inet6アドレス: ::1/128 範囲:ホスト
UP LOOPBACK RUNNING MTU:16436 メトリック:1
RXパケット:1788 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:1788 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:0
RXバイト:137920 (137.9 KB) TXバイト:137920 (137.9 KB)
virt-managerの起動
virt-managerを起動してみます。
$ virt-manager
ちなみに、端末の再起動を行わずに起動しようとしたら、
以下のエラーが表示されました。
libvirt に接続できませんでした:
Failed to connect socket to '/var/run/libvirt/libvirt-sock': 許可がありません
Verify that:
- The 'libvirt-bin' package is installed
- The 'libvirtd' daemon has been started
- You are member of the 'libvirtd' group

起動すると、こんな画面が表示されます。

次は、仮想OSとしてWindows Server 2008 R2をインストールしてみます。
【参考URL】
CentOSでKVMを動かしてみた
qemu, kvmでブリッジ接続 (ubuntu, Debian編)
KVM on ubuntu
- 関連記事
-
- Ubuntu 12.04 + KVM上のWindows仮想OSのディスクIOの改善
- Ubuntu 12.04(64bit) + KVMにWindows Server 2008 R2をインストール
- Ubuntu 12.04にKVMをインストールし、bridge接続の設定を行う
- JComboBoxでポップアップした選択肢の表示を変更する
- JTableでセルごとに使用するCellEditorを変更する
コメント