Open vSwitch 与 KVM

本文档描述如何与Kernel-based Virtual(KVM)一同使用Open vSwitch.

注意:

本文假设你在一个Linux系统上配置好了Open vSwitch.

建立

KVM使用tunctl工具处理各种网桥模式,你可通过Debian/Ubuntu 数据包 uml-utilities安装此工具:

$ apt-get install uml-utilities

之后,你需要修改或创建自定义版本的qemu-ifup 和 ``qemu-ifdown` 脚本。在本指南中,我们将创建自定义版本,使用以下描述的示例Open vSwitch网桥。

创建以下的两个文件,并保存到可知的位置,例如:

$ cat << 'EOF' > /etc/ovs-ifup
#!/bin/sh

switch='br0'
ip link set $1 up
ovs-vsctl add-port ${switch} $1
EOF

::

$ cat << 'EOF' > /etc/ovs-ifdown
#!/bin/sh

switch='br0'
ip addr flush dev $1
ip link set $1 down
ovs-vsctl del-port ${switch} $1
EOF

Open vSwitch的基础用法在其文档/intro/install/general的末尾有描述。如果还没有阅读,创建名称为br0的网桥请使用以下的命令:

$ ovs-vsctl add-br br0

之后,添加一个端口到网桥,此端口时你的客户机与之交流的端口(例如,eth0):

$ ovs-vsctl add-port br0 eth0

可参考ovs-vsctl(8)的man文档中的详细信息.

下一步,我们启动一个使用ifup和ifdown脚本的客户机:

$ kvm -m 512 -net nic,macaddr=00:11:22:EE:EE:EE -net \
    tap,script=/etc/ovs-ifup,downscript=/etc/ovs-ifdown -drive \
    file=/path/to/disk-image,boot=on

这将启动一个客户机,并且为其关联一个TAP设备。脚本ovs-ifup将添加一个端口到网桥br0,以便客户机可与网桥进行通信.

获取更多的信息以及调试,你可使用Open vSwitch工具:ovs-dpctl 和 ovs-ofctl等,例如:

$ ovs-dpctl show
$ ovs-ofctl show br0

你应能看到每个KVM客户机都有一个添加到网桥的TAP设备(例如,tap0)。

参考ovs-dpctl(8) 和 ovs-ofctl(8)的man文档中的详细信息

猜你喜欢

转载自blog.csdn.net/sinat_20184565/article/details/94482228
今日推荐