KVM(カーネルベースの仮想マシン)は、ハードウェア仮想化拡張機能を使用して複数の仮想マシン(ゲスト)を実行する機能を提供する仮想化ソフトウェアです。 Linux、Windows、Solarisなどのさまざまなゲストオペレーティングシステムをサポートしています。
仮想マシンは、コマンドラインツール(virsh、virt-install、guestfish)または利用可能なグラフィカルツール(Cockpit Webコンソール)を使用して作成または管理できます。
ここでは、CentOS 8 / RHEL 8にKVMをインストールする方法と、仮想マシンを作成する方法を学びます。
VTサポートを確認する
前述のように、仮想マシンを実行できるのは、CPUがハードウェア仮想化(Intel VTまたはAMD-V)をサポートしている場合のみです。
CPUがVT機能をサポートしているかどうかを確認するには、次のコマンドを実行します。
egrep '(vmx|svm)' /proc/cpuinfo | wc -l
上記のコマンドがゼロ以外を返す場合は、ハードウェアでVTが有効になっていますが、そうでない場合は有効になりません。
システムにネットワークブリッジを作成して、仮想マシンが外部ネットワークと通信できるようにします。
ここでは、br0という仮想ブリッジを作成します。これを行うには、まず、ブリッジネットワーク構成ファイルを作成します。
vi /etc/sysconfig/network-scripts/ifcfg-br0
構成ファイルをIPアドレスおよびその他のネットワーク情報で更新します。このブリッジが私のプライマリネットワーク接続になります。
DEVICE="br0"
BOOTPROTO="static"
IPADDR="192.168.0.10"
NETMASK="255.255.255.0"
GATEWAY="192.168.0.1"
DNS1="192.168.0.1"
ONBOOT="yes"
TYPE="Bridge"
ネットワークインターフェースの構成ファイルを編集して、ブリッジbr0を使用します。
vi /etc/sysconfig/network-scripts/ifcfg-ens33
以下の情報で構成を更新してください。
DEVICE="ens33"
TYPE="Ethernet"
BOOTPROTO="none"
ONBOOT="yes"
BRIDGE="br0"
接続プロファイルをリロードし、NetworkManagerを再起動します。
nmcli connection reload
systemctl restart NetworkManager
ifconfigコマンドを使用してネットワーク構成を検証します。
ifconfig
出力:
KVMをインストールする
仮想化モジュールをインストールします。このモジュールは、システムが仮想化をサポートするために必要なすべてのパッケージをインストールします。
dnf module install -y virt
virt-installパッケージとvirt-viewerパッケージをインストールします。
dnf install -y virt-install virt-viewer
virt-install –仮想マシンを作成するためのコマンドラインツール。
virt-viewer –グラフィカルコンソール
以下のコマンドを実行して、ホストが仮想マシンを実行する準備ができているかどうかを検証します。
virt-host-validate
Output: QEMU: Checking for hardware virtualization : PASS QEMU: Checking if device /dev/kvm exists : PASS QEMU: Checking if device /dev/kvm is accessible : PASS QEMU: Checking if device /dev/vhost-net exists : PASS QEMU: Checking if device /dev/net/tun exists : PASS QEMU: Checking for cgroup 'cpu' controller support : PASS QEMU: Checking for cgroup 'cpuacct' controller support : PASS QEMU: Checking for cgroup 'cpuset' controller support : PASS QEMU: Checking for cgroup 'memory' controller support : PASS QEMU: Checking for cgroup 'devices' controller support : PASS QEMU: Checking for cgroup 'blkio' controller support : PASS QEMU: Checking for device assignment IOMMU support : WARN (No ACPI IVRS table found, IOMMU either disabled in BIOS or not supported by this hardware platform)QEMU:ハードウェア仮想化のチェック:FAIL(エミュレートされたCPUのみが使用可能で、パフォーマンスが大幅に制限されます)を取得した場合、マシンは仮想マシンを実行できません。
ホストの検証が適切であれば、コマンドラインまたはグラフィカルインターフェイスのいずれかを使用して仮想マシンを作成できます。
virt-installコマンドは、仮想マシンを作成するために使用されます。このコマンドは、VM名、CPU、メモリ、ディスク、ネットワーク、インストールメディアの場所、OSバリアントなど、仮想マシンを作成するためにいくつかの必須の引数を必要とします。
virt-install --name=itzgeekguest --ram=1024 --vcpus=1 --os-type=linux --os-variant=rhel6.0 --cdrom=/tmp/CentOS-6.10-x86_64-minimal.iso --network bridge=br0 --graphics vnc,port=5901,listen=0.0.0.0 --disk path=/var/lib/libvirt/images/itzgeekguest.qcow2,size=10
引数 | |
---|---|
-名前 | 仮想マシンの名前 |
-ram | メモリサイズ(MB) |
-vcpus | 仮想CPUの数 |
-os-type | Linux、WindowsなどのOSタイプ |
-os-variant | RHEL 6、SolarisなどのOSバリアント |
-cdrom | ISOイメージの場所 |
-ネットワーク | オプションを使用したネットワーキング |
-グラフィックス | ゲストコンソール(ポート番号付きのVNC) |
-disk-path | サイズのあるディスク(qcow2)の場所 |
上記のコマンドを実行すると、仮想マシンが作成され、グラフィカルコンソールのVNCビューアセッションが開始されます。
osのインストールが完了しない限り、virt-installコマンドは終了しません。したがって、新しいターミナルを開いて続行します。ファイアウォールでVNC接続を許可します。
firewall-cmd --permanent --add-port=5901/tcp
firewall-cmd --reload
VNCビューアを開き、VMコンソールにアクセスします。
仮想マシンを管理するための重要なコマンドはほとんどありません。
すべての仮想マシンを一覧表示します:
virsh list --all
仮想マシンを起動します:
virsh shutdown <vmname>
仮想マシンを正常にシャットダウンします:
virsh shutdown <vmname>
仮想マシンを再起動します:
virsh reset <vmname>
仮想マシンを強制停止します:
virsh destroy <vmname>
仮想マシンとそのストレージボリュームを削除します:
virsh undefine <vmname> --remove-all-storage
CentOS 8 / RHEL 8には、ローカルおよびリモートのLinuxシステムを管理するためのWebベースのインターフェースであるコックピットが付属しています。
読む: CentOS 8 /RHEL8にコックピットをインストールする方法
コックピットは、コンソールから仮想マシンを管理するための追加のアドオンを提供します。
dnf install -y cockpit-machines
インストール後、コックピットサービスを再起動します。
systemctl restart cockpit.socket
コックピットにアクセスし、[仮想マシン]ページに移動します。既存のすべての仮想マシンが表示されます。
仮想マシンがない場合は、[VMの作成]をクリックして新しいVMを作成してください。 [新しい仮想マシンの作成]フォームに入力し、[作成]をクリックします。
数秒で、新しく作成されたVMが表示されます。
VMをクリックして、[コンソール]タブに移動します。 CentOS6のインストール画面が表示されます。
選択した仮想マシンの開始、シャットダウン、再起動、一時停止など、VMのパワーサイクルアクションを実行できます。
[ディスクとネットワーク]タブに移動すると、仮想マシンを管理できます。そこで、ディスク/ネットワークデバイスを追加、変更、および削除できます。
ディスク:
ネットワーク:
それで全部です。 CentOS 8 /RHEL8にKVMをインストールして仮想マシンを作成する方法を学んだことを願っています。