ovn 通过分布式网关端口连接外部网络

本文实验如何通过ovn的分布式网关端口将ovn网络连接到外部网络。

分布式网关端口是一个逻辑路由器端口,只不过它需要绑定到指定节点上(一个或者多个节点)。注意和网关路由器的区别,网关路由器是绑定到指定节点(只能绑定到一个节点)的逻辑路由器,而分布式网关端口只是正常逻辑路由器上的一个端口,只不过需要绑定到某些节点。

下图是ovn-architecture中分布式网关端口的逻辑拓扑,相比较网关路由器简化不少。

image.png


设置分布式网关端口,可参考ovn-nb的Distributed Gateway Ports部分,有两种方式,可通过设置Logical_Router_Port表的如下两个参数实现

image.png


可以设置多个chassis,并指定chassis的优先级,只有优先级最高的chassis工作,其他chassis作为备份,chassis之间使用bfd检测是否存活。

对应的命令如下

//设置 Distributed Gateway Ports 的方式之一:
ovn-nbctl ha-chassis-group-add ha1
ovn-nbctl ha-chassis-group-add-chassis ha1 master 1
ovn-nbctl ha-chassis-group-add-chassis ha1 node1 2
//465efd10-c0e0-4966-be32-a20b213a2dbc 为 ha1 的uuid,可通过 ovn-nbctl ha-chassis-group-list 查看
ovn-nbctl set Logical_Router_Port  lr1-lslocal ha_chassis_group=465efd10-c0e0-4966-be32-a20b213a2dbc

//设置 Distributed Gateway Ports 的方式之二:
ovn-nbctl lrp-set-gateway-chassis lr1-lslocal master 1
ovn-nbctl lrp-set-gateway-chassis lr1-lslocal node1 2

本次实验的逻辑拓扑

image.png

首先创建图中lr1及其上面部分的组件

###创建两个交换机和一个路由器
//创建两个虚拟交换机 ls1 和 ls2
ovn-nbctl ls-add ls1
ovn-nbctl ls-add ls2
//创建一个虚拟路由器 lr1
ovn-nbctl lr-add lr1

//在虚拟路由器 lr1 上添加端口,用来连接虚拟交换机 ls1
ovn-nbctl lrp-add lr1 lr1-ls1 00:00:00:00:00:01 10.10.10.1/24

//在虚拟交换机 ls1 上添加端口,用来连接虚拟路由器 lr1
ovn-nbctl lsp-add ls1 ls1-lr1
//端口类型必须为 router
ovn-nbctl lsp-set-type ls1-lr1 router
//设置地址,必须和 lr1-ls1 的一致
ovn-nbctl lsp-set-addresses ls1-lr1 00:00:00:00:00:01
//指定 router-port
ovn-nbctl lsp-set-options ls1-lr1 router-port=lr1-ls1

//在虚拟路由器 lr1 上添加端口,用来连接虚拟交换机 ls2
ovn-nbctl lrp-add lr1 lr1-ls2 00:00:00:00:00:02 10.10.20.1/24

//在虚拟交换机 ls2 上添加端口,用来连接虚拟路由器 lr1
ovn-nbctl lsp-add ls2 ls2-lr1
//端口类型必须为 router
ovn-nbctl lsp-set-type ls2-lr1 router
//设置地址,必须和 lr1-ls2 的一致
ovn-nbctl lsp-set-addresses ls2-lr1 00:00:00:00:00:02
//指定 router-port
ovn-nbctl lsp-set-options ls2-lr1 router-port=lr1-ls2

###在交换机上添加vm接口
//在虚拟交换机 ls1 上添加两个端口,指定 mac 和 ip(10.10.10.0/24网段),用来连接vm
ovn-nbctl lsp-add ls1 ls1-vm1
ovn-nbctl lsp-set-addresses ls1-vm1 "00:00:00:00:00:03 10.10.10.2"
ovn-nbctl lsp-set-port-security ls1-vm1 "00:00:00:00:00:03 10.10.10.2"

