虽然OVS以程序包的方式出现在Ubuntu或Debian上,但我在此还是通过源代码来构建OVS,这将拥有最新的功能特性和修正版。
首先,安装用于构建OVS的依赖项。
$ sudo apt-get install build-essential libssl-dev linux-headers-$(uname -r)
通过源代码来构建OVS,如下所示。下列步骤将构建OVS内核模块以及OVS用户空间工具。
$ wget http://openvswitch.org/releases/openvswitch-1.9.3.tar.gz
$ tar xvfvz openvswitch-1.9.3.tar.gz
$ cd openvswitch-1.9.3
$ ./configure --with-linux=/lib/modules/`uname -r`/build
$ make
接下来,继续在/usr/local/share/下安装OVS用户空间组件:
$ sudo make install
下一步是,测试OVS内核模块(安装该模块之前)。为此,先在内核中装入内核模块。
$ sudo insmod ./datapath/linux/openvswitch.ko
证实OVS内核模块已成功装入。
$ lsmod | grep openvswitch
openvswitch97934 0
一旦你证实openvswitch.ko已成功装入到内核中,继续安装内核模块,如下所示。
$ sudo make modules_install
配置和启动Open vSwitch
创建一个框架式OVS配置数据库。
$ sudo mkdir /etc/openvswitch
$ sudo ovsdb-tool create /etc/openvswitch/conf.db ./vswit
chd/vswitch.ovsschema
启动OVS数据库服务器。
$ sudo ovsdb-server --remote=punix:/usr/local/var/run/ope
nvswitch/db.sock - remote=db:Open_vSwitch,manager_options
--pidfile --detach
OVS配置数据库初始化。
$ sudo ovs-vsctl --no-wait init
最后,启动OVS守护程序。
$ sudo ovs-vswitchd --pidfile --detach
将KVM安装在Ubuntu或Debian上
使用apt-get命令,安装KVM和必要的用户空间工具。
$ sudo apt-get install qemu-kvm libvirt-bin bridge-utils
virt-manager
将一个普通的非根用户(如alice)添加到libvirtd群组,那样该用户不需要根用户权限,就能启动虚拟机。
$ sudo adduser alice libvirtd
退出,重新以该用户身份登录,让群组成员的变更生效。
运行下面这个命令。如果你看到空空如也的虚拟机列表,这意味着KVM已成功设置完毕。
$ virsh -c qemu:///system list
IdNameState
为KVM配置Open vSwitch
现在是时候创建OVS网桥启动脚本了,那样启动或终止虚拟机时,OVS就能自动配置。
安装依赖项(用户模式Linux实用工具),这些依赖项将用于处理Linux网桥模式。
$ sudo apt-get install uml-utilities
创建网桥启动脚本,如下所示。
$ sudo vi /etc/openvswitch/ovs-ifup
#!/bin/sh
switch='br0'
/sbin/ifconfig $1 0.0.0.0 up
ovs-vsctl add-port ${switch} $1
$ sudo vi /etc/openvswitch/ovs-ifdown
#!/bin/sh
switch='br0'
/sbin/ifconfig $1 0.0.0.0 down
ovs-vsctl del-port ${switch} $1
$ sudo chmod +x /etc/openvswitch/ovs-if*
然后,创建一个默认的网桥br0,并添加一个物理网络接口,虚拟机将通过这个接口与外部网络进行联系。在该教程中,我假设这类网络接口是eth5。
$ sudo ovs-vsctl add-br br0
$ sudo ovs-vsctl add-port br0 eth5
借助KVM启动虚拟机
现在你可以准备启动访客虚拟机了。
我假设,你已经准备好了一个访客虚拟机映像(比如ubuntu-client.img)。使用下面这个命令,启动访客虚拟机。
$ sudo kvm -m 1024 -net nic,macaddr=11:11:11:EE:EE:EE -ne
t tap,script=/etc/openvswitch/ovs-ifup,downscript=/etc/op
envswitch/ovs-ifdown -vnc :1 -drive file=/home/dev/images
/ubuntu-client.img,boot=on
这会创建并启动一个访客虚拟机;一旦访客虚拟机启动,其虚拟接口就自动添加到OVS网桥br0。
一 安装VNC1. 安装VNC服务端
(1)在Linux系统上安装VNC
yum -y install vnc-server
yum -y install tigervnc-server
(2)设置远程登录所需要的密码
输入vncserver后会提示输入密码
注:此密码是远程登录时所需要输入的密码
(3)进行vncserver配置
vi /etc/sysconfig/vncservers
设置以下配置值
VNCSERVRES=10000:root(其中10000为桌面号、root为用户名)
VNCSERVERARGS[2]=geometry800x600 –nolisten tcp –localhost
(4)进行防火墙配置允许远程连接VNC服务器
vi/etc/sysconfig/iptables
–A INPUT–m state –state NEW –m tcp –p tcp –dport 5901 –j ACCCEPT
(5)重启VNC和防火墙服务
servicevncserver restart
serviceiptables restart
2. 安装VNC客户端
在Linux上安装vncviewer
在Windows上安装TigerVNC软件
二 创建KVM虚拟机
1. 创建Linux虚拟机
(1)通过qemu-img创建一个7G的映像文件
qemu-img create –f qow2 Ubuntu1204.img 7G
(2)创建一个Linux虚拟机
qemu-kvm –m 1024 –cdrom ubuntu-12.04-desktop-i386.iso –drive file= Ubuntu1204.imgboot=on –boot d –nographic –vnc:2
注:-vnc与:2之间有空格
在另外一台机器上启动TigerVNC,输入192.168.0.123:5902进行连接来进行安装操作和观察安装进度
注:192.168.0.123为本机IP,5902为相应端口号(5900+2)
2. 创建Windows虚拟机
(1)制作包含virtio驱动的映像
安装UltraISO软件
下载win7.iso, virtio-win-1.1.16.vfd,virtio-win-0.1-30.iso
将virtio-win-0.1-30.iso解压成文件夹
使用UltraISO打开win7.iso,并将virtio-win-0.1-30复制到对应路径
将添加了virtio驱动文件夹的新win7.iso文件另存为新的ios文件win7_virtio.iso
qemu-img create –f raw win7_virtio.img 30G
qemu-kvm –m 1024 –cdrom win7_virtio.iso –drivefile=win7_virtio.img,if=virtio,boot=on–fda virtio-win-1.1.6.vfd –boot d –nographic –vnc :3
注:-vnc与:3之间有空格
在另外一台机器上启动TigerVNC,输入192.168.0.123:5903进行连接来进行安装操作和观察安装进度
注:192.168.0.123为本机IP,5903为相应端口号(5900+3)
三 远程桌面虚拟化连接
在另外一台机器上启动TigerVNC,输入192.168.0.123:593进行win7虚拟机登录
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)