我对 KVM 和桥接完全陌生,需要您的帮助。我有一个带有 QEMU/KVM 的远程服务器,但我只能使用 SSH 连接。主机操作系统是 RHEL 7。 guest 必须连接到 bridge(ovs),他们可以看到对方并且无法访问外部网络。主机必须可以 ping guest 。不能使用物理 NIC 接口(interface),因为我可能会失去连接。所以这有点像主机看到 guest 的每个虚拟接口(interface)并可以访问它们,而 guest 通过网桥看到彼此。我使用 libvirt 尝试按照此说明进行配置 How to Use Open vSwitch with Libvirt .请帮助我。
首先我需要创建桥梁:
sudo ovs-vsctl add-br ovsbr
然后我像这样使用 virsh 配置域 XML 文件:
<interface type='bridge'>
<mac address='52:54:00:71:b1:b6'/>
<source bridge='ovsbr'/>
<virtualport type='openvswitch'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
重新启动域网桥后,vnet0 接口(interface)已连接到访客接口(interface)。在这种情况下如何提供地址?我可以通过主机向 guest 提供静态地址吗?
最佳答案
创建网络接口(interface):
# cat /etc/sysconfig/network-scripts/ifcfg-br-int
DEVICE=br-int
ONBOOT=yes
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
HOTPLUG=no
IPADDR=10.17.0.1
NETMASK=255.255.255.0
上接口(interface):
# ifup br-int
它是创建 openvswitch 网桥。
# ip -4 a show br-int
5: br-int: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default
inet 10.17.0.1/24 brd 10.17.0.255 scope global br-int
valid_lft forever preferred_lft forever
创建一个 libvirt 网络:
# cat ovsnet.xml
<network>
<name>br-int</name>
<forward mode='bridge'/>
<bridge name='br-int'/>
<virtualport type='openvswitch'/>
</network>
定义并启动网络:
# virsh net-define ovsnet.xml
# virsh net-start br-int
# virsh net-autostart br-int
创建虚拟机:
# qemu-img create -f qcow2 /opt/vm/test.qcow2 10G
# virt-install \
--ram 1024 \
--accelerate \
--disk path=/opt/vm/test.qcow2 \
--name test \
--network network:br-int \
--vcpus 1 \
--cpu core2duo \
--cdrom /opt/iso/CentOS-7.0-1406-x86_64-DVD.iso
完成安装,登录到新虚拟机并配置网络:
# cat /etc/sysconfig/network-scripts/ifcfg-ens3
DEVICE=ens3
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.17.0.2
NETMASK=255.255.255.0
GATEWAY=10.17.0.1
上行网络接口(interface):
# ifup ens3
检查来自主机的 ping:
# ping 10.17.0.2 -c 1
PING 10.17.0.2 (10.17.0.2) 56(84) bytes of data.
64 bytes from 10.17.0.2: icmp_seq=1 ttl=64 time=0.398 ms
--- 10.17.0.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.398/0.398/0.398/0.000 ms
当前的 openvswitch 配置:
# ovs-vsctl show
73826453-249b-4558-9cf9-ad6cc169dec9
Bridge br-int
Port br-int
Interface br-int
type: internal
Port "vnet0"
Interface "vnet0"
ovs_version: "2.3.1-git4750c96"
关于KVM、OVS、桥接网络。如何配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30622680/