ovn-nbctl lsp-add ls1 ls1-vm2
ovn-nbctl lsp-set-addresses ls1-vm2 "00:00:00:00:00:04 10.10.10.3"
ovn-nbctl lsp-set-port-security ls1-vm2 "00:00:00:00:00:04 10.10.10.3"

//在虚拟交换机 ls2 上添加两个端口,指定 mac 和 ip(10.10.20.0/24网段),用来连接vm
ovn-nbctl lsp-add ls2 ls2-vm1
ovn-nbctl lsp-set-addresses ls2-vm1 "00:00:00:00:00:03 10.10.20.2"
ovn-nbctl lsp-set-port-security ls2-vm1 "00:00:00:00:00:03 10.10.20.2"

ovn-nbctl lsp-add ls2 ls2-vm2
ovn-nbctl lsp-set-addresses ls2-vm2 "00:00:00:00:00:04 10.10.20.3"
ovn-nbctl lsp-set-port-security ls2-vm2 "00:00:00:00:00:04 10.10.20.3"

###创建四个vm
//在 master 节点上,创建两个namespace,用来模拟两个vm,使用 "iface-id" 指定
//这两个vm属于 ls1
ip netns add vm1
ovs-vsctl add-port br-int vm1 -- set interface vm1 type=internal
ip link set vm1 netns vm1
ip netns exec vm1 ip link set vm1 address 00:00:00:00:00:03
ip netns exec vm1 ip addr add 10.10.10.2/24 dev vm1
ip netns exec vm1 ip link set vm1 up
ip netns exec vm1 ip route add default via 10.10.10.1 dev vm1
ovs-vsctl set Interface vm1 external_ids:iface-id=ls1-vm1


ip netns add vm2
ovs-vsctl add-port br-int vm2 -- set interface vm2 type=internal
ip link set vm2 netns vm2
ip netns exec vm2 ip link set vm2 address 00:00:00:00:00:04
ip netns exec vm2 ip addr add 10.10.10.3/24 dev vm2
ip netns exec vm2 ip link set vm2 up
ip netns exec vm2 ip route add default via 10.10.10.1 dev vm2
ovs-vsctl set Interface vm2 external_ids:iface-id=ls1-vm2


//在 node1 节点上,创建两个namespace,用来模拟两个vm,使用 "iface-id" 指定这两个vm属于 ls2
ip netns add vm1
ovs-vsctl add-port br-int vm1 -- set interface vm1 type=internal
ip link set vm1 netns vm1
ip netns exec vm1 ip link set vm1 address 00:00:00:00:00:03
ip netns exec vm1 ip addr add 10.10.20.2/24 dev vm1
ip netns exec vm1 ip link set vm1 up
ip netns exec vm1 ip route add default via 10.10.20.1 dev vm1
ovs-vsctl set Interface vm1 external_ids:iface-id=ls2-vm1

ip netns add vm2
ovs-vsctl add-port br-int vm2 -- set interface vm2 type=internal
ip link set vm2 netns vm2
ip netns exec vm2 ip link set vm2 address 00:00:00:00:00:04
ip netns exec vm2 ip addr add 10.10.20.3/24 dev vm2
ip netns exec vm2 ip link set vm2 up
ip netns exec vm2 ip route add default via 10.10.20.1 dev vm2
ovs-vsctl set Interface vm2 external_ids:iface-id=ls2-vm2

//在lr1上添加静态路由
ovn-nbctl lr-route-add lr1 "0.0.0.0/0" 10.10.30.2

开始创建分布式网关端口相关组件

