Skip to content

Commit

Permalink
build: note on deploying ovs, ovn components
Browse files Browse the repository at this point in the history
  • Loading branch information
yousong committed Mar 12, 2021
1 parent 5707959 commit dc1b241
Showing 1 changed file with 40 additions and 1 deletion.
41 changes: 40 additions & 1 deletion build/sdnagent/root/usr/share/sdnagent/ansible/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,46 @@
选定2台机器,用来部署EIP网关。如果只是测试用不需要主备高可用,只部署1台机器也可以。
EIP将会绑定到这2台机器上,因此要求外部网络设备将目的地址为EIP网段的流量路由到这两台机器。

EIP网关通过隧道与OneCloud宿主机通信,隧道协议为UDP,隧道外层IP为网关和宿主机的IP,通信路径中的防火墙需要放行此类流量。
## 部署方式

EIP网关通过隧道与OneCloud宿主机通信,隧道协议为UDP,隧道报文外层IP为网关和宿主机的IP,通信路径中的防火墙需要放行此类流量。

在测试情况下,EIP网关可部署在平台的计算节点上,节省资源。另外,EIP网关也可部署到单独的宿主机、虚拟机中,只要满足上述的三层网络通信需求即可。

如果EIP网关部署在平台的计算节点上,计算节点运行了平台host pod,已经将openvswitch, ovn相关的组件都部署、配置好了,直接“实施部署”即可。

如果EIP网关部署在另外单独的节点上,则需要使用ISO中的.rpm安装包预先安装、配置好网关所需组件。以下对这部分进行描述

以3.6为例,所需安装的包的名字和所在位置如下

# https://iso.yunion.cn/3.6/rpms/packages/kernel
linux-firmware
kernel

# https://iso.yunion.cn/3.6/rpms/packages/host
kmod-openvswitch
unbound
openvswitch
openvswitch-ovn-common
openvswitch-ovn-host

安装完内核之后,需要重启机器使之效

# 启动openvswitch
systemctl enable --now openvswitch

# 配置ovn
ovn_encap_ip=xx # 隧道外层IP地址,EIP网关用它与其它计算节点通信
ovn_north_addr=yy:32242 # ovn北向数据库的地址,yy一般选择某台宿主机ip地址;端口默认为32242,对应k8s default-ovn-north service中的端口号
ovs-vsctl set Open_vSwitch . \
external_ids:ovn-bridge=brvpc \
external_ids:ovn-encap-type=geneve \
external_ids:ovn-encap-ip=$ovn_encap_ip \
external_ids:ovn-remote="tcp:$ovn_north_addr"
# 启动ovn-controller
systemctl enable --now ovn-controller

部署结束后,应当可以看到至少一个名为brvpc的openvswitch网桥,`ovs-vsctl show`命令的输出中可以看到名为ovn-xx,类型为geneve的隧道port,remote-ip指向计算节点的ovn-encap-ip

## 实施部署

Expand Down

0 comments on commit dc1b241

Please sign in to comment.