Search Posts

KVM環境構築

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

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です