//设置分布式路由端口
ovn-nbctl lrp-add lr1 lr1-lslocal 00:00:00:00:00:05 10.10.40.1/24
//设置 Distributed Gateway Ports 的方式之一:
ovn-nbctl ha-chassis-group-add ha1
ovn-nbctl ha-chassis-group-add-chassis ha1 master 1
ovn-nbctl ha-chassis-group-add-chassis ha1 node1 2
//465efd10-c0e0-4966-be32-a20b213a2dbc 为 ha1 的uuid,可通过 ovn-nbctl ha-chassis-group-list 查看
ovn-nbctl set Logical_Router_Port  lr1-lslocal ha_chassis_group=465efd10-c0e0-4966-be32-a20b213a2dbc

//设置 Distributed Gateway Ports 的方式之二:
ovn-nbctl lrp-set-gateway-chassis lr1-lslocal master 1
ovn-nbctl lrp-set-gateway-chassis lr1-lslocal node1 2

//添加逻辑交换机,用于连接外部网络
ovn-nbctl ls-add lslocal
ovn-nbctl lsp-add lslocal lslocal-lr1
ovn-nbctl lsp-set-type lslocal-lr1 router
ovn-nbctl lsp-set-addresses lslocal-lr1 00:00:00:00:00:05
ovn-nbctl lsp-set-options lslocal-lr1 router-port=lr1-lslocal

ovn-nbctl lsp-add lslocal lslocal-localnet
ovn-nbctl lsp-set-addresses lslocal-localnet unknown
ovn-nbctl lsp-set-type lslocal-localnet localnet
ovn-nbctl lsp-set-options lslocal-localnet network_name=externalnet

//只有指定的gateway-chassis上需要执行下面命令,本实验中master和node1都被指定成gateway-chassis
//在master节点上执行
ovs-vsctl add-br br-ens8
ovs-vsctl add-port br-ens8 ens8
ovs-vsctl set Open_vSwitch . external-ids:ovn-bridge-mappings=externalnet:br-ens8
ip link set dev br-ens8 up
ip addr add 10.10.40.2/24 dev br-ens8

//在node1节点上执行
ovs-vsctl add-br br-ens8
ovs-vsctl add-port br-ens8 ens8
ovs-vsctl set Open_vSwitch . external-ids:ovn-bridge-mappings=externalnet:br-ens8
ip link set dev br-ens8 up
ip addr add 10.10.40.3/24 dev br-ens8

//在lr1上添加nat表项
ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=10.10.10.0/24 \
external_ip=10.10.40.1 -- add logical_router lr1 nat @nat

创建出的物理拓扑

image.png

虽然每个节点上都有patch口连接外部网络,但是只有优先级高的才能生效。比如master的优先级高,那node1上的vm想要访问外部网络,还是需要先将报文通过geneve隧道发送到master,再经过master上的patch访问到外部网络。

数据库信息
查看nbdb信息


root@master:~# ovn-nbctl list gateway_chassis
_uuid               : f89af5ea-985f-452d-9b83-0314568a1937
chassis_name        : master
external_ids        : {}
name                : lr1-lslocal-master
options             : {}
priority            : 1

_uuid               : 9cc526db-6311-4d7b-a929-5a20d6d9fe94
chassis_name        : node1
external_ids        : {}
name                : lr1-lslocal-node1
options             : {}
priority            : 2


root@master:~# ovn-nbctl show
switch 100e71d5-27e5-4512-a6df-96d017d87ecb (ls2)
    port ls2-lr1
        type: router
        addresses: ["00:00:00:00:00:02"]
        router-port: lr1-ls2
    port ls2-vm2
        addresses: ["00:00:00:00:00:04 10.10.20.3"]
    port ls2-vm1
        addresses: ["00:00:00:00:00:03 10.10.20.2"]
switch ac2e94b9-d958-408f-820b-866c8aef8da6 (ls1)
    port ls1-vm2
        addresses: ["00:00:00:00:00:04 10.10.10.3"]
    port ls1-vm1
        addresses: ["00:00:00:00:00:03 10.10.10.2"]
    port ls1-lr1
        type: router
        addresses: ["00:00:00:00:00:01"]
        router-port: lr1-ls1
