Ubuntu 24.04 LTS に KVM(Kernel-based Virtual Machine)を入れて VM を立てられるようにします。
環境
$ cat /etc/issue
Ubuntu 24.04.1 LTS \n \l
準備
$ sudo apt update -y && sudo apt upgrade -y
導入
下記ページを参考に KVM を入れていきます。
KVM 使うの CentOS 6 以来だ...
KVM のインストール
$ sudo apt install qemu-kvm libvirt-daemon-system libvirt-daemon virtinst bridge-utils libosinfo-bin -y
$ kvm-ok
コマンド 'kvm-ok' が見つかりません。次の方法でインストールできます:
sudo apt install cpu-checker
$ sudo apt install cpu-checker -y
$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
ネットワーク設定
デフォルトブリッジの削除
デフォルトブリッジは無かったので削除しなかった。
$ nmcli device
DEVICE TYPE STATE CONNECTION
eno1 ethernet 接続済み netplan-eno1
lo loopback 接続済み (外部) lo
新しいブリッジの作成
Netplan を使って /etc/netplan
配下に新しいブリッジを作成していきます。
UbuntuでのNetplan活用ガイド|ネットワーク設定の基礎から応用まで - オープンソースの力を活用する方法~Ubuntuの世界へようこそ~
Netplanは、Ubuntu 17.10以降のバージョンで採用されたネットワーク設定の管理ツールです。
以前はifconfigや/etc/network/interfacesを使用していましたが、Netplanはこれらに代わる新しい形式を提供しています。
【Ubuntu日和】【第29回】Ubuntuのネットワーク設定入門 - PC Watch
Ubuntuでは「 netplan 」という設定ジェネレータを採用し、YAMLファイルに設定を書けば適切なsystemd-networkdの設定を生成したり、設定の反映やロールバックが行なえるような仕組みを用意している。
なお、デフォルトで 2ファイル作成されていた(更新年月日が過去なので、もともとあるらしい)。
$ ls -lh /etc/netplan/
-rw-r--r-- 1 root root 104 Aug 27 23:19 01-network-manager-all.yaml
-rw------- 1 root root 389 Dec 7 13:34 50-cloud-init.yaml
ファイルのネーミングルールはそのままに、それっぽいファイルを作成。
$ sudo vi /etc/netplan/01-kvm-config.yaml
項目名1 | 項目名2 | 内容 |
---|---|---|
addresses | IPアドレス / サブネット | |
routes | データパケットの通過する経路 | |
to | default の場合、デフォルトルートを指す |
|
via | ルート( If default, Default route) | |
nameservers | ||
search | 検索ドメインの補完文字列を指定 | |
addresses | DNSサーバ |
$ cat /etc/netplan/01-kvm-config.yaml
network:
version: 2
ethernets:
eno1:
dhcp4: false
dhcp6: true
bridges:
br0:
interfaces: [eno1]
addresses: [192.168.x.x/24]
routes:
- to: default
via: 192.168.x.x
nameservers:
addresses: [1.1.1.1, 8.8.8.8]
parameters:
stp: false
dhcp4: false
dhcp6: true
構文チェックしようとしたら br0: ブリッジとボンドのカスタム パラメータを元に戻すことはサポートされていません
的なメッセージが表示されたが、問題無いらしい。
bridges
に対応してない模様... 怖。エラーではないので次に進む。
$ sudo chmod 0600 /etc/netplan/01-kvm-config.yaml
$ sudo netplan try --timeout 120
** (process:20322): WARNING **: 00:23:41.498: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
br0: reverting custom parameters for bridges and bonds is not supported
Please carefully review the configuration and use 'netplan apply' directly.
適用させたら既存ファイルで警告表示...
$ sudo netplan apply
** (generate:20667): WARNING **: 00:30:13.288: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
** (process:20665): WARNING **: 00:30:13.707: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
** (process:20665): WARNING **: 00:30:13.799: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
新しいブリッジ br0
の作成を確認。
$ nmcli device
DEVICE TYPE STATE CONNECTION
br0 bridge 接続済み netplan-br0
eno1 ethernet 接続済み netplan-eno1
lo loopback 接続済み (外部) lo
br0
が物理インターフェースと接続されているか確認。
$ brctl show
コマンド 'brctl' が見つかりません。次の方法でインストールできます:
sudo apt install bridge-utils
$ sudo sudo apt install bridge-utils
$ brctl show
bridge name bridge id STP enabled interfaces
br0 8000.12081542d768 no eno1