6.3.2. OpenShift Container Platform 설치를 위한 provisioner 노드 준비

환경을 준비하려면 다음 단계를 수행하십시오.

프로세스

  1. ssh를 통해 프로비저너 노드에 로그인합니다.
  2. root가 아닌 사용자 (kni)를 만들고 해당 사용자에게 sudo 권한을 부여합니다.

    # useradd kni
    # passwd kni
    # echo "kni ALL=(root) NOPASSWD:ALL" | tee -a /etc/sudoers.d/kni
    # chmod 0440 /etc/sudoers.d/kni
  3. 새 사용자에 대한 ssh 키를 만듭니다.

    # su - kni -c "ssh-keygen -t ed25519 -f /home/kni/.ssh/id_rsa -N ''"
  4. 프로비저너 노드에서 새 사용자로 로그인합니다.

    # su - kni
    $
  5. Red Hat Subscription Manager를 사용하여 프로비저닝 노드를 등록합니다.

    $ sudo subscription-manager register --username=<user> --password=<pass> --auto-attach
    $ sudo subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms --enable=rhel-8-for-x86_64-baseos-rpms
    참고

    Red Hat Subscription Manager에 대한 자세한 내용은 Using and Configuring Red Hat Subscription Manager에서 참조하십시오.

  6. 다음 패키지를 설치합니다.

    $ sudo dnf install -y libvirt qemu-kvm mkisofs python3-devel jq ipmitool
  7. 사용자를 변경하여 libvirt 그룹을 새로 만든 사용자에 추가합니다.

    $ sudo usermod --append --groups libvirt <user>
  8. firewalld를 다시 시작하고 http 서비스를 활성화합니다.

    $ sudo systemctl start firewalld
    $ sudo firewall-cmd --zone=public --add-service=http --permanent
    $ sudo firewall-cmd --reload
  9. libvirtd 서비스를 시작하고 활성화합니다.

    $ sudo systemctl enable libvirtd --now
  10. default 스토리지 풀을 생성하고 시작합니다.

    $ sudo virsh pool-define-as --name default --type dir --target /var/lib/libvirt/images
    $ sudo virsh pool-start default
    $ sudo virsh pool-autostart default
  11. 네트워킹을 설정합니다.

    참고

    이 단계는 웹 콘솔에서도 실행할 수 있습니다.

    $ export PUB_CONN=<baremetal_nic_name>
    $ export PROV_CONN=<prov_nic_name>
    $ sudo nohup bash -c "
        nmcli con down \"$PROV_CONN\"
        nmcli con down \"$PUB_CONN\"
        nmcli con delete \"$PROV_CONN\"
        nmcli con delete \"$PUB_CONN\"
        # RHEL 8.1 appends the word \"System\" in front of the connection, delete in case it exists
        nmcli con down \"System $PUB_CONN\"
        nmcli con delete \"System $PUB_CONN\"
        nmcli connection add ifname provisioning type bridge con-name provisioning
        nmcli con add type bridge-slave ifname \"$PROV_CONN\" master provisioning
        nmcli connection add ifname baremetal type bridge con-name baremetal
        nmcli con add type bridge-slave ifname \"$PUB_CONN\" master baremetal
        pkill dhclient;dhclient baremetal
        nmcli connection modify provisioning ipv6.addresses fd00:1101::1/64 ipv6.method manual
        nmcli con down provisioning
        nmcli con up provisioning
    "
    참고

    이 단계를 실행한 후 ssh 연결이 끊어 질 수 있습니다.

    baremetal 네트워크를 통해 라우팅 할 수 없는 한 IPv6 주소는 모든 주소를 사용할 수 있습니다.

    Pv6 주소를 사용하는 경우 UEFI가 활성화되고 UEFI PXE 설정이 IPv6 프로토콜로 설정되어 있는지 확인하십시오.

  12. provisioning 네트워크 연결에서 IPv4 주소를 구성합니다.

    $ nmcli connection modify provisioning ipv4.addresses 172.22.0.254/24 ipv4.method manual
  13. provisioner 노드로 ssh를 실행합니다 (필요한 경우).

    # ssh kni@provisioner.<cluster-name>.<domain>
  14. 연결 브리지가 제대로 생성되었는지 확인합니다.

    $ sudo nmcli con show
    NAME               UUID                                  TYPE      DEVICE
    baremetal          4d5133a5-8351-4bb9-bfd4-3af264801530  bridge    baremetal
    provisioning       43942805-017f-4d7d-a2c2-7cb3324482ed  bridge    provisioning
    virbr0             d9bca40f-eee1-410b-8879-a2d4bb0465e7  bridge    virbr0
    bridge-slave-eno1  76a8ed50-c7e5-4999-b4f6-6d9014dd0812  ethernet  eno1
    bridge-slave-eno2  f31c3353-54b7-48de-893a-02d2b34c4736  ethernet  eno2
  15. pull-secret.txt 파일을 만듭니다.

    $ vim pull-secret.txt

    웹 브라우저에서 설치 관리자 프로비저닝 인프라가 있는 베어 메탈에 OpenShift 설치 로 이동하고 Downloads 섹션 아래로 스크롤합니다. Copy pull secret을 클릭합니다. pull-secret.txt 파일에 내용을 붙여 넣고 kni 사용자의 홈 디렉터리에 저장합니다.