switch 6f41f65a-91e0-49be-9957-02572761c434 (lslocal)
    port lslocal-lr1
        type: router
        addresses: ["00:00:00:00:00:05"]
        router-port: lr1-lslocal
    port lslocal-localnet
        type: localnet
        addresses: ["unknown"]
router 08086243-b572-479a-a23e-9f6f97674bee (lr1)
    port lr1-ls1
        mac: "00:00:00:00:00:01"
        networks: ["10.10.10.1/24"]
    port lr1-ls2
        mac: "00:00:00:00:00:02"
        networks: ["10.10.20.1/24"]
    port lr1-lslocal
        mac: "00:00:00:00:00:05"
        networks: ["10.10.40.1/24"]
        gateway chassis: [node1 master]
    nat 6f864d98-461f-437f-9907-35b3d2971af1
        external ip: "10.10.40.1"
        logical ip: "10.10.10.0/24"
        type: "snat"
root@master:~#
root@master:~# ovn-nbctl list logical_switch
_uuid               : 100e71d5-27e5-4512-a6df-96d017d87ecb
acls                : []
dns_records         : []
external_ids        : {}
forwarding_groups   : []
load_balancer       : []
name                : ls2
other_config        : {}
ports               : [1370b982-dcf3-4958-bc1e-46abbf4cd0d1, 613d87f8-7ad7-4798-9b62-266c0d7c57a5, ee76bfe8-b814-4ccd-8475-021c205c1844]
qos_rules           : []

_uuid               : ac2e94b9-d958-408f-820b-866c8aef8da6
acls                : []
dns_records         : []
external_ids        : {}
forwarding_groups   : []
load_balancer       : []
name                : ls1
other_config        : {}
ports               : [7853af01-1e62-49d4-a2a4-bd8c9a1a30e7, 797e3364-aa6c-4e27-8aff-4c8dda8d3794, eedcd30c-f063-4651-b0f9-90aac3b5710a]
qos_rules           : []

