2장. OpenShift Container Platform 설치를 위한 환경 설정


2.1. {ibmcloudBMProductName} 인프라에서 프로비저너 노드 준비

프로비저너 노드를 준비하려면 다음 단계를 수행합니다.

프로세스

  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 -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 kni
  8. firewalld 시작:

    $ sudo systemctl start firewalld
  9. firewalld 활성화:

    $ sudo systemctl enable firewalld
  10. http 서비스를 시작합니다.

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

    $ sudo systemctl enable libvirtd --now
  12. 프로비저너 노드의 ID를 설정합니다.

    $ PRVN_HOST_ID=<ID>

    다음 ibmcloud 명령을 사용하여 ID를 볼 수 있습니다.

    $ ibmcloud sl hardware list
  13. 공용 서브넷의 ID를 설정합니다.

    $ PUBLICSUBNETID=<ID>

    다음 ibmcloud 명령을 사용하여 ID를 볼 수 있습니다.

    $ ibmcloud sl subnet list
  14. 프라이빗 서브넷의 ID를 설정합니다.

    $ PRIVSUBNETID=<ID>

    다음 ibmcloud 명령을 사용하여 ID를 볼 수 있습니다.

    $ ibmcloud sl subnet list
  15. 프로비저너 노드 공용 IP 주소를 설정합니다.

    $ PRVN_PUB_IP=$(ibmcloud sl hardware detail $PRVN_HOST_ID --output JSON | jq .primaryIpAddress -r)
  16. 공용 네트워크의 CIDR을 설정합니다.

    $ PUBLICCIDR=$(ibmcloud sl subnet detail $PUBLICSUBNETID --output JSON | jq .cidr)
  17. 공용 네트워크의 IP 주소 및 CIDR을 설정합니다.

    $ PUB_IP_CIDR=$PRVN_PUB_IP/$PUBLICCIDR
  18. 공용 네트워크의 게이트웨이를 설정합니다.

    $ PUB_GATEWAY=$(ibmcloud sl subnet detail $PUBLICSUBNETID --output JSON | jq .gateway -r)
  19. 프로비저너 노드의 개인 IP 주소를 설정합니다.

    $ PRVN_PRIV_IP=$(ibmcloud sl hardware detail $PRVN_HOST_ID --output JSON | \
                     jq .primaryBackendIpAddress -r)
  20. 사설 네트워크의 CIDR을 설정합니다.

    $ PRIVCIDR=$(ibmcloud sl subnet detail $PRIVSUBNETID --output JSON | jq .cidr)
  21. 사설 네트워크의 IP 주소 및 CIDR을 설정합니다.

    $ PRIV_IP_CIDR=$PRVN_PRIV_IP/$PRIVCIDR
  22. 사설 네트워크의 게이트웨이를 설정합니다.

    $ PRIV_GATEWAY=$(ibmcloud sl subnet detail $PRIVSUBNETID --output JSON | jq .gateway -r)
  23. baremetalprovisioning 네트워크에 대한 브릿지를 설정합니다.

    $ sudo nohup bash -c "
        nmcli --get-values UUID con show | xargs -n 1 nmcli con delete
        nmcli connection add ifname provisioning type bridge con-name provisioning
        nmcli con add type bridge-slave ifname eth1 master provisioning
        nmcli connection add ifname baremetal type bridge con-name baremetal
        nmcli con add type bridge-slave ifname eth2 master baremetal
        nmcli connection modify baremetal ipv4.addresses $PUB_IP_CIDR ipv4.method manual ipv4.gateway $PUB_GATEWAY
        nmcli connection modify provisioning ipv4.addresses 172.22.0.1/24,$PRIV_IP_CIDR ipv4.method manual
        nmcli connection modify provisioning +ipv4.routes \"10.0.0.0/8 $PRIV_GATEWAY\"
        nmcli con down baremetal
        nmcli con up baremetal
        nmcli con down provisioning
        nmcli con up provisioning
        init 6
    "
    참고

    eth1eth2의 경우 필요에 따라 적절한 인터페이스 이름을 대체합니다.

  24. 필요한 경우 provisioner 노드로 SSH를 실행합니다.

    # ssh kni@provisioner.<cluster-name>.<domain>
  25. 연결 브리지가 올바르게 생성되었는지 확인합니다.

    $ 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-eth1  76a8ed50-c7e5-4999-b4f6-6d9014dd0812  ethernet  eth1
    bridge-slave-eth2  f31c3353-54b7-48de-893a-02d2b34c4736  ethernet  eth2

  26. pull-secret.txt 파일을 만듭니다.

    $ vim pull-secret.txt

    웹 브라우저에서 Install on Bare Metal with user-provisioned infrastructure 로 이동합니다. 1단계에서 풀 시크릿 다운로드를 클릭합니다. pull-secret.txt 파일에 내용을 붙여 넣고 kni 사용자의 홈 디렉터리에 저장합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.