我刚刚搭建了一个运行 Ubuntu 19.10 Server 的新家庭服务器。我想在此服务器上设置多个虚拟机(使用 KVM),以在自己的 IP 地址上运行我网络上的各种服务。我对此不太熟悉,所以如果我没有提供正确的信息,请原谅我。该服务器是无头的,因此一切都是从命令行完成的。
这是我目前所做的工作(根据各个网站上的各种操作方法拼凑而成);
像这样设置我的 netplan 配置
#/etc/netplan/50-cloud-init.yaml
network:
version: 2
renderer: networkd
ethernets:
enp8s0:
dhcp4: no
bridges:
br0:
interfaces: [enp8s0]
dhcp4: yes
parameters:
stp: false
forward-delay: 0
然后运行sudo netplan generate && sudo netplan --debug apply
然后我创建以下文件host-bridge.xml
;
<network>
<name>host-bridge</name>
<forward mode="bridge"/>
<bridge name="br0"/>
</network>
然后运行以下命令;
virsh net-define host-bridge.xml
virsh net-start host-bridge
virsh net-autostart host-bridge
此时运行virsh net-list --all
将得到以下输出;
Name State Autostart Persistent
------------------------------------------------
default active yes yes
host-bridge active yes yes
然后我尝试使用主机桥接网络创建一个新的虚拟机。我的理解是它应该能够从路由器上的 DHCP 服务器获取自己的 IP 地址,我应该能够从该服务器通过 SSH 进入它。但事实并非如此。虚拟机安装停止并显示以下消息;
Network autoconfiguration failed
Your network is probably not using the DHCP protocol. Alternatively, the DHCP server may be slow or some network hardware is not working properly.
这是我用来创建虚拟机的命令;
virt-install --name=test-vm --vcpus=1 --memory=2048 --os-type linux --os-variant ubuntu19.04 --network network:host-bridge --graphics none --location 'http://archive.ubuntu.com/ubuntu/dists/eoan/main/installer-amd64/' --extra-args 'console=ttyS0,115200n8 serial'
答案1
我从来不使用 kvm 网络功能。
总是像你一样搭建我的桥梁,并且virt-install
有--network=bridge:br0
选择。
而且它运行良好。