自サーバは仮想化に対応しているか?
仮想化を行うためにはハードが対応しているか調べなければなりません。以下のコマンドを実行してみます。
egrep -c '(vmx|svm)' /proc/cpuinfo
ちなみに真ん中あたりに出てくる"vms"はIntel製CPUを、"smv"はAMD製CPUを調べるときに使用する文字列なので、こんな感じで検索をかけるとどちらのCPUを使用しているマシンに対しても調べることができます。
結果で0が表示されなければ仮想化対応はOK!
KVMをインストールする
以下のコマンドでKVM本体と必要なパッケージをインストールします。
apt update
apt install qemu-kvm libvirt-daemon-system libvirt-daemon virtinst bridge-utils libosinfo-bin libguestfs-tools virt-top
のちに必要となる仮想ブリッジ関連も一緒にインストールしておきます。あとは完了するのを待つばかり。
KVMのネットワークについて
インストール完了後にホスト側のネットワーク設定を変更します。仮想的なブリッジを作成し、ホストマシンも仮想マシンもその仮想ブリッジを通して外部と通信するように設定することで仮想マシンと外部とのネットワーク通信が可能になります。
これをしておかないと外部から仮想ホストへの接続ができない状態となってしまいます。
以下の設定内容ですが、2回ほど出てくるネットワークインターフェース名(enp1s0)は環境によって変動するためコマンドで「ip a」を叩いて値を調べるとよいでしょう。
# vi /etc/netplan/00-installer-config.yaml
network: ethernets: enp1s0: dhcp4: no #addresses: [192.168.1.101/24] #gateway4: 192.168.1.1 #nameservers: #addresses: [192.168.1.10] dhcp6: no bridges: br0: interfaces: [enp1s0] dhcp4: no addresses: [192.168.1.101/24] gateway4: 192.168.1.1 nameservers: addresses: [192.168.1.10] parameters: stp: false dhcp6: no version: 2
編集した後は「netplan apply」で設定を反映させて完了です。
仮想マシンを作成してみる
まず下準備として、インストールするOSのISOイメージを取得しておきます。今回は保管場所として新たなディレクトリも作ってしまいます。
とりあえず触りなれている?Ubuntu20.04 Serverをダウンロードしておきます。
# mkdir -p /var/kvm/images
# cd /var/kvm/images
# wget https://releases.ubuntu.com/20.04/ubuntu-20.04.4-live-server-amd64.iso
これで下準備は完了です。
いよいよ仮想マシンを作成してゲストOSをインストールします。定義というか設定というか、以下の通りで進めました。
- 仮想マシンの名称:ubuntu01
- ISOイメージの保存場所:/var/kvm/images/ubuntu-20.04.4-live-server-amd64.iso
- 仮想マシンのストレージプール:/var/kvm/images/ubuntu01.img
- CPUは2コア分、仮想HDDは20GB、メモリは4GB(4096)を割り当てる
- ネットワークは上の項目で作成した仮想ブリッジ:vr0を使用する
以下の通りコマンドを叩きます。
virt-install --name ubuntu01 --ram 4096 --disk path=/var/kvm/images/ubuntu01.img,size=20 --vcpus 2 --os-variant ubuntu20.04 --network bridge=br0 --graphics none --console pty,target_type=serial --location /var/kvm/images/ubuntu-20.04.4-live-server-amd64.iso,kernel=casper/vmlinuz,initrd=casper/initrd --extra-args 'console=ttyS0,115200n8 serial'
ここからは普通にUbuntuをインストールするのとまったく同じ内容となるためここでは省略させてもらいまして。
完了後、インストール時に設定したユーザとパスワードでログイン出来たらひとまず仮想マシンの作成及びゲストOSのインストール完了です。
仮想マシンの操作・設定については次回で進めたいと思います。