KVMの導入、KVM上に仮想マシンを作成しOSをインストールするまでに実施した手順を記載する。
物理サーバは用意していないため、Microsoft Hyper-V上に作成した仮想マシンをNested構成に対応させ、KVMをインストールしている。
公式のインストールガイドでもリンクされている、DELLさんの導入手順が分かりやすい。(所感)
http://linux.dell.com/files/whitepapers/KVM_Virtualization_in_RHEL_7_Made_Easy.pdf
基盤環境
Hyper-V Server 2016
KVM用仮想マシンの作成
仮想マシン世代:第2世代
CPU:4コア
メモリ:16GB
ディスク:100GB
NIC:1つ
CentOS7のインストール
作成した仮想マシンにCentOS7を最小構成でインストール。
KVMのインストールと起動
# yum install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install
# systemctl enable libvirtd && systemctl start libvirtd
ブリッジアダプターの作成
# vi /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Bridge
NAME="Bridge br0"
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
NAME="eth0"
DEVICE="eth0"
ONBOOT="yes"
BRIDGE=br0
IPパケットの転送を有効化
# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p /etc/sysctl.conf
ネットワークマネージャーサービス再起動
# systemctl restart NetworkManager.service
仮想ディスク、OSイメージファイル保存用ディレクトリの作成
# mkdir /vm-images
# mkdir /vm-disk
SELinux
# yum install policycoreutils-python
# semanage fcontext --add -t virt_image_t '/vm-images(/.*)?'
# semanage fcontext --add -t virt_image_t '/vm-disk(/.*)?'
# restorecon -R -v /vm-disk/
# restorecon -R -v /vm-images/
# setsebool -P virt_use_cifs 1
# setsebool -P virt_use_samba 1
共有フォルダのマウント
OSイメージファイルをWindows Server上の共有フォルダに保存していたため、
それをCentOS7上のディレクトリにCIFSでマウントした。
# yum install cifs-utils
# mount -t cifs -o vers=3.0,username=ユーザ名 //{IPアドレス}/共有フォルダ名/ /vm-images/
# df -h
# ls /vm-image
OS再起動時に自動でマウントさせる場合
# vi /etc/fstab
//{IPアドレス}/共有フォルダ名/ /vm-images/ cifs username=ユーザ名,password=パスワード,vers=3.0,rw,defaults 0 0
KVM上に仮想マシンを作成
仮想マシン名:test-vm1
CPUコア:1
メモリ:512MB
ディスク:8GB
NIC:br0
# virt-install --network bridge:br0 --name test-vm1 ¥
--ram 512 --vcpu 1 --disk path=/vm-disk/test-vm1.img,size=8 ¥
--graphics none ¥
--location /vm-images/CentOS-7-x86_64-Minimal-1511.iso ¥
--extra-args="console=tty0 console=ttyS0,115200"
仮想マシンの管理コマンド
仮想マシンの一覧を表示
# virsh list --all
仮想マシンのコンソールに接続
# virsh console test-vm1
仮想マシンの再起動
# virsh reboot test-vm1
仮想マシンのシャットダウン
# virsh shutdown test-vm1
仮想マシンの起動
# virsh start test-vm1
仮想マシンの削除
# virsh destroy test-vm1
# virsh undefine test-vm1
# rm /vm-disk/test-vm1.img
TTYの設定
# vi /etc/default/grub
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8r"
# grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
最近のコメント