はじめに
CentOSでKVMを構築したいけど、Windowsマシンしか持ってないということでHyper-V上のCentOSでKVMを構築したいと思います。
- この記事は2020/6/26日現在のバージョンを掲載しています。osのイメージファイルなどは各自で置き換えてください
この記事のメイン(だと思っているところ)
仮想マシンのCPU仮想化を許可するコマンド
Set-VMProcessor -VMName <VM Name> -ExposeVirtualizationExtensions $true
スペック
ホスト
CPU : Xeon E5-2660 8core/16thread
RAM : DDR3 32GB
ROM : HDD 500GB + 4TB
OS : Windows10 PRO
ゲスト1
name : CentOS 8 KVM
CPU : 8core
RAM : 8192MB
ROM : 512GB
OS : CentOS 8
ゲスト2
name : CentOS 8 KVM test
CPU : 1core
RAM : 1024MB
ROM : 8GB
OS : CentOS 8
ホスト側 : イメージファイルの取得
ここからCentOS-8.2.2004-x86_64-minimal.isoをダウンロードします。
#ホスト側 : 仮想マシンの作成
今回はこんな感じでゲスト1を作成します。
ホスト側 : 仮想マシン上のVT-Xの有効化
windowsのpowershellを管理者権限で起動して以下のコマンドを実行します。
Set-VMProcessor -VMName "CentOS 8 KVM" -ExposeVirtualizationExtensions $true
ゲスト1側 : CentOS 8のインストール
ゲスト1を起動して「Install CentOS 8」を選択します。少し経つと下の画面が出てきます。今回は英語のままインストールしていくので、このまま「Continue」を押します。
- Keyboard
- Japanese
- Time & Date
- Asia/Tokyo
- Software Selection
- Minimal Install
- Network & Hostname
- ネットワークに接続
- ホスト名 : kvm.centos8
上を設定(下の図のような状態)にできたら、「Begin Installition」を押します。
Root Passwordをrootに設定します。
しばらく待つとインストールが終わるので、下の画面が出てきたら、「Reboot」を押します。
再起動したのを確認出来たら、ゲスト1の電源を落として、以下の図のようにメディアをなしにしてください。
これで、電源を付けたらCentOS 8を使うことができます。
電源をつけて、
ユーザ名 : root
パスワード : root
でログインします。
ゲスト1側 : パッケージのアップデートとKVMのインストール
以下のコマンドを入力してインストールされているパッケージをアップデート、KVMの動作に必要なパッケージをインストールします。
#dnf update -y
#dnf install -y wget
#dnf module install -y virt
#dnf install -y virt-install
ゲスト1側 : サービスの起動と自動起動
#systemctl start libvirtd
#systemctl enable libvirtd
ゲスト1側 : イメージファイルの取得
#mkdir /lib/isos
#wget https://ftp.riken.jp/Linux/centos/8/isos/x86_64/CentOS-8.2.2004-x86_64-minimal.iso
#mv CentOS-8.2.2004-x86_64-minimal.iso /lib/isos/
ゲスト1側 : 仮想マシン(ゲスト2)の作成
#virt-install \
--name test \
--hvm \
--arch x86_64 \
--os-type linux \
--os-variant centos8 \
--vcpus 1 \
--ram 1024 \
--disk path=/var/lib/libvirt/images/test.img,format=qcow2,size=8 \
--network bridge=virbr0 \
--graphics none \
--location /lib/isos/CentOS-8.2.2004-x86_64-minimal.iso \
--extra-args="console=tty0 console=ttyS0,115200n8"
ゲスト2側 : CentOS 8のインストール
好みで設定してください。設定し終わったらbを入力し、インストールします。
================================================================================
================================================================================
Installation
1) [x] Language settings 2) [x] Time settings
(English (United States)) (America/New_York timezone)
3) [x] Installation source 4) [x] Software selection
(Local media) (Minimal Install)
5) [x] Installation Destination 6) [x] Kdump
(Automatic partitioning (Kdump is enabled)
selected)
7) [ ] Network configuration 8) [x] Root password
(Not connected) (Password is set.)
9) [ ] User creation
(No user will be created)
Please make a selection from the above ['b' to begin installation, 'q' to quit,
'r' to refresh]:
[anaconda]1:main* 2:shell 3:log 4:storage-log >Switch tab: Alt+Tab | Help: F1
KVMの基本コマンド
コマンド | 動作 |
---|---|
virt-install | 仮想マシンを作詞する |
virsh list | 起動済みの仮想マシンを表示する |
virsh list --all | 仮想マシンの一覧と状態を表示 |
virsh start <仮想マシン名> | 仮想マシンの起動 |
virsh console <仮想マシン名> | 仮想マシンにコンソール接続 終了はctrl + } |
virsh shutdown <仮想マシン名> | 仮想マシンのシャットダウン |
virsh destroy <仮想マシン名> | 仮想マシンの強制終了 |
おわりに
とりあえず動作に必要な環境は構築できなした。誤字や動作しないなどがあれば指摘していただけると嬉しいです。