4.2.4. 网络接口绑定


您可以将多个物理 NIC 捆绑在一起,形成一个名为绑定的单个逻辑通道。您可以配置绑定来为高可用性系统或增加吞吐量提供冗余。

Red Hat OpenStack Platform 支持 Open vSwitch (OVS)内核绑定、OVS-DPDK 绑定和 Linux 内核绑定。

Expand
表 4.2. 支持的接口绑定类型
绑定类型类型值允许网桥类型允许的成员

OVS 内核绑定

ovs_bond

ovs_bridge

interface

OVS-DPDK 绑定

ovs_dpdk_bond

ovs_user_bridge

ovs_dpdk_port

Linux 内核绑定

linux_bond

ovs_bridge

interface

重要

不要在同一节点上组合 ovs_bridgeovs_user_bridge

ovs_bond

在 Open vSwitch (OVS)中定义一个绑定,将两个或多个 接口 连接在一起。这有助于冗余,并增加带宽。

Expand
表 4.3. ovs_bond options
选项默认描述

name

 

绑定的名称。

use_dhcp

False

使用 DHCP 获取 IP 地址。

use_dhcpv6

False

使用 DHCP 获取 v6 IP 地址。

addresses

 

分配给绑定的 IP 地址列表。

Routes

 

分配给绑定的路由列表。如需更多信息,请参阅 第 4.2.7 节 “Routes”

mtu

1500

连接的最大传输单元(MTU)。

primary

False

将接口定义为主接口。

成员

 

要在绑定中使用的接口对象序列。

ovs_options

 

创建绑定时传递给 OVS 的一组选项。如需更多信息,请参阅 表 4.4 “OVS 绑定的 ovs_options 参数”

ovs_extra

 

在绑定的网络配置文件中设置为 OVS_EXTRA 参数的一组选项。

defroute

True

使用 DHCP 服务提供的默认路由。仅在启用 use_dhcpuse_dhcpv6 时应用。

persist_mapping

False

编写设备别名配置而不是系统名称。

dhclient_args

要传递给 DHCP 客户端的参数。

dns_servers

要用于绑定的 DNS 服务器列表。

Expand
表 4.4. OVS 绑定的 ovs_options 参数
ovs_option描述

bond_mode=balance-slb

源负载均衡(slb)根据源 MAC 地址和输出 VLAN 平衡流,并在流量模式发生变化时定期重新平衡。当您使用 balance-slb bonding 选项配置绑定时,远程交换机不需要配置。Networking 服务(neutron)将每个源 MAC 和 VLAN 对分配给一个链接,并通过该链接传输来自该 MAC 和 VLAN 的所有数据包。使用基于源 MAC 地址和 VLAN 号的简单哈希算法,随着流量模式的变化定期重新平衡。balance-slb 模式与 Linux 绑定驱动程序使用的模式 2 绑定类似。即使交换机没有配置为使用 LACP,也可以使用此模式来提供负载均衡。

bond_mode=active-backup

当您使用 active-backup 绑定模式配置绑定时,网络服务会将一个 NIC 保留为待机状态。当活跃连接失败时,待机 NIC 会恢复网络操作。物理交换机仅会显示一个 MAC 地址。这个模式不需要切换配置,链接连接到单独的交换机时可以正常工作。这个模式不提供负载均衡。

lacp=[active | passive | off]

控制链路聚合控制协议(LACP)行为。只有某些交换机支持 LACP。如果您的交换机不支持 LACP,请使用 bond_mode=balance-slbbond_mode=active-backup

other-config:lacp-fallback-ab=true

如果 LACP 失败,则将 active-backup 设置为绑定模式。

other_config:lacp-time=[fast | slow]

将 LACP heartbeat 设置为 1 秒 (fast) 或 30 秒 (slow)。默认设置会较慢。

other_config:bond-detect-mode=[miimon | carrier]

将链路检测设置为使用 miimon heartbeats (miimon)或监控载体(carrier)。默认值为载体。

other_config:bond-miimon-interval=100

如果使用 miimon,请设置心跳间隔(毫秒)。

bond_updelay=1000

设置链接必须激活的时间间隔(毫秒),以防止流量过长。

other_config:bond-rebalance-interval=10000

设置流在绑定成员间重新平衡的时间间隔(毫秒)。将此值设置为 0,以禁用绑定成员之间的流重新平衡。

示例 - OVS 绑定
...
        edpm_network_config_template: |
          ---
          {% set mtu_list = [ctlplane_mtu] %}
          {% for network in nodeset_networks %}
          {{ mtu_list.append(lookup(vars, networks_lower[network] ~ _mtu)) }}
          {%- endfor %}
          {% set min_viable_mtu = mtu_list | max %}
          network_config:
          ...
            members:
              - type: ovs_bond
                name: bond1
                mtu: {{ min_viable_mtu }}
                ovs_options: {{ bond_interface_ovs_options }}
                members:
                - type: interface
                  name: nic2
                  mtu: {{ min_viable_mtu }}
                  primary: true
                - type: interface
                  name: nic3
                  mtu: {{ min_viable_mtu }}
示例 - OVS DPDK 绑定

在本例中,绑定是作为 OVS 用户空间网桥的一部分创建的:

        edpm_network_config_template: |
          ---
          {% set mtu_list = [ctlplane_mtu] %}
          {% for network in nodeset_networks %}
          {{ mtu_list.append(lookup(vars, networks_lower[network] ~ _mtu)) }}
          {%- endfor %}
          {% set min_viable_mtu = mtu_list | max %}
          network_config:
          ...
            members:
            - type: ovs_user_bridge
              name: br-dpdk0
              members:
              - type: ovs_dpdk_bond
                name: dpdkbond0
                rx_queue: {{ num_dpdk_interface_rx_queues }}
                members:
                - type: ovs_dpdk_port
                  name: dpdk0
                  members:
                  - type: interface
                    name: nic4
                - type: ovs_dpdk_port
                  name: dpdk1
                  members:
                  - type: interface
                    name: nic5
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部