仮想マシン作成する
- OSイメージを用意する
# pwd
/home/media/os/
# wget http://ftp.riken.jp/Linux/centos/6/isos/x86_64/CentOS-6.8-x86_64-netinstall.iso
CentOSのisoファイルを取得
# cd ..
# chown -R qemu:qemu os
- 仮想マシン作成
ネットワーク経由でインストールする。
仮想OS名:www
仮想HDDを/home/kvm/images/www.img
容量30GB
メモリ512MB
virt-install \
--name www \
--ram 512 \
--disk path=/home/kvm/images/www.img,size=30 \
--vcpus 2 \
--os-type linux \
--os-variant rhel6 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://ftp.jaist.ac.jp/pub/Linux/CentOS/6/os/x86_64/' \
--extra-args 'console=ttyS0,115200n8 serial'
CentOSをCUIでインストールする方法
仮想マシン
[root@localhost ~]# # Ctrl + ] キーを押す
[root@host ~]# # ホスト側のコンソールに切り替わった
# ゲストOS 'www' のコンソールに切り替え
[root@host ~]# virsh console www
Connected to domain www
Escape character is ^] # Enterキーを押す
[root@localhost ~]#
仮想マシンの初期設定
作成した仮想マシンの設定はXMLで管理されている。
[root@host ~]# virsh edit VM01 ← ゲスト設定
<clock offset='localtime'/> ← クロックをlocaltimeにする※初期値のutcだとマシン時間が日本時間-9時間となってしまうため
テンプレートを作る
インストールしたゲストOSは作成直後のクリーンな段階で、後々仮想マシンを増やす時用のテンプレートとしてディスクイメージをコピーしておくと便利です。 テンプレートとしてとっておいたディスクイメージから新たな仮想マシンを作成する場合は同じように「virt-clone」で複製できます。
[root@host ~]# virsh shutdown www
仮想マシンを停止させる
[root@host ~]# virt-clone --original www --name template --file /home/kvm/images/template.img
Allocating 'template.img' | 20 GB 01:44
Clone 'template' created successfully.
[root@host ~]# ll /home/kvm/images/template.img # ディスクイメージ確認
-rwxr-xr-x 1 root root 21474836480 Jul 11 20:05 /home/kvm/images/template.img
[root@host ~]# ll /etc/libvirt/qemu/template.xml # 定義ファイル確認
-rw------- 1 root root 1340 Jul 11 20:04 /etc/libvirt/qemu/template.xml
仮想マシンを操作する
virsh
コマンドを使った仮想マシンの操作方法です。
- [1] 仮想マシンの起動
[root@dlp ~]# virsh start www # 仮想マシン'www'を起動
Domain www started
[root@dlp ~]# virsh start www --console # 仮想マシン'www'を起動し同時にコンソールに接続
Domain www started
Connected to domain www
- [2] 仮想マシンの停止
[root@dlp ~]# virsh shutdown www # 仮想マシン'www'を停止 ( ゲスト側で「acpid」が動作している必要がある )
Domain www is being shutdown
[root@dlp ~]# virsh destroy www # 仮想マシン'www'を強制停止
Domain www destroyed
- [3] 仮想マシンの自動起動設定
[root@dlp ~]# virsh autostart www # 仮想マシン'www'をシステム起動時に自動起動
Domain www marked as autostarted
[root@dlp ~]# virsh autostart --disable www # 仮想マシン'www'の自動起動設定解除
Domain www unmarked as autostarted
- [4] 仮想マシンの一覧を表示
[root@dlp ~]# virsh list # 稼動中の仮想マシンを一覧表示
Id Name State
------------------------------------------
2 win2k8 running
[root@dlp ~]# virsh list --all # 全ての仮想マシンを一覧表示
Id Name State
------------------------------------------
2 win2k8 running
1 www shut off
- [5] コンソールの切り替え
ゲストOS側からホストOS側へのコンソールの切り替えは Ctrl + ] キーです。
ホストOS側からゲストOS側へのコンソールの切り替えは 「virsh console (ゲストの名前)」とコマンドをうちます。
[root@dlp ~]# virsh console www # 'www'のコンソールに接続
Connected to domain www
Escape character is ^] # Enterキー
CentOS release 6.5 (Final)
Kernel 2.6.32-431.17.1.el6.x86_64 on an x86_64
www.srv.world login: # ゲスト側に切り替わった
Password:
Last login: Thu Nov 4 12:33:37 on ttyS0
[root@www ~]# # Ctrl + ] キーを押す
[root@dlp ~]# # ホスト側に切り替わった
- [6] 仮想マシン削除
[root@host ~]# virsh undefine www ← ゲスト削除
ドメイン www の定義が削除されました
[root@host ~]# ls /etc/libvirt/qemu
仮想マシンの定義ファイルのwww.xmlがないこと
[root@host ~]# rm -f /home/kvm/images/www.img ← ゲスト割当てディスク削除(ゲスト削除)
- [7] その他の操作です。たくさんあるのでいろいろ試してみてください。
[root@dlp ~]# virsh --help