| Version 10 (modified by yuna, 56 years ago) (diff) |
|---|
KVMメモ
Windowsゲストドライバ
Windowsゲストドライバを利用すると、ネットワークI/OやディスクI/Oが速くなります。 ゲストドライバの取得とインストール方法は下記のURLを参照。
準備
kvmを利用するのに、libvirtを利用します。libvirtをインストールしておきます。virt-managerをインストールすると必要なパッケージが一通り入って便利です。また、kvmで仮想マシンを実行するのに必要なqemu-kvmもインストールしておきます。
# yum install virt-manager # yum install qemu-kvm
次に、kvmのモジュールをカーネルにロードします。AMDの場合は、kvm_intelの代わりにkvm_amdを使ってください。
# modprobe kvm # modprobe kvm_intel
libvirtを利用するには、libvirtdの起動が必要です。libvirtdを起動しておきます。
# /etc/init.d/libvirtd start
virshを利用したKVM仮想マシンの作り方
イメージ作成
# qemu-img create -f raw ubuntu.img 10G
libvirt XMLファイルの作成方法
# uuidgen
でuuidを取得しておく。下記のXMLを適当に編集。特に、
- name(他の仮想マシンとユニークな名前になるように)
- uuid
- memory(メモリ容量)
- vcpu(CPUの数)
- diskとcdromのsource file
- clock offsetをWindowsの場合localtimeに。
辺りに注意しておく。
domain type='kvm' id='3'>
<name>UbuntuVM</name>
<memory>524288</memory>
<currentMemory>524288</currentMemory>
<vcpu>1</vcpu>
<os>
<type arch='x86_64' machine='fedora-13'>hvm</type>
<boot dev='hd'/>
<boot dev='cdrom'/>
</os>
<clock offset='utc'/>
<devices>
<emulator>/usr/bin/qemu-kvm</emulator>
<!-- DISKの定義 -->
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/mnt/sda5/ubuntu.img'/>
<target dev='hda' bus='ide'/>
</disk>
<!-- CDROMの定義 -->
<disk type='file' device='cdrom'>
<driver name='qemu'/>
<source file='/mnt/sda5/iso/ubuntu-ja-10.04-desktop-i386-20100512.iso'/>
<target dev='hdc' bus='ide'/>
<readonly/>
</disk>
<!-- ネットワークインタフェースの定義 -->
<interface type='network'>
<mac address='52:54:00:1d:18:5e'/>
<source network='default'/>
<target dev='vnet0'/>
</interface>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5902' autoport='yes' keymap='ja'/>
</devices>
</domain>
virshに登録して起動
# virsh (virsh実行。以下、virshのコンソールで実行) virsh # define virt-kvm.xml
defineで仮想マシンを定義したXMLを登録すると、/etc/libvirt/qemuディレクトリに定義ファイルが作られる。
# ls /etc/libvirt/qemu UbuntuVM.xml hoge.xml kvmtest.xml networks
virsh # start UbuntuVM virsh # list Id 名前 状態 ---------------------------------- 1 UbuntuVM 実行中
VNCクライアントのスクリーン1で接続可能( vnc://localhost:1)
停止はshutdownを使う。
virsh # shutdown UbuntuVM
ハイバネートとレジューム
virsh # save UbuntuVM UbuntuVM.mem virsh # restore UbuntuVM UbuntuVM.mem
KVMのもうちょっと高度な使い方
そのうち書く予定
- 仮想マシンIPでVNCのコンソールに繋げる(ポートフォワード)
- iscsiのDISKから起動
- ライブマイグレーション
- pythonからの操作
