まず、私の不器用な英語力についてお詫び申し上げます。
私は通常数時間、数日、さらに数週間の研究の後に答えを探しますが、今日は失われた気分で助けが必要だと思います。
ターゲット:
私の目標は、Netplanとブリッジインターフェイスを設定することです。このブリッジインターフェイスは、DHCPを介してゲストオペレーティングシステム(KVM)にIPアドレスを提供します。
質問:
私のゲストオペレーティングシステムはブリッジインターフェイスを介して接続を確立できませんでした。 Netplan の設定やゲスト OS のインストールに使用されるパラメータによって問題が発生することがあります。
コンテキスト:
私のサーバーは、外部プロバイダーがホストするクラウドサーバーであるUbuntu Bionic 18.04 LTSを実行しています。インストールするゲストオペレーティングシステムもUbuntu Bionic 18.04 LTSリリースです。私のサーバーはハードウェア仮想化をサポートし、ハードウェアアクセラレーションKVM仮想マシンを実行できます。
ホストオペレーティングシステムの初期ネットワーク状態:
出力はifconfig -a
次のとおりです
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.52.16.185 netmask 255.255.255.0 broadcast 10.52.16.255
inet6 fe80::f816:3eff:fe82:c5fe prefixlen 64 scopeid 0x20<link>
inet6 2001:1600:4:8:f816:3eff:fe82:c5fe prefixlen 64 scopeid 0x0<global>
ether fa:16:3e:82:c5:fe txqueuelen 1000 (Ethernet)
RX packets 255880 bytes 22882442 (22.8 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 582 bytes 49337 (49.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 138 bytes 10546 (10.5 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 138 bytes 10546 (10.5 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
出力はip route
次のとおりです
default via 10.52.16.1 dev ens3 proto dhcp metric 100
10.52.11.0/24 dev ens3 proto dhcp scope link metric 100
10.52.16.0/24 dev ens3 proto kernel scope link src 10.52.16.185
10.52.20.0/24 dev ens3 proto dhcp scope link metric 100
10.52.24.0/24 dev ens3 proto dhcp scope link metric 100
169.254.169.254 via 10.52.16.1 dev ens3 proto dhcp metric 100
出力はlspci
次のとおりです
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:03.0 Ethernet controller: Red Hat, Inc Virtio network device
00:04.0 SCSI storage controller: Red Hat, Inc Virtio block device
00:05.0 SCSI storage controller: Red Hat, Inc Virtio block device
00:06.0 Unclassified device [00ff]: Red Hat, Inc Virtio memory balloon
$networkctl -a ステータス
● 1: lo
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: loopback
State: carrier (unmanaged)
Address: 127.0.0.1
::1
● 2: ens3
Link File: /lib/systemd/network/99-default.link
Network File: /run/systemd/network/10-netplan-ens3.network
Type: ether
State: routable (configured)
Path: pci-0000:00:03.0
Driver: virtio_net
Vendor: Red Hat, Inc.
Model: Virtio network device
HW Address: fa:16:3e:82:c5:fe
Address: 10.52.16.185
2001:1600:4:8:f816:3eff:fe82:c5fe
fe80::f816:3eff:fe82:c5fe
Gateway: 10.52.16.1
fe80::f816:3eff:fee7:1ea5
DNS: XX.XX.XX.XX
YY.YY.YY.YY
Search Domains: myprovider.ext
これまで私がしたこと:
最初のステップはブリッジインターフェイスを作成することですbr0
。 Ubuntu 18を実行しているのでしなければならないこれにはNetplanを使用してください。
Netplanの初期設定は次/etc/netplan/50-cloud-init.yaml
のとおりです。
network:
version: 2
ethernets:
ens3:
dhcp4: true
match:
macaddress: fa:16:3e:82:c5:fe
mtu: 8950
set-name: ens3
この構成では多くのテストが行われましたが、ブリッジインターフェイス(br0)はIPを取得できませんでした。最終的にNetworkManagerをレンダラーとして使用し、次の設定が/etc/netplan/50-cloud-init.yaml
機能しました。
network:
version: 2
renderer: NetworkManager
ethernets:
ens3:
dhcp4: false
dhcp6: false
match:
macaddress: fa:16:3e:82:c5:fe
set-name: ens3
mtu: 8950
bridges:
br0:
interfaces: [ens3]
dhcp4: true
dhcp6: false
mtu: 8950
parameters:
stp: true
forward-delay: 4
Netplanを使用した出力はifconfig -a
次のとおりです。
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 8950
inet 10.52.16.185 netmask 255.255.255.0 broadcast 10.52.16.255
inet6 fe80::f816:3eff:fe82:c5fe prefixlen 64 scopeid 0x20<link>
inet6 2001:1600:4:8:f816:3eff:fe82:c5fe prefixlen 64 scopeid 0x0<global>
ether fa:16:3e:82:c5:fe txqueuelen 1000 (Ethernet)
RX packets 6364 bytes 468754 (468.7 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 75 bytes 11528 (11.5 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 8950
ether fa:16:3e:82:c5:fe txqueuelen 1000 (Ethernet)
RX packets 8132 bytes 713045 (713.0 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 114 bytes 13490 (13.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 176 bytes 11840 (11.8 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 176 bytes 11840 (11.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Netplanを使用した出力はip route
次のとおりです。
10.52.11.0/24 dev br0 proto dhcp scope link metric 425
10.52.16.0/24 dev br0 proto kernel scope link src 10.52.16.185 metric 425
10.52.20.0/24 dev br0 proto dhcp scope link metric 425
10.52.24.0/24 dev br0 proto dhcp scope link metric 425
169.254.169.254 via 10.52.16.1 dev br0 proto dhcp metric 425
Netplanを使用した出力はlspci
次のとおりです。
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:03.0 Ethernet controller: Red Hat, Inc Virtio network device
00:04.0 SCSI storage controller: Red Hat, Inc Virtio block device
00:05.0 SCSI storage controller: Red Hat, Inc Virtio block device
00:06.0 Unclassified device [00ff]: Red Hat, Inc Virtio memory balloon
Netplanを使用した出力はnetworkctl -a status
次のとおりです。
● 1: lo
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: loopback
State: carrier (unmanaged)
Address: 127.0.0.1
::1
● 2: ens3
Link File: /run/systemd/network/10-netplan-ens3.link
Network File: n/a
Type: ether
State: carrier (unmanaged)
Path: pci-0000:00:03.0
Driver: virtio_net
Vendor: Red Hat, Inc.
Model: Virtio network device
HW Address: fa:16:3e:82:c5:fe
● 3: br0
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: ether
State: routable (unmanaged)
Driver: bridge
HW Address: fa:16:3e:82:c5:fe
Address: 10.52.16.185
2001:1600:4:8:f816:3eff:fe82:c5fe
fe80::f816:3eff:fe82:c5fe
Gateway: 10.52.16.1
fe80::f816:3eff:fee7:1ea5
ゲストOSのインストール:
これで、ブリッジインターフェイスは問題なく見え、仮想化に必要なパッケージ(qemu qemu-kvm libvirt-bin bridge-utils virt-manager
)をインストールしてlibvirtd
サービスを開始しました。
virt-install
その後、次のコマンドを使用して最初のゲストOSをインストールしようとしました。
$ sudo virt-install \
--name projectname \
--ram 1024 \
--vcpus 1 \
--network bridge:br0 \
--disk path=/srv/data/projectname,size=2 \
--os-type Linux \
--os-variant=ubuntu18.04 \
--location 'http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/' \
--graphics none \
--extra-args 'console=ttyS0' \
--console pty,target_type=serial
残念ながら、インストーラは以下のようにDHCPを使用してネットワークを設定できません。
ネットワークの自動構成に失敗しました。
ゲストオペレーティングシステムのインストールに失敗した後のネットワークステータス:
出力はifconfig -a
次のとおりです
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 8950
inet 10.52.16.185 netmask 255.255.255.0 broadcast 10.52.16.255
inet6 fe80::f816:3eff:fe82:c5fe prefixlen 64 scopeid 0x20<link>
inet6 2001:1600:4:8:f816:3eff:fe82:c5fe prefixlen 64 scopeid 0x0<global>
ether fa:16:3e:82:c5:fe txqueuelen 1000 (Ethernet)
RX packets 289453 bytes 301978563 (301.9 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 70249 bytes 7101505 (7.1 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 8950
ether fa:16:3e:82:c5:fe txqueuelen 1000 (Ethernet)
RX packets 294080 bytes 306373898 (306.3 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 71779 bytes 7183441 (7.1 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 332 bytes 27936 (27.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 332 bytes 27936 (27.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:06:10:e5 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0-nic: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 52:54:00:06:10:e5 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 8950
inet6 fe80::fc54:ff:fe8e:6a11 prefixlen 64 scopeid 0x20<link>
ether fe:54:00:8e:6a:11 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1 bytes 90 (90.0 B)
TX errors 0 dropped 108892 overruns 0 carrier 0 collisions 0
出力はip route
次のとおりです
default via 10.52.16.1 dev br0 proto dhcp metric 425
10.52.11.0/24 dev br0 proto dhcp scope link metric 425
10.52.16.0/24 dev br0 proto kernel scope link src 10.52.16.185 metric 425
10.52.20.0/24 dev br0 proto dhcp scope link metric 425
10.52.24.0/24 dev br0 proto dhcp scope link metric 425
169.254.169.254 via 10.52.16.1 dev br0 proto dhcp metric 425
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
出力はlspci
次のとおりです
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:04.0 SCSI storage controller: Red Hat, Inc. Virtio block device
00:05.0 SCSI storage controller: Red Hat, Inc. Virtio block device
00:06.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
出力はnetworkctl -a status
次のとおりです
● 1: lo
Link File: n/a
Network File: n/a
Type: loopback
State: carrier (unmanaged)
Address: 127.0.0.1
::1
● 2: ens3
Link File: n/a
Network File: n/a
Type: ether
State: carrier (unmanaged)
Path: pci-0000:00:03.0
Vendor: Red Hat, Inc.
Model: Virtio network device
HW Address: fa:16:3e:82:c5:fe
● 3: br0
Link File: n/a
Network File: n/a
Type: ether
State: routable (unmanaged)
Driver: bridge
HW Address: fa:16:3e:82:c5:fe
Address: 10.52.16.185
2001:1600:4:8:f816:3eff:fe82:c5fe
fe80::f816:3eff:fe82:c5fe
Gateway: 10.52.16.1
fe80::f816:3eff:fee7:1ea5
● 4: virbr0
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: ether
State: no-carrier (unmanaged)
Driver: bridge
HW Address: 52:54:00:06:10:e5
Address: 192.168.122.1
● 5: virbr0-nic
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: ether
State: off (unmanaged)
Driver: tun
HW Address: 52:54:00:06:10:e5
● 7: vnet0
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: ether
State: degraded (unmanaged)
Driver: tun
HW Address: fe:54:00:8e:6a:11
Address: fe80::fc54:ff:fe8e:6a11
上記と同じコマンドを試しましたが、br0をvirbr0に置き換えました。インストールは成功しましたが、これは間違っているようです(今まで見たすべてのチュートリアルによると...)。
質問
- Netplanを使用する必要がありますか、完全に削除する必要がありますか?
- デフォルトのネットワークレンダラーを使用する必要がありますか、NetworkManagerを使用する必要がありますか?
- 私のNetplanは正しく設定されていますか?
- virt-installパラメータは正しいですか?
- ...私は何が間違っていましたか?