6.4. network RHEL システムロールを使用した IPoIB 接続の設定
network
RHEL システムロールを使用して、IP over InfiniBand (IPoIB) デバイスの 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
権限がある。 -
mlx4_ib0
という名前の InfiniBand デバイスが管理対象ノードにインストールされている。 - 管理対象ノードが NetworkManager を使用してネットワークを設定している。
手順
次の内容を含む Playbook ファイル (例:
~/playbook.yml
) を作成します。--- - name: Configure the network hosts: managed-node-01.example.com tasks: - name: Configure IPoIB ansible.builtin.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 --syntax-check ~/playbook.yml
このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。
Playbook を実行します。
$ ansible-playbook ~/playbook.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
関連情報
-
/usr/share/ansible/roles/rhel-system-roles.network/README.md
ファイル -
/usr/share/doc/rhel-system-roles/network/
ディレクトリー