_uuid               : 6f41f65a-91e0-49be-9957-02572761c434
acls                : []
dns_records         : []
external_ids        : {}
forwarding_groups   : []
load_balancer       : []
name                : lslocal
other_config        : {}
ports               : [0c64eb93-994e-4933-a3d0-63b7567e5a9f, 7db140d2-340a-40d9-a51b-9aa1aed9dc75]
qos_rules           : []
root@master:~#
root@master:~# ovn-nbctl list logical_switch_port
_uuid               : 613d87f8-7ad7-4798-9b62-266c0d7c57a5
addresses           : ["00:00:00:00:00:04 10.10.20.3"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : ls2-vm2
options             : {}
parent_name         : []
port_security       : ["00:00:00:00:00:04 10.10.20.3"]
tag                 : []
tag_request         : []
type                : ""
up                  : true

_uuid               : ee76bfe8-b814-4ccd-8475-021c205c1844
addresses           : ["00:00:00:00:00:03 10.10.20.2"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : ls2-vm1
options             : {}
parent_name         : []
port_security       : ["00:00:00:00:00:03 10.10.20.2"]
tag                 : []
tag_request         : []
type                : ""
up                  : true

_uuid               : 7853af01-1e62-49d4-a2a4-bd8c9a1a30e7
addresses           : ["00:00:00:00:00:04 10.10.10.3"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : ls1-vm2
options             : {}
parent_name         : []
port_security       : ["00:00:00:00:00:04 10.10.10.3"]
tag                 : []
tag_request         : []
type                : ""
up                  : true

_uuid               : 1370b982-dcf3-4958-bc1e-46abbf4cd0d1
addresses           : ["00:00:00:00:00:02"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : ls2-lr1
options             : {router-port=lr1-ls2}
parent_name         : []
port_security       : []
tag                 : []
tag_request         : []
type                : router
up                  : true

_uuid               : 7db140d2-340a-40d9-a51b-9aa1aed9dc75
addresses           : [unknown]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : lslocal-localnet
options             : {network_name=externalnet}
parent_name         : []
port_security       : []
tag                 : []
tag_request         : []
type                : localnet
up                  : false

_uuid               : 0c64eb93-994e-4933-a3d0-63b7567e5a9f
addresses           : ["00:00:00:00:00:05"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : lslocal-lr1
options             : {router-port=lr1-lslocal}
parent_name         : []
port_security       : []
tag                 : []
tag_request         : []
type                : router
up                  : true

_uuid               : 797e3364-aa6c-4e27-8aff-4c8dda8d3794
addresses           : ["00:00:00:00:00:03 10.10.10.2"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : ls1-vm1
options             : {}
parent_name         : []
port_security       : ["00:00:00:00:00:03 10.10.10.2"]
tag                 : []
tag_request         : []
type                : ""
up                  : true

_uuid               : eedcd30c-f063-4651-b0f9-90aac3b5710a
addresses           : ["00:00:00:00:00:01"]
dhcpv4_options      : []
dhcpv6_options      : []
dynamic_addresses   : []
enabled             : []
external_ids        : {}
ha_chassis_group    : []
name                : ls1-lr1
options             : {router-port=lr1-ls1}
parent_name         : []
port_security       : []
tag                 : []
tag_request         : []
type                : router
up                  : true
root@master:~#
root@master:~# ovn-nbctl list logical_router
_uuid               : 08086243-b572-479a-a23e-9f6f97674bee
enabled             : []
external_ids        : {}
load_balancer       : []
name                : lr1
nat                 : [6f864d98-461f-437f-9907-35b3d2971af1]
options             : {}
policies            : []
ports               : [1f4cdd53-fbcd-4640-9353-0c0e3529fc12, db3528ab-5cb2-4c32-82e9-05f240d77c30, f4d79ccb-74a2-4c7c-9932-e4907bdb505a]
static_routes       : [5162742c-9db7-4cf6-9b18-2cfec6ddc807]
root@master:~#
root@master:~# ovn-nbctl list logical_router_port
_uuid               : db3528ab-5cb2-4c32-82e9-05f240d77c30
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:00:02"
name                : lr1-ls2
networks            : ["10.10.20.1/24"]
options             : {}
peer                : []

_uuid               : 1f4cdd53-fbcd-4640-9353-0c0e3529fc12
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:00:01"
name                : lr1-ls1
networks            : ["10.10.10.1/24"]
options             : {}
peer                : []

_uuid               : f4d79ccb-74a2-4c7c-9932-e4907bdb505a
enabled             : []
external_ids        : {}
gateway_chassis     : [5b5c7739-61cf-4cc1-a184-6594e7bb5a4d, 5ecd2e72-0809-40a6-937e-db6490c24536]
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:00:05"
name                : lr1-lslocal
networks            : ["10.10.40.1/24"]
options             : {}
peer                : []

查看sbdb信息

root@master:~# ovn-sbctl show
Chassis node1
    hostname: node1
    Encap geneve
        ip: "192.168.122.21"
        options: {csum="true"}
    Port_Binding cr-lr1-lslocal
    Port_Binding ls2-vm2
    Port_Binding ls2-vm1
Chassis master
    hostname: master
    Encap geneve
        ip: "192.168.122.20"
        options: {csum="true"}
    Port_Binding ls1-vm2
    Port_Binding ls1-vm1
root@master:~#
root@master:~# ovn-sbctl list port_binding
_uuid               : 565eda21-56d0-4583-8ee8-10a82f823f85
chassis             : 29a2b734-b27b-4dd9-b1ae-935292757377
datapath            : 0d83daee-014d-4754-b4d4-540c844c4925
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : 7826d0ee-3bf2-45d3-9f77-55c09633dcce
logical_port        : cr-lr1-lslocal
mac                 : ["00:00:00:00:00:05 10.10.40.1/24"]
nat_addresses       : []
options             : {distributed-port=lr1-lslocal}
parent_port         : []
tag                 : []
tunnel_key          : 4
type                : chassisredirect
up                  : true
virtual_parent      : []

_uuid               : 7e741902-ba8e-4789-9b25-e93aabf02593
chassis             : b0261728-db55-4e0b-bfd5-b930081010fc
datapath            : 64340a5b-8d18-4b8e-b018-4647127bf5a1
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : ls1-vm2
mac                 : ["00:00:00:00:00:04 10.10.10.3"]
nat_addresses       : []
options             : {}
parent_port         : []
tag                 : []
tunnel_key          : 3
type                : ""
up                  : true
virtual_parent      : []

_uuid               : 74dcfa7a-79f0-4543-9f9c-ec16d0cf1743
chassis             : []
datapath            : 06954aea-57af-44b2-b13c-35979921e465
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : lslocal-lr1
mac                 : ["00:00:00:00:00:05"]
nat_addresses       : ["00:00:00:00:00:05 10.10.40.1 is_chassis_resident(\"cr-lr1-lslocal\")"]
options             : {peer=lr1-lslocal}
parent_port         : []
tag                 : []
tunnel_key          : 1
type                : patch
up                  : false
virtual_parent      : []

_uuid               : f52f3d54-cee9-4ecb-9613-220ea12c48da
chassis             : []
datapath            : 0d83daee-014d-4754-b4d4-540c844c4925
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : lr1-lslocal
mac                 : ["00:00:00:00:00:05 10.10.40.1/24"]
nat_addresses       : []
options             : {ipv6_prefix="false", ipv6_prefix_delegation="false", peer=lslocal-lr1}
parent_port         : []
tag                 : []
tunnel_key          : 3
type                : patch
up                  : false
virtual_parent      : []

_uuid               : b40945ed-1a00-42f4-9633-1533bec96fcd
chassis             : b0261728-db55-4e0b-bfd5-b930081010fc
datapath            : 64340a5b-8d18-4b8e-b018-4647127bf5a1
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : ls1-vm1
mac                 : ["00:00:00:00:00:03 10.10.10.2"]
nat_addresses       : []
options             : {}
parent_port         : []
tag                 : []
tunnel_key          : 2
type                : ""
up                  : true
virtual_parent      : []

_uuid               : 6e7e2d25-771f-4271-a866-2e5ddde07876
chassis             : []
datapath            : 0d83daee-014d-4754-b4d4-540c844c4925
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : lr1-ls1
mac                 : ["00:00:00:00:00:01 10.10.10.1/24"]
nat_addresses       : []
options             : {ipv6_prefix="false", ipv6_prefix_delegation="false", peer=ls1-lr1}
parent_port         : []
tag                 : []
tunnel_key          : 1
type                : patch
up                  : false
virtual_parent      : []

_uuid               : 2a768ec6-80a5-46cd-a212-09ab0b220a99
chassis             : []
datapath            : 64340a5b-8d18-4b8e-b018-4647127bf5a1
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : ls1-lr1
mac                 : ["00:00:00:00:00:01"]
nat_addresses       : []
options             : {peer=lr1-ls1}
parent_port         : []
tag                 : []
tunnel_key          : 1
type                : patch
up                  : false
virtual_parent      : []

_uuid               : c4e22a17-e250-484c-a36c-6c63eb9e2cce
chassis             : 29a2b734-b27b-4dd9-b1ae-935292757377
datapath            : 8567793f-7752-4bb7-80ab-b2227cccaa7d
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : ls2-vm2
mac                 : ["00:00:00:00:00:04 10.10.20.3"]
nat_addresses       : []
options             : {}
parent_port         : []
tag                 : []
tunnel_key          : 3
type                : ""
up                  : true
virtual_parent      : []

_uuid               : 039effef-f3fa-4875-ac6d-10384c5d4aa5
chassis             : []
datapath            : 0d83daee-014d-4754-b4d4-540c844c4925
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : lr1-ls2
mac                 : ["00:00:00:00:00:02 10.10.20.1/24"]
nat_addresses       : []
options             : {ipv6_prefix="false", ipv6_prefix_delegation="false", peer=ls2-lr1}
parent_port         : []
tag                 : []
tunnel_key          : 2
type                : patch
up                  : false
virtual_parent      : []

_uuid               : 31623857-2362-431b-a897-353485baf00f
chassis             : []
datapath            : 8567793f-7752-4bb7-80ab-b2227cccaa7d
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : ls2-lr1
mac                 : ["00:00:00:00:00:02"]
nat_addresses       : []
options             : {peer=lr1-ls2}
parent_port         : []
tag                 : []
tunnel_key          : 1
type                : patch
up                  : false
virtual_parent      : []

_uuid               : fb9b92df-4146-4989-a901-b1f3f99b6881
chassis             : []
datapath            : 06954aea-57af-44b2-b13c-35979921e465
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : lslocal-localnet
mac                 : [unknown]
nat_addresses       : []
options             : {network_name=externalnet}
parent_port         : []
tag                 : []
tunnel_key          : 2
type                : localnet
up                  : false
virtual_parent      : []

_uuid               : 76dda92f-079c-4daa-b19e-d6d64c4337a3
chassis             : 29a2b734-b27b-4dd9-b1ae-935292757377
datapath            : 8567793f-7752-4bb7-80ab-b2227cccaa7d
encap               : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
logical_port        : ls2-vm1
mac                 : ["00:00:00:00:00:03 10.10.20.2"]
nat_addresses       : []
options             : {}
parent_port         : []
tag                 : []
tunnel_key          : 2
type                : ""
up                  : true
virtual_parent      : []

查看ovsdb信息

root@master:~# ovs-vsctl show
a891c32e-dec1-4168-8e17-1516fa55341b
    Bridge br-int
        fail_mode: secure
        Port ovn-node1-0
            Interface ovn-node1-0
                type: geneve
                options: {csum="true", key=flow, remote_ip="192.168.122.21"}
                bfd_status: {diagnostic="No Diagnostic", flap_count="1", forwarding="true", remote_diagnostic="No Diagnostic", remote_state=up, state=up}
        Port patch-br-int-to-lslocal-localnet
            Interface patch-br-int-to-lslocal-localnet
                type: patch
                options: {peer=patch-lslocal-localnet-to-br-int}
        Port br-int
            Interface br-int
                type: internal
        Port vm1
            Interface vm1
                type: internal
        Port vm2
            Interface vm2
                type: internal
    Bridge br-ens8
        Port patch-lslocal-localnet-to-br-int
            Interface patch-lslocal-localnet-to-br-int
                type: patch
                options: {peer=patch-br-int-to-lslocal-localnet}
        Port ens8
            Interface ens8
        Port br-ens8
            Interface br-ens8
                type: internal

root@node1:~# ovs-vsctl show
c9da68e6-3d3f-49a3-b649-9f0345985648
    Bridge br-int
        fail_mode: secure
        Port vm1
            Interface vm1
                type: internal
        Port br-int
            Interface br-int
                type: internal
        Port patch-br-int-to-lslocal-localnet
            Interface patch-br-int-to-lslocal-localnet
                type: patch
                options: {peer=patch-lslocal-localnet-to-br-int}
        Port vm2
            Interface vm2
                type: internal
        Port ovn-master-0
            Interface ovn-master-0
                type: geneve
                options: {csum="true", key=flow, remote_ip="192.168.122.20"}
                bfd_status: {diagnostic="No Diagnostic", flap_count="1", forwarding="true", remote_diagnostic="No Diagnostic", remote_state=up, state=up}
    Bridge br-ens8
        Port patch-lslocal-localnet-to-br-int
            Interface patch-lslocal-localnet-to-br-int
                type: patch
                options: {peer=patch-br-int-to-lslocal-localnet}
        Port br-ens8
            Interface br-ens8
                type: internal
        Port ens8
            Interface ens8

也可参考:ovn 通过分布式网关端口连接外部网络 - 简书 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值