第 46 章 使用 nmstate-autoconf 自动配置使用 LLDP 的网络状态
网络设备可以使用链路层发现协议(LLDP),来在 LAN 中公告其身份、功能和邻居。nmstate-autoconf
工具可使用此信息来自动配置本地网络接口。
nmstate-autoconf
工具仅作为技术预览提供。红帽产品服务级别协议(SLA)不支持技术预览功能,且其功能可能并不完善,因此红帽不建议在生产环境中使用它们。这些预览可让用户早期访问将来的产品功能,让用户在开发过程中测试并提供反馈意见。
如需有关 技术预览功能支持范围 的信息,请参阅红帽客户门户网站中的技术预览功能支持范围。
46.1. 使用 nmstate-autoconf 来自动配置网络接口
nmstate-autoconf
工具使用 LLDP 来识别连接到交换机的接口的 VLAN 设置来配置本地设备。
此流程假设以下场景,以及交换机使用 LLDP 广播 VLAN 设置:
-
RHEL 服务器的
enp1s0
和enp2s0
接口连接到使用 VLAN ID100
和 VLAN 名称prod-net
配置的交换机端口。 -
RHEL 服务器的
enp3s0
接口连接到使用 VLAN ID200
和 VLAN 名称mgmt-net
配置的交换机端口。
然后,nmstate-autoconf
工具使用此信息来在服务器上创建以下接口:
-
bond100
-enp1s0
和enp2s0
作为端口的绑定接口。 -
prod-net
- 在 VLAN ID 为100
的bond100
上面的 VLAN 接口。 -
mgmt-net
- 在 VLAN ID 为200
的enp3s0
上面的 VLAN 接口
如果您将多个网络接口连接到 LLDP 用来广播同一 VLAN ID 的不同交换机的端口,则 nmstate-autoconf
会用这些接口来创建一个绑定,并在其上配置通用 VLAN ID。
先决条件
-
nmstate
软件包已安装。 - 网络交换机上启用了 LLDP。
- 以太网接口已启用。
流程
在以太网接口上启用 LLDP:
创建一个包含以下内容的 YAML 文件,如
~/enable-lldp.yml
:interfaces: - name: enp1s0 type: ethernet lldp: enabled: true - name: enp2s0 type: ethernet lldp: enabled: true - name: enp3s0 type: ethernet lldp: enabled: true
将设置应用到系统:
# nmstatectl apply ~/enable-lldp.yml
使用 LLDP 配置网络接口:
可选,启动一个空运行来显示并验证
nmstate-autoconf
生成的 YAML 配置:# nmstate-autoconf -d enp1s0,enp2s0,enp3s0 --- interfaces: - name: prod-net type: vlan state: up vlan: base-iface: bond100 id: 100 - name: mgmt-net type: vlan state: up vlan: base-iface: enp3s0 id: 200 - name: bond100 type: bond state: up link-aggregation: mode: balance-rr port: - enp1s0 - enp2s0
使用
nmstate-autoconf
根据从 LLDP 接收的信息来生成配置,并将设置应用到系统:# nmstate-autoconf enp1s0,enp2s0,enp3s0
验证
显示单个接口的设置:
# nmstatectl show <interface_name>
其他资源
-
您系统上的
nmstate-autoconf (8)
手册页