OpenvSwitch的操作命令有若干个,其中比较重要的有
ovs-ovsctl 获取或者更改ovs-vswitchd的配置信息,此工具操作的时候会更新ovsdb-server中的数据库
ovs-ofctl 操作交换机里的流表
ovsdb-tool 对ovsdb数据库操作,不经过ovsdb-server模块
前面已经介绍过了ovs-ovsctl命令是对交换机上网桥和端口等信息进行配置的命令。这里首先需要说明一下ovs的概念中 ‘桥’ 这个词的意思就是指交换机。我们说创建一个网桥,其实说的意思就是创建一个交换机。而端口则是指交换机的网口。
一、查看网桥
使用如下命令能够查看所有的网桥的信息。记住这是我们学会的第一个命令,也是使用频率最高的命令。
ovs-vsctl show
因为这是一个刚装好ovs的机器,所以还没有任何网桥信息,但是还是有一些信息的。比如这一串数字指的是该主机的id,只在连接了SDN控制器之后才有作用;还有一个交换机的版本信息,这里的版本是2.5.5。
二、添加网桥
可以很方便的创建网桥,也就是交换机。使用如下命令创建一个名字叫着 br-test的网桥。
ovs-vsctl add-br br-test
当创建好网桥之后用第一个学会的命令来看看创建好的网桥。
可以看到已经有创建好的网桥br-test了,Bridge br-test 指的是网桥br-test,那么在这个交换机中只有一个网口,是的,这个网口叫着port,即port br-test。为什么我们只创建了网桥并没有创建端口这里却有一个呢?其实这个端口就是常见的环回口。在我们的电脑上都有一个叫着localhost的端口,交换机中也会有一个和交换机同名的网口,都是指环回口。
三、创建port
在上面创建好一个网桥之后默认有一个同名的port,使用下面的命令可以继续添加port。格式是:ovs-vsctl add-port 网桥名 端口名 。这里端口需要是存在机器上的网卡名。
我的机器上的网卡的信息如下
因为我的机器上有网卡 enp0s3 所有可以使用下面的命令向网桥br-test上添加port enp0s3。如果想在自己的机器上做这个实验要把网卡替换成你机器的真实网卡。
ovs-vsctl add-port br-test enp0s3
再次查看,可以看到port由一个变成两个,多了一个叫enp0s3的port。
四、删除port
能添加一个port,就能删除这个port。这是ovs的最基本的操作。
ovs-vsctl del-port br-test enp0s3
注意:如果删除port时不指明名字,那么将会删除全部的port,小心这个操作。
五、删除网桥
使用如下命令删除一个网桥。
ovs-vsctl del-br br-test
值得注意的是:删除网桥时如果网桥上有很多端口,那么端口也会被一并删除。这个很好理解
再次查看网桥信息
六、网桥连接控制器
这五个命令是ovs最基本的操作命令,下面还有一个连接控制器的命令是为下一篇打好基础。
ovs交换作为SDN交换机连接到SDN控制器上才能发挥最大的效能。连接控制器的命令如下
ovs-vsctl set-controller br-test tcp:172.171.82.31:6633
查看此时网桥的配置信息,在Bridge下出现了一个Controller ,控制器的IP是172.171.82.31,端口是6633,下面还有一个连接成功的状态:is_connected=True。
ovs-vsctl的操作知道这么多就能玩的起来ovs交换机了,我没有骗你,真的,不信你回头看一下,我说过ovs-ovctl show是学会的第一个命令也是使用频率最高的命令,我们学了6个命令,show这个命令就用了6次,是不是频率最高的~