3.5. 使用 network RHEL 系统角色配置 IPoIB 连接
您可以使用 IP over InfiniBand (IPoIB),通过 InfiniBand 接口发送 IP 数据包。要配置 IPoIB,请创建一个 NetworkManager 连接配置文件。通过使用 Ansible 和 network 系统角色,您可以自动执行此过程,并在 playbook 中定义的主机上远程配置连接配置文件。
您可以使用 network RHEL 系统角色配置 IPoIB,如果 InfiniBand 的父设备的连接配置集不存在,角色也可以创建它。
先决条件
- 您已准备好控制节点和受管节点
- 以可在受管主机上运行 playbook 的用户登录到控制节点。
-
用于连接受管节点的帐户具有
sudo权限。 -
名为
mlx4_ib0的 InfiniBand 设备安装在受管节点中。 - 受管节点使用 NetworkManager 配置网络。
流程
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例 playbook 中指定的设置包括以下内容:
type: <profile_type>- 设置要创建的配置文件的类型。示例 playbook 创建两个连接配置文件:一个用于 InfiniBand 连接,一个用于 IPoIB 设备。
parent: <parent_device>- 设置 IPoIB 连接配置文件的父设备。
p_key: <value>-
设置 InfiniBand 分区密钥。如果您设置了此变量,请不要在 IPoIB 设备上设置
interface_name。 transport_mode: <mode>-
设置 IPoIB 连接操作模式。您可以将此变量设置为
datagram(默认)或connected。
有关 playbook 中使用的所有变量的详情,请查看控制节点上的
/usr/share/ansible/roles/rhel-system-roles.network/README.md文件。验证 playbook 语法:
ansible-playbook --syntax-check ~/playbook.yml
$ ansible-playbook --syntax-check ~/playbook.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意,这个命令只验证语法,并不会防止错误但有效的配置。
运行 playbook:
ansible-playbook ~/playbook.yml
$ ansible-playbook ~/playbook.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
显示
mlx4_ib0.8002设备的 IP 设置:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示
mlx4_ib0.8002设备的分区密钥(P_Key):ansible managed-node-01.example.com -m command -a 'cat /sys/class/net/mlx4_ib0.8002/pkey' managed-node-01.example.com | CHANGED | rc=0 >> 0x8002
# ansible managed-node-01.example.com -m command -a 'cat /sys/class/net/mlx4_ib0.8002/pkey' managed-node-01.example.com | CHANGED | rc=0 >> 0x8002Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示
mlx4_ib0.8002设备的模式:ansible managed-node-01.example.com -m command -a 'cat /sys/class/net/mlx4_ib0.8002/mode' managed-node-01.example.com | CHANGED | rc=0 >> datagram
# ansible managed-node-01.example.com -m command -a 'cat /sys/class/net/mlx4_ib0.8002/mode' managed-node-01.example.com | CHANGED | rc=0 >> datagramCopy to Clipboard Copied! Toggle word wrap Toggle overflow