红联Linux门户
Linux帮助

ubuntu16.04配置kvm openvswitch桥接环境

发布时间:2017-02-24 09:40:01来源:linux网站作者:小白的学习笔记
在ubuntu14.04上配置openvswitch和kvm,虚拟机nat是可以的(写了一个nat的配置openvswitch kvm虚拟机环境)(http://www.linuxdiyf.com/linux/28648.html),但是桥接的时候总是有问题,网上的资料也特别杂乱,配置了很长时间没有配置成功。
发现了这么一个英文的 KVM and OVS on Ubuntu 16.04,试着配置了一下居然成功了,而且还很简单。
(在这里还原一下实验设置,可能相关配置并不是最合理的,后期会进行更改)
 
环境:Ubuntu Desktop 16.04,有两个网卡
ens33 192.168.1.54
ens38 192.168.1.55
 
首先是安装KVM相关的软件:
sudo apt-get install qemu-kvm libvirt-bin bridge-utils virtinst
 
关闭kvm默认的网桥:
sudo virsh net-destroy default
sudo virsh net-autostart –disable default
 
安装openvswitch组件,开启ipv4转发(切换到root用户):
sudo apt-get install -qy openvswitch-switch openvswitch-common
sudo service openvswitch-switch start
sudo echo “net.ipv4.ip_forward” >> /etc/sysctl.conf
sudo sysctl -p /etc/sysctl.conf
 
添加网桥,并修改/etc/network/interfaces如下(修改好像没有什么用,重启的时候有问题):
sudo ovs-vsctl add-br br0
sudo ovs-vsctl add-port br0 ens38
ubuntu16.04配置kvm openvswitch桥接环境
 
重启网络:
sudo ifdown –force -a && sudo ifup –force -a
这个地方有问题,如下,本以为实验要失败的,抱着侥幸的心里继续实验。
can’t add ens38 to bridge br0: Operation not supported
set hello timer failed: Operation not supported
set max age failed: Operation not supported
set stp status failed: Operation not supported
set forward delay failed: Operation not supported
 
需要说明的是路由表如下,默认路由在另一个网卡上(配置默认路由在br0上也可以的),所以是可以上网的,能ping通百度:
ubuntu16.04配置kvm openvswitch桥接环境
 
接下来就是安装虚拟机了,使用virsh安装,命令为:
qemu-img create vm1.img 6G
sudo virt-install -n vm1 -r 512 –vcpus 1 \
–os-type linux \
–os-variant ubuntu16.04 \
–network bridge=br0,virtualport_type=’openvswitch’ \
–hvm –virt-type kvm \
–disk size=8,path=/home/qiu/vm1.img \
–noautoconsole \
–cdrom=/home/qiu/Desktop/ubuntu-14.04-server-amd64.iso
注意上面红色的部分,原文为virtualport_type=’ovs’,是报错的。
 
然后就开始安装操作系统了,要使用命令 virt-viewer vm1 查看console。
安装完成之后,虚拟机竟然有了ip:192.168.1.56,而且能ping通网关和百度,不容易啊。
 
virsh 删除虚拟机的命令:
virsh destroy vm1
virsh undefine vm1
 
本文永久更新地址:http://www.linuxdiyf.com/linux/28649.html