8.8. 使用 network RHEL 系统角色配置 IPoIB 连接
您可以使用 网络 RHEL 系统角色为InfiniBand (IPoIB)设备上的 IP 远程创建 NetworkManager 连接配置文件。例如,通过运行 Ansible playbook,为 mlx4_ib0 接口远程添加具有以下设置的 InfiniBand 连接:
-
一个 IPoIB 设备 -
mlx4_ib0.8002 -
一个分区密钥
p_key-0x8002 -
静态
IPv4地址 -192.0.2.1,子网掩码为/24 -
一个静态
IPv6地址 -2001:db8:1::1,子网掩码为/64
在 Ansible 控制节点上执行此步骤。
先决条件
- 您已准备好控制节点和受管节点
- 您可以以可在受管主机上运行 playbook 的用户身份登录到控制节点。
-
用于连接到受管节点的帐户具有
sudo权限。 - 要在其上运行此 playbook 的受管节点或受管节点组列在 Ansible 清单文件中。
-
一个名为
mlx4_ib0的 InfiniBand 设备被安装在受管节点上。 - 受管节点使用 NetworkManager 配置网络。
流程
创建一个 playbook 文件,如包含以下内容的
~/IPoIB.yml:--- - name: Configure the network hosts: managed-node-01.example.com tasks: - name: Configure IPoIB include_role: name: rhel-system-roles.network vars: network_connections: # InfiniBand connection mlx4_ib0 - name: mlx4_ib0 interface_name: mlx4_ib0 type: infiniband # IPoIB device mlx4_ib0.8002 on top of mlx4_ib0 - name: mlx4_ib0.8002 type: infiniband autoconnect: yes infiniband: p_key: 0x8002 transport_mode: datagram parent: mlx4_ib0 ip: address: - 192.0.2.1/24 - 2001:db8:1::1/64 state: up如果您像本例所示设置了
p_key参数,请不要在 IPoIB 设备上设置interface_name参数。运行 playbook:
# ansible-playbook ~/IPoIB.yml
验证
在
managed-node-01.example.com主机上显示mlx4_ib0.8002设备的 IP 设置:# ip address show mlx4_ib0.8002 ... inet 192.0.2.1/24 brd 192.0.2.255 scope global noprefixroute ib0.8002 valid_lft forever preferred_lft forever inet6 2001:db8:1::1/64 scope link tentative noprefixroute valid_lft forever preferred_lft forever显示
mlx4_ib0.8002设备的分区密钥(P_Key):# cat /sys/class/net/mlx4_ib0.8002/pkey 0x8002显示
mlx4_ib0.8002设备的模式:# cat /sys/class/net/mlx4_ib0.8002/mode datagram