11.4. 网络接口参考
网络接口配置包括以下参数:
interface
定义单个网络接口。该配置使用实际接口名称("eth0"、"eth1"、"enp0s25")或一组数字接口("nic1", "nic3")定义各个接口。
例如:
- type: interface name: nic2
Option | 默认值 | Description |
---|---|---|
name | Interface 的名称 | |
use_dhcp | False | 使用 DHCP 获取 IP 地址 |
use_dhcpv6 | False | 使用 DHCP 获取 v6 IP 地址 |
addresses | 分配给接口的 IP 地址列表 | |
Routes | 分配给接口的路由列表。请参阅 Routes。 | |
mtu | 1500 | 连接的最大传输单元(MTU) |
主要 | False | 将接口定义为主接口 |
defroute | True |
使用 DHCP 服务提供的默认路由。仅在启用 |
persist_mapping | False | 编写设备别名配置,而不是系统名称 |
dhclient_args | None | 传递给 DHCP 客户端的参数 |
dns_servers | None | 用于接口的 DNS 服务器列表 |
ethtool_opts |
将这个选项设置为 |
vlan
一个 VLAN。使用从 parameters
部分传递的 VLAN ID 和子网。
例如:
- type: vlan vlan_id:{get_param: ExternalNetworkVlanID} addresses: - ip_netmask: {get_param: ExternalIpSubnet}
Option | 默认值 | Description |
---|---|---|
vlan_id | VLAN ID | |
device | 附加 VLAN 的父设备。当 VLAN 不是 OVS 网桥的成员时,请使用此参数。例如,使用此参数将 VLAN 附加到绑定接口设备。 | |
use_dhcp | False | 使用 DHCP 获取 IP 地址 |
use_dhcpv6 | False | 使用 DHCP 获取 v6 IP 地址 |
addresses | 分配给 VLAN 的 IP 地址列表 | |
Routes | 分配给 VLAN 的路由列表。请参阅 Routes。 | |
mtu | 1500 | 连接的最大传输单元(MTU) |
主要 | False | 将 VLAN 定义为主接口 |
defroute | True |
使用 DHCP 服务提供的默认路由。仅在启用 |
persist_mapping | False | 编写设备别名配置,而不是系统名称 |
dhclient_args | None | 传递给 DHCP 客户端的参数 |
dns_servers | None | 用于 VLAN 的 DNS 服务器列表 |
ovs_bond
在 Open vSwitch 中定义一个绑定,将两个或多个 接口
一起加入。这有助于冗余和增加带宽。
例如:
- type: ovs_bond name: bond1 members: - type: interface name: nic2 - type: interface name: nic3
Option | 默认值 | Description |
---|---|---|
name | 绑定的名称 | |
use_dhcp | False | 使用 DHCP 获取 IP 地址 |
use_dhcpv6 | False | 使用 DHCP 获取 v6 IP 地址 |
addresses | 分配给绑定的 IP 地址列表 | |
Routes | 分配给绑定的路由列表。请参阅 Routes。 | |
mtu | 1500 | 连接的最大传输单元(MTU) |
主要 | False | 将接口定义为主接口 |
成员 | 绑定中使用的一系列接口对象 | |
ovs_options | 创建绑定时要传递给 OVS 的一组选项 | |
ovs_extra | 设置为在绑定网络配置文件中设置为 OVS_EXTRA 参数的一组选项 | |
defroute | True |
使用 DHCP 服务提供的默认路由。仅在启用 |
persist_mapping | False | 编写设备别名配置,而不是系统名称 |
dhclient_args | None | 传递给 DHCP 客户端的参数 |
dns_servers | None | 用于绑定的 DNS 服务器列表 |
ovs_bridge
在 Open vSwitch 中定义网桥,它将多个接口、ovs_bond
和 vlan
对象连接在一起。
网络接口类型 ovs_bridge
取一个参数 名称
。
如果有多个网桥,则必须使用除接受 bridge_name
的默认名称以外的不同网桥名称。如果不使用不同的名称,则在聚合阶段,将两个网络绑定放置在同一网桥中。
如果您要为外部 tripleo 网络定义 OVS 网桥,则保留值 bridge_name
和 interface_name
,因为您的部署框架会自动将这些值替换为外部网桥名称和外部接口名称。
例如:
- type: ovs_bridge name: bridge_name addresses: - ip_netmask: list_join: - / - - {get_param: ControlPlaneIp} - {get_param: ControlPlaneSubnetCidr} members: - type: interface name: interface_name - type: vlan device: bridge_name vlan_id: {get_param: ExternalNetworkVlanID} addresses: - ip_netmask: {get_param: ExternalIpSubnet}
OVS 网桥连接到 Neutron 服务器,以获取配置数据。如果 OpenStack 控制流量(通常是 Control Plane 和 Internal API 网络)放置在 OVS 网桥上,则与 Neutron 服务器的连接会在 OVS 升级时丢失,或者由管理员用户或进程重启 OVS 网桥。这会导致一些停机时间。如果在这些情况下无法接受停机时间,则控制组网络应放在单独的接口或绑定中,而不是在 OVS 网桥上:
- 在置备接口和 OVS 网桥上的 VLAN 上放置内部 API 网络时,可以达到最小设置。
- 如果要绑定,则至少需要两个绑定(four 网络接口)。该控制组应当放在 Linux 绑定(Linux 网桥)上。如果切换不支持 LACP 回退到单个接口进行 PXE 引导,则该解决方案至少需要 5 个 NIC。
Option | 默认值 | Description |
---|---|---|
name | 网桥的名称 | |
use_dhcp | False | 使用 DHCP 获取 IP 地址 |
use_dhcpv6 | False | 使用 DHCP 获取 v6 IP 地址 |
addresses | 分配给网桥的 IP 地址列表 | |
Routes | 分配给网桥的路由列表。请参阅 Routes。 | |
mtu | 1500 | 连接的最大传输单元(MTU) |
成员 | 网桥中使用的一系列接口、VLAN 和绑定对象 | |
ovs_options | 创建网桥时要传递给 OVS 的一组选项 | |
ovs_extra | 设置在网桥网络配置文件中作为 OVS_EXTRA 参数的选项 | |
defroute | True |
使用 DHCP 服务提供的默认路由。仅在启用 |
persist_mapping | False | 编写设备别名配置,而不是系统名称 |
dhclient_args | None | 传递给 DHCP 客户端的参数 |
dns_servers | None | 网桥使用的 DNS 服务器列表 |
linux_bond
定义一个将两个或者多个 接口
接合在一起的 Linux 绑定。这有助于冗余和增加带宽。确保在 bonding_options
参数中包含基于内核的绑定选项。有关 Linux 绑定选项的详情请参考 7.7.1。Red Hat Enterprise Linux 7 网络指南中的绑定模块指令。
例如:
- type: linux_bond name: bond1 members: - type: interface name: nic2 primary: true - type: interface name: nic3 bonding_options: "mode=802.3ad"
请注意,nic2
使用 primary: true
。这样可确保绑定将 MAC 地址用于 nic2
。
Option | 默认值 | Description |
---|---|---|
name | 绑定的名称 | |
use_dhcp | False | 使用 DHCP 获取 IP 地址 |
use_dhcpv6 | False | 使用 DHCP 获取 v6 IP 地址 |
addresses | 分配给绑定的 IP 地址列表 | |
Routes | 分配给绑定的路由列表。请参阅 Routes。 | |
mtu | 1500 | 连接的最大传输单元(MTU) |
主要 | False | 将接口定义为主接口。 |
成员 | 绑定中使用的一系列接口对象 | |
bonding_options | 创建绑定时一组选项。有关 Linux 绑定选项的详情请参考 7.7.1。Red Hat Enterprise Linux 7 网络指南中的绑定模块指令。 | |
defroute | True |
使用 DHCP 服务提供的默认路由。仅在启用 |
persist_mapping | False | 编写设备别名配置,而不是系统名称 |
dhclient_args | None | 传递给 DHCP 客户端的参数 |
dns_servers | None | 用于绑定的 DNS 服务器列表 |
linux_bridge
定义 Linux 网桥,它将多个接口、linux_bond
和 vlan
对象连接在一起。外部网桥也对参数使用两个特殊值:
-
bridge_name
,它替换为外部网桥名称。 -
interface_name
,它被替换为外部接口。
例如:
- type: linux_bridge name: bridge_name addresses: - ip_netmask: list_join: - / - - {get_param: ControlPlaneIp} - {get_param: ControlPlaneSubnetCidr} members: - type: interface name: interface_name - type: vlan device: bridge_name vlan_id: {get_param: ExternalNetworkVlanID} addresses: - ip_netmask: {get_param: ExternalIpSubnet}
Option | 默认值 | Description |
---|---|---|
name | 网桥的名称 | |
use_dhcp | False | 使用 DHCP 获取 IP 地址 |
use_dhcpv6 | False | 使用 DHCP 获取 v6 IP 地址 |
addresses | 分配给网桥的 IP 地址列表 | |
Routes | 分配给网桥的路由列表。请参阅 Routes。 | |
mtu | 1500 | 连接的最大传输单元(MTU) |
成员 | 网桥中使用的一系列接口、VLAN 和绑定对象 | |
defroute | True |
使用 DHCP 服务提供的默认路由。仅在启用 |
persist_mapping | False | 编写设备别名配置,而不是系统名称 |
dhclient_args | None | 传递给 DHCP 客户端的参数 |
dns_servers | None | 网桥使用的 DNS 服务器列表 |
Routes
定义应用到网络接口、VLAN、网桥或绑定的路由列表。
例如:
- type: interface name: nic2 ... routes: - ip_netmask: 10.1.2.0/24 default: true next_hop: get_param: EC2MetadataIp
Option | 默认值 | Description |
---|---|---|
ip_netmask | None | 目标网络的 IP 和子网掩码。 |
default | False |
将此路由设置为默认路由。等同于设置 |
next_hop | None | 用于访问目的地网络的路由器的 IP 地址。 |