云计算: OVN 集群 部署分布式交换机

目录

一、实验

1.环境

[2.OVN 集群 部署云主机](#2.OVN 集群 部署云主机)

3.中心端添加DVS分布式大二层交换机

二、问题

1.南向控制器查看主机名只显示localhost

2.中心端如何添加DVR分布式⼤三层路由器


一、实验

1.环境

(1) 主机

表1 宿主机

|-------------|------|-------------------------|-------------------------------------|----------------|-----------------------------------|
| 主机 | 架构 | 软件 | 主要服务 | IP | 备注 |
| ovn_central | 中心端 | ovn-central openvswitch | ovn-northd(控制平面层) ovn-controller | 192.168.204.64 | ovn-nbctl(北向控制器) ovn-sbctl(南向控制器) |
| ovn_node01 | 业务端1 | openvswitch libvirt | ovn-controller openvswitch libvirtd | 192.168.204.65 | |
| ovn_node02 | 业务端2 | openvswitch libvirt | ovn-controller openvswitch libvirtd | 192.168.204.66 | |

表2 目标云主机

|---------------|------------|---------------|
| 云主机 | IP | 备注 |
| cloudserver01 | 172.16.1.1 | 宿主机ovn_node01 |
| cloudserver02 | 172.16.1.2 | 宿主机ovn_node02 |

(2)中心端查看

南向控制器

bash 复制代码
ovn-sbctl  show

北向控制器目前为空

bash 复制代码
ovn-nbctl  show

(3)业务端查看

bash 复制代码
 ovs-vsctl show

ovn_node01

ovn_node02

2.OVN 集群 部署云主机

(1)ovn_node01创建云主机

bash 复制代码
virt-manager

新建虚拟机

前进

使用镜像

修改内存

完成

强制关机

查看云主机

bash 复制代码
virsh list-all

修改云主机

bash 复制代码
virsh edit cloudserver01

搜索接口

bash 复制代码
:/interface

修改前:

修改后:

bash 复制代码
<interface type='bridge'>
  <mac address='02:01:01:01:01:01'/>
  <source bridge='br-int'/>
  <virtualport type='openvswitch'/>
  <target dev='vm01-1'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

挂载镜像

修改启动项为光驱

开机选择第3个命令行

(2) ovn_node02创建云主机

bash 复制代码
virt-manager

新建虚拟机

前进

使用镜像

修改内存

完成(网络默认,暂不修改)

强制关机

查看云主机

bash 复制代码
virsh list-all

修改云主机

bash 复制代码
virsh edit cloudserver02

搜索接口

bash 复制代码
:/interface

修改前:

修改后:

bash 复制代码
<interface type='bridge'>
  <mac address='02:01:01:01:01:02'/>
  <source bridge='br-int'/>
  <virtualport type='openvswitch'/>
  <target dev='vm02-1'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

挂载镜像

修改启动项为光驱

开机选择第3个命令行

(3)网络测试

云主机01 ping 云主机02,目前不通

3.中心端添加DVS分布式大二层交换机

(1)北向添加逻辑交换机

bash 复制代码
 ovn-nbctl ls-add ls1

(2)添加并设置⽤于连接业务端1的端⼝

bash 复制代码
ovn-nbctl lsp-add ls1 ls1-node1-vm1
ovn-nbctl lsp-set-addresses ls1-node1-vm1 02:01:01:01:01:01
ovn-nbctl lsp-set-port-security ls1-node1-vm1 02:01:01:01:01:01

(3)添加并设置⽤于连接业务端2的端⼝

bash 复制代码
ovn-nbctl lsp-add ls1 ls1-node2-vm2
ovn-nbctl lsp-set-addresses ls1-node2-vm2 02:01:01:01:01:02
ovn-nbctl lsp-set-port-security ls1-node2-vm2 02:01:01:01:01:02

(4)查看北向控制器

bash 复制代码
ovn-nbctl show

(5)查看南向控制器

bash 复制代码
ovn-sbctl show

(6) 业务端查看流表

bash 复制代码
ovs-ofctl  dump-flows  br-int | wc -l

ovn_node01

ovn_node02

(7)业务端OVS添加端⼝映射(南北向接⼝映射)

ovn_node01

bash 复制代码
ovs-vsctl set Interface vm01-1 external_ids:iface-id=ls1-node1-vm1

ovn_node02

bash 复制代码
ovs-vsctl set Interface vm02-1 external_ids:iface-id=ls1-node2-vm2

(8)中心端再次查看南向控制器

端⼝已经绑定

bash 复制代码
ovn-sbctl show

(9)业务端再次查看流表

bash 复制代码
ovs-ofctl  dump-flows  br-int | wc -l

ovn_node01

ovn_node02

(10)网络测试

云主机01 ping 云主机02,目前已通

二、问题

1.南向控制器查看主机名只显示localhost

(1)报错

主机名显示localhost

(2)原因分析

hosts文件配置需要修改。

(3)解决方法

修改hosts文件

bash 复制代码
vim /etc/hosts

成功:

2.中心端如何添加DVR分布式⼤三层路由器

(1)中心端添加逻辑路由器

bash 复制代码
ovn-nbctl lr-add lr1

(2)逻辑路由器添加连接交换机ls1的端⼝

bash 复制代码
ovn-nbctl lrp-add lr1 lr1-ls1 02:01:01:01:0F:01 172.16.1.254/24

(3)逻辑路由器连接逻辑交换机ls1

bash 复制代码
ovn-nbctl lsp-add ls1 ls1-lr1
ovn-nbctl lsp-set-type ls1-lr1 router
ovn-nbctl lsp-set-addresses ls1-lr1 02:01:01:01:0F:01
ovn-nbctl lsp-set-options ls1-lr1 router-port=lr1-ls1

(4)查看北向数据库信息

bash 复制代码
ovn-nbctl show

(5)查看南向数据库信息

bash 复制代码
ovn-sbctl show

(6)业务端查看流表

bash 复制代码
ovs-ofctl  dump-flows  br-int | wc -l

ovn_node01

ovn_node02

相关推荐
咕噜Yuki060911 分钟前
博睿谷IT认证-订阅试学习
linux·学习·redhat·rhce·红帽认证·ocm认证
冰红茶兑滴水17 分钟前
Linux 线程互斥
linux·c++
King without kingdom1 小时前
面试题(三)
运维·服务器·网络
Sam90291 小时前
828华为云征文|Flexus云服务器X实例部署宝塔运维面板
运维·服务器·华为云
元素之窗2 小时前
如何在 CentOS 中管理用户、组和服务状态
linux·运维·centos
咩咩大主教2 小时前
Linux下的简单TCP客户端和服务器
linux·服务器·c语言·开发语言·c++·tcp/ip·网络编程
你不要在理我了3 小时前
weblogic CVE-2018-2894 靶场攻略
运维·服务器·安全
小理想!3 小时前
如何在Linux Centos7系统中挂载群晖共享文件夹
linux·运维·服务器
日晨难再3 小时前
Linux:终端(terminal)与终端管理器(agetty)
linux·运维·服务器
神即道 道法自然 如来4 小时前
如何在 Jenkins 中配置邮件通知?
java·运维·jenkins