27.3.5. 네트워크 RHEL 시스템 역할을 사용하여 IPoIB 연결 구성
InfiniBand (IPoIB)를 통해 IP를 구성하려면 NetworkManager 연결 프로필을 만듭니다. 네트워크 RHEL 시스템 역할을 사용하여 이 프로세스를 자동화하고 플레이북에 정의된 호스트에서 연결 프로필을 원격으로 구성할 수 있습니다.
네트워크 RHEL 시스템 역할을 사용하여 IPoIB를 구성할 수 있으며, InfiniBand의 상위 장치에 대한 연결 프로파일이 없으면 역할도 생성할 수 있습니다.
사전 요구 사항
- 컨트롤 노드와 관리형 노드를 준비했습니다.
- 관리 노드에서 플레이북을 실행할 수 있는 사용자로 제어 노드에 로그인되어 있습니다.
-
관리 노드에 연결하는 데 사용하는 계정에는 이러한 노드에 대한
sudo권한이 있습니다. -
mlx5_ib0이라는 InfiniBand 장치가 관리 노드에 설치됩니다. - 관리형 노드는 NetworkManager를 사용하여 네트워크를 구성합니다.
프로세스
다음 콘텐츠를 사용하여 플레이북 파일(예:
~/playbook.yml)을 생성합니다.--- - name: Configure the network hosts: managed-node-01.example.com tasks: - name: IPoIB connection profile with static IP address settings ansible.builtin.include_role: name: redhat.rhel_system_roles.network vars: network_connections: # InfiniBand connection mlx5_ib0 - name: mlx5_ib0 interface_name: mlx5_ib0 type: infiniband # IPoIB device mlx5_ib0.8002 on top of mlx5_ib0 - name: mlx5_ib0.8002 type: infiniband autoconnect: yes infiniband: p_key: 0x8002 transport_mode: datagram parent: mlx5_ib0 ip: address: - 192.0.2.1/24 - 2001:db8:1::1/64 state: up예제 플레이북에 지정된 설정은 다음과 같습니다.
type: <profile_type>- 생성할 프로필 유형을 설정합니다. 예제 플레이북은 두 개의 연결 프로필을 생성합니다. 하나는 InfiniBand 연결용이고 하나는 IPoIB 장치용입니다.
parent: <parent_device>- IPoIB 연결 프로필의 상위 장치를 설정합니다.
p_key: <value>-
InfiniBand 파티션 키를 설정합니다. 이 변수를 설정하는 경우 IPoIB 장치에
interface_name을 설정하지 마십시오. transport_mode: <mode>-
IPoIB 연결 작업 모드를 설정합니다. 이 변수를
데이터그램(기본값) 또는연결된 로 설정할 수 있습니다.
플레이북에 사용되는 모든 변수에 대한 자세한 내용은 제어 노드의
/usr/share/ansible/roles/rhel-system-roles.network/README.md파일을 참조하십시오.플레이북 구문을 확인합니다.
$ ansible-playbook --syntax-check ~/playbook.yml이 명령은 구문만 검증하고 잘못되었지만 유효한 구성으로부터 보호하지 않습니다.
Playbook을 실행합니다.
$ ansible-playbook ~/playbook.yml
검증
mlx5_ib0.8002장치의 IP 설정을 표시합니다.# ansible managed-node-01.example.com -m command -a 'ip address show mlx5_ib0.8002' managed-node-01.example.com | CHANGED | rc=0 >> ... 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 forevermlx5_ib0.8002장치의 파티션 키(P_Key)를 표시합니다.# ansible managed-node-01.example.com -m command -a 'cat /sys/class/net/mlx5_ib0.8002/pkey' managed-node-01.example.com | CHANGED | rc=0 >> 0x8002mlx5_ib0.8002장치의 모드를 표시합니다.# ansible managed-node-01.example.com -m command -a 'cat /sys/class/net/mlx5_ib0.8002/mode' managed-node-01.example.com | CHANGED | rc=0 >> datagram