KVM は、オペレーティングシステムのようなLinux用の無料のオープンソース仮想化ツールです。 UbuntuサーバーにKVMをインストールすると、タイプ2KVMハイパーバイザーになります。 。 KVMの最小要件は、サーバーに Intel-VTのようなCPU仮想化拡張機能が必要であることです。 およびAMD-V 。 KVMのインストール中にカーネルモジュール( kvm-intel.ko / kvm-amd.ko )があるため、KVMはカーネルベースの仮想マシンとも呼ばれます。 )がカーネルにロードされます。
この記事では、Ubuntu20.04LTSサーバーにKVMハイパーバイザーをインストールして構成する方法を示します。 Ubuntu20.04LTSサーバーがすでにインストールされていることを前提としています。 KVMのインストール手順を詳しく見ていきましょう:
ステップ1)サーバーがハードウェア仮想化をサポートしているかどうかを確認する
Ubuntu 20.04 LTSサーバーにログインし、次のgrepコマンドを実行します
[email protected]:~$ grep -E -c "vmx|svm" /proc/cpuinfo 2 [email protected]:~$
上記の出力は、サーバーがハードウェア仮想化をサポートしていることを確認しています。出力がゼロ以下の場合は、サーバーを再起動し、BIOS設定に移動して、VTテクノロジーを有効にします。
サーバーがKVM仮想マシンを実行できるかどうかを確認する場合は、以下のaptコマンドを使用して「kvm-ok」ユーティリティをインストールします。
[email protected]:~$ sudo apt install -y cpu-checker
「cpu-checker」パッケージがインストールされたら、「kvm-ok」コマンドを実行してその出力を確認します
[email protected]:~$ kvm-ok INFO: /dev/kvm exists KVM acceleration can be used [email protected]:~$
上記の出力は、KVMベースの仮想マシンをサーバーにインストールできることを確認しています。
ステップ2)KVM、virt-manager、bridge-utilsをインストールします
以下のaptコマンドを実行して、KVM、bridge-utils、virt-manager、およびその他のkvm依存関係をインストールします。
[email protected]:~$ sudo apt install -y qemu qemu-kvm libvirt-daemon bridge-utils virt-manager virtinst
すべてのパッケージが正常にインストールされたら、lsmodコマンドを使用して、KVMモジュールがロードされているかどうかを確認します。
[email protected]ntu-server-20-04:~$ lsmod | grep -i kvm kvm_intel 286720 0 kvm 663552 1 kvm_intel [email protected]:~$
ステップ3)libvirtdサービスを開始して確認します
KVMをインストールすると、libvirtdサービスが自動的に開始され、以下のコマンドを実行してステータスを確認します。
[email protected]:~$ sudo systemctl status libvirtd.service
上記のコマンドの出力は次のようになります
なんらかの理由でlibvirtdサービスが開始されない場合は、次のコマンドを実行して開始し、有効にします
[email protected]:~$ sudo systemctl enable libvirtd --now
ステップ4)KVM仮想マシンのネットワークブリッジをセットアップする
このステップでは、VMに外部からアクセスできるように、KVMVMのネットワークブリッジを構成します。仮想ブリッジ「virbr0」はKVMをインストールすると自動的に作成されますが、これはテスト目的でのみ使用されます。
ネットワークブリッジを作成するには、ファイル「/etc/netplan/00-installer-config.yaml」を編集する必要があります。変更を加える前に、サーバーのファイルの内容を以下に示します。
[email protected]:~$ cat /etc/netplan/00-installer-config.yaml
ネットワークブリッジエントリを追加し、enp0s3インターフェイスからIPを削除して、同じIPをネットワークブリッジ(br0)に割り当てます。変更を加えると、ファイルの内容は次のようになります。
[email protected]:~$ sudo vi /etc/netplan/00-installer-config.yaml # This is the network config written by 'subiquity' network: ethernets: enp0s3: dhcp4: no dhcp6: no version: 2 bridges: br0: interfaces: [enp0s3] addresses: [172.20.10.9/28] gateway4: 172.20.10.1 nameservers: addresses: [4.2.2.2, 8.8.8.8]
「netplanapply」コマンドを実行して、花嫁をアクティブにします br0 上記の変更を効果に加えることができます。
[email protected]:~$ sudo netplan apply [email protected]:~$
以下のコマンドを実行して、br0ブリッジのステータスを確認します
[email protected]:~$ sudo networkctl status br0
ブリッジbr0のステータスは、次のipコマンドからも確認できます。
[email protected]:~$ ip a s
上記のコマンドの出力は、ネットワークブリッジbr0がアクティブ化され、正常に構成されていることを確認します。それでは、仮想マシンの作成手順に移りましょう。
ステップ5)virt-managerとvirt-installを使用して仮想マシンを作成します
virt-managerはX11サーバーベースのGUI(グラフィカルユーザーインターフェイス)であるため、xserver環境が必要です。以下のコマンドを実行して、最小限のxserver環境をセットアップします
[email protected]:~$ sudo apt update [email protected]:~$ sudo apt-get install xorg -y
xorgパッケージがインストールされたら、サーバーを再起動します。
[email protected]:~$ sudo reboot
再起動後にシステムが使用可能になったら、ターミナルを開いて virt-managerと入力します GUIを開始するコマンド
次に、仮想マシンの作成を開始し、モニターアイコンをクリックします
最初のオプションを選択してから、進むをクリックします
ISOファイルなどのインストールメディアをローカルで参照します。私の場合は、sysadmユーザーのホームディレクトリに配置されているDebian10ISOファイルです。
[進む]をクリックします
次のウィンドウで、VMのRAMとvCPUを指定し、[進む]をクリックします
次のウィンドウで、VMのディスクサイズを指定します
[進む]をクリックして先に進みます
VMに接続するネットワークを選択します。私の場合は、上記の手順で作成したものと同じネットワークブリッジ(br0)を接続し、要件に従ってVM名を設定します。
[完了]をクリックして、OSのインストールを開始します。
画面の指示に従い、Debian10OSのインストールを完了します。
virt-install(コマンドラインツール)を使用した仮想マシンの作成
virt-installは、kvmVMをインストールするためのコマンドラインユーティリティです。例を以下に示します
[email protected]:~$ sudo virt-install -n CentOS-Server --description "VM for Database" --os-type=Linux --os-variant=rhel7 --ram=1096 --vcpus=1 --disk path=/var/lib/libvirt/images/centos-server.img,bus=virtio,size=10 --network bridge:br0 --graphics none --location /home/sysadm/CentOS-7-x86_64-DVD-1511.iso --extra-args console=ttyS0
注: 上記のコマンドのパラメータを環境に合わせて変更してください
次のCLI画面が表示され、指示に従ってCentOS7のインストールが完了します。
さまざまなオプションとパラメータの詳細については、「virt-install」のマニュアルページを参照してください。
これでこの記事は終わりです。これらの手順が、Ubuntu20.04LTSサーバーでKVMハイパーバイザーをセットアップするのに役立つことを願っています。フィードバックやコメントを共有することを躊躇しないでください。
また読む :Ubuntu20.04にJenkinsをインストールして構成する方法