■CPUフラグの確認 $ grep flags /proc/cpuinfo | sed s/" "/"\n"/g | grep "vmx\|svm" vmx vmx ■KVM-QEMUの導入 $ echo "qemu-kvm bridge-utils virtinst virt-manager virt-viewer libvirt-bin python-libvirt libvirt-doc" | \ for list in `xargs`;do \ echo "[ $list ]"; \ apt-cache show "$list" | grep ^Description | head -1; \ done [ qemu-kvm ] Description-ja: x86 ハードウェアの完全仮想化 [ bridge-utils ] Description-ja: Linux イーサネットブリッジの設定ユーティリティ [ virtinst ] Description-ja: 仮想マシンを作成、複製するためのプログラム [ virt-manager ] Description-ja: 仮想マシン管理用デスクトップアプリケーション [ virt-viewer ] Description-en: Displaying the graphical console of a virtual machine [ libvirt-bin ] Description-ja: libvirt ライブラリ用のプログラム [ python-libvirt ] Description-ja: libvirt の Python バインディング [ libvirt-doc ] Description-ja: libvirt ライブラリ用のドキュメント $ echo "qemu-kvm bridge-utils virtinst virt-manager virt-viewer libvirt-bin python-libvirt libvirt-doc" | \ sudo apt-get install -y `xargs` ■確認 kvm_amd.koはAMD系のCPUの場合 $ sudo virsh list Id Name State ---------------------------------------------------- ■KVMのカーネルモジュール KVM仮想化基盤のカーネルモジュール kvm.ko プロセッサ特有のカーネルモジュール kvm-intel.ko、kvm-amd.ko $ sudo find /lib -type f -name "kvm*.ko" /lib/modules/3.2.0-4-amd64/kernel/arch/x86/kvm/kvm.ko /lib/modules/3.2.0-4-amd64/kernel/arch/x86/kvm/kvm-amd.ko /lib/modules/3.2.0-4-amd64/kernel/arch/x86/kvm/kvm-intel.ko ■qemu-kvmのスタートアップスクリプト内でcpuのフラグを判定して、 モジュールをロードしている。 $ lsmod | grep kvm kvm_intel 121968 0 kvm 287749 1 kvm_intel $ sudo /etc/init.d/qemu-kvm restart [ ok ] Succesfully unloaded kvm module kvm_intel. [ ok ] Loading kvm module kvm_intel. $ grep cpuinfo /etc/init.d/qemu-kvm if grep -q '^flags.*\<vmx\>' /proc/cpuinfo elif grep -q '^flags.*\<svm\>' /proc/cpuinfo $ ls /etc/kvm/ kvm-ifdown kvm-ifup target-x86_64.conf ■ブリッジの設定 $ sudo grep -A 100 "auto eth1" /etc/network/interfaces auto eth1 allow-hotplug eth1 iface eth1 inet static address 192.168.152.32 network 192.168.152.0 netmask 255.255.255.0 broadcast 192.168.152.255 route add -net 192.168.152.0/24 gw 192.168.152.2 eth1 auto br0 allow-hotplug br0 iface br0 inet static address 192.168.152.32 network 192.168.152.0 netmask 255.255.255.0 broadcast 192.168.152.255 route add -net 192.168.152.0/24 gw 192.168.152.2 br1 bridge_ports eth1 $ sudo ifup br0 $ env LANG=C /sbin/ifconfig br0 | grep "inet addr" inet addr:192.168.152.32 Bcast:192.168.152.255 Mask:255.255.255.0 ■イメージの作成 $ KVMDIR=/var/local/kvm; \ test -d "${KVMDIR}" || sudo mkdir "${KVMDIR}"; \ sudo qemu-img create -f raw "${KVMDIR}/qdeb2.img" 40G ■インストール TTY経由でのインストールとなっているが、 おとなしくX上のコンソールから行うこと。 ※仮想マシンビューアが起動する。 $ sudo virt-install \ --name qdeb2 \ --ram 512 \ -f /var/local/kvm/qdeb2.img \ -s 8 \ --vcpu=1 \ --os-type linux \ --os-variant=debianwheezy \ --network bridge=br0 \ --location='http://ftp.riken.jp/Linux/debian/debian/dists/wheezy/main/installer-amd64/' \ --extra-args='console=/dev/pts/0' ■後は普通のdebian。 ■確認 $ sudo virsh list Id Name State ---------------------------------------------------- 1 qdeb3 running ■テンプレートの取得 $ sudo virsh dumpxml qdeb3 > qdeb3.xml