2013/08/15(木)仮想環境を作る
余計なことしているかもだけど、まあ動くからいいことにする
今回は、debianを入れてみる
下準備
- NICの設定
- bridgeを作っておく
[/etc/sysconfig/network-scripts]の[ifcfg-eth1]を開いて、ブリッジで設定DEVICE=eth1 HWADDR=**:**:**:**:**:** TYPE=Ethernet UUID=********-****-****-****-************ ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.100.4 NETMASK=255.255.255.0 GATEWAY=192.168.100.1 NETWORK=192.168.100.0 BROADCAST=192.168.100.255 BRIDGE=br0
同じく[/etc/sysconfig/network-scripts]の[ifcfg-br0]を開いて、ブリッジを作成
DEVICE=br0 HWADDR=**:**:**:**:**:** TYPE=Bridge UUID=********-****-****-****-************ ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.100.4 NETMASK=255.255.255.0 GATEWAY=192.168.100.1 NETWORK=192.168.100.0 BROADCAST=192.168.100.255
- bridgeを作っておく
仮想化環境のインストール
- 仮想化ソフト環境を入れる
yum groupinstall "Virtualization" "Virtualization Platform" "Virtualization Client" "Virtualization Tools"
groupinstallで一括インストールできるっぽい。便利だね - モジュール読み込ませて、起動させておく
# modprobe kvm # modprobe kvm_intel # chkconfig libvirtd on # service libvirtd start
仮想マシンを作ってみる
- インストール先を用意
仮想マシンをいくつか作る予定があるので、適当なフォルダを切って、imgファイルを作る。
今回はdebian入れるのでわかるようにしておいた。$ mkdir -p /path/to/image $ cd /path/to/image $ qemu-img create www-debian.img 20G
- debian のイメージをDL
今回は、amd64のnetinstイメージを利用
実際のパスについては、http://www.debian.org/CD/netinst/を参考にする$ wget http://cdimage.debian.org/debian-cd/7.1.0/amd64/iso-cd/debian-7.1.0-amd64-netinst.iso
- debianのインストール
- virt-installする
wwwという名前で作成。CPUは1で、メモリは1G、ネットワークは、先ほど作ったbr0を利用。
nographicでやったら、あまりにも反応悪すぎたので、vncオプションつけて、直接QEMUに接続。# virt-install -n www -r 1024 --vcpus=1 \ --cdrom=/path/to/image/debian-7.1.0-amd64-netinst.iso --os-type=linux --os-variant=debiansqueeze \ --disk=/path/to/image/www-debian.img -w bridge=br0 \ --connect qemu:///system --hvm \ --virt-type=kvm --vnc --vncport=5901 --vnclisten=0.0.0.0 --keymap=ja
"ディスプレイをオープンできません"ってエラーが出ても、気にしない。
ポートがぶつかるようなら5902とか適当に決める - vnc立ち上げて接続
192.168.100.4:5901に接続して、debianをインストール。
接続できない場合、ホスト側のiptablesではじいている可能性あり。
この場合、5900番台の接続を許可してあげてください。 - もし失敗したら
仮想端末強制終了(destroy)して、端末削除(undefine)。端末停止(destroy)だけでは、止めただけなので定義は残ってます。# virsh destroy www # virsh undefine www
- virt-installする
- インストール後
インストールが無事終わるとvnc切断されます。
ホストOSで仮想環境の確認# virsh list --all Id 名前 状態 ---------------------------------------------------- - www シャットオフ
のように出れば無事インストール成功
端末が一覧に出ない場合、sshを切って、再接続して、もう一度virshを実行。
それでも出てこない場合は、どこかおかしい
debianの設定
まずは、ゲストを起動して接続
- ゲストの起動
# virsh start www
- vncで接続
ネットワークの設定だけする
...インストール時にネットワークの設定があった気もするけど... - IPの設定
[ifdown eth0]でインターフェースを落とす。
[/etc/network]の[interfaces]を開いて、eth0の設定を書く# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 #iface eth0 inet dhcp auto eth0 iface eth0 inet static address 192.168.100.11 netmask 255.255.255.0 network 192.168.100.0 broadcast 192.168.100.255 gateway 192.168.100.1
書き換えたら
[ifup eth0]
で、eth0を起動して、sshでつなぎ直し
[/etc/libvirt/qemu/www.xml]書き直してvncをoffにする(予定)
こまごまとした設定
aptitudeでインストール
- chkconfig
- ntp
[/etc/ntp.conf]の[server]付近を変更
server 192.168.100.4 # ホストOSのntpに同期させる #server 0.debian.pool.ntp.org iburst このへんコメントアウト #server 1.debian.pool.ntp.org iburst #server 2.debian.pool.ntp.org iburst #server 3.debian.pool.ntp.org iburst
変更したら、
# chkconfig ntp on # service ntp start
で起動
適当にサーバを入れる
あとは自由に使う
先ほど設定した 192.168.100.11 にsshで接続可能
もしくは、ホスト側 192.168.100.4:5901 にvncで接続可能
使いやすい方使ってください