9.2. 단일 노드에 OpenShift 설치

9.2.1. Assisted Installer를 사용하여 검색 ISO 생성

단일 노드에 OpenShift Container Platform을 설치하려면 검색 ISO가 필요합니다. 이 ISO는 Assisted Installer(AI)에서 클러스터 이름, 기본 도메인, SSH(Secure Shell) 공개 키 및 풀 시크릿으로 생성할 수 있습니다.

프로세스

  1. 관리 노드에서 브라우저를 열고 Assisted Installer를 사용하여 OpenShift 설치로 이동합니다.
  2. Create Cluster (클러스터 만들기)를 클릭하여 새 클러스터를 생성합니다.
  3. 클러스터 이름 필드에 클러스터 이름을 입력합니다.
  4. Base 도메인 필드에 기본 도메인을 입력합니다. 예를 들면 다음과 같습니다.

    example.com

    모든 DNS 레코드는 이 기본 도메인의 하위 도메인이어야 하며 클러스터 이름을 포함해야 합니다. 클러스터 설치 후에는 기본 도메인을 변경할 수 없습니다. 예를 들면 다음과 같습니다.

    <cluster-name>.example.com
  5. Install single node OpenShift (SNO)(단일 노드 OpenShift(SNO) 설치를 선택합니다.
  6. 4.9 릴리스 노트를 읽어 보십시오. OpenShift Container Platform을 단일 노드에 설치하기 위한 몇 가지 제한 사항이 요약되어 있습니다.
  7. OpenShift Container Platform 버전을 선택합니다.
  8. 선택 사항: 풀 시크릿을 편집합니다.
  9. 다음을 클릭합니다.
  10. Generate Discovery ISO(검색 ISO 생성)를 클릭합니다.
  11. Full image file (전체 이미지 파일)을 선택하여 USB 드라이브 또는 PXE로 부팅합니다. Minimal image file (최소 이미지 파일)을 선택하여 가상 미디어로 부팅합니다.
  12. 관리 노드의 SSH 공개 키를 공개 키 필드에 추가합니다.
  13. Generate Discovery ISO(검색 ISO 생성)를 클릭합니다.
  14. 검색 ISO 다운로드.
  15. 가상 미디어로 설치할 검색 ISO URL을 기록합니다.

9.2.2. 수동으로 검색 ISO 생성

단일 노드에 OpenShift Container Platform을 설치하려면 다음 절차에 따라 생성할 수 있는 검색 ISO가 필요합니다.

프로세스

  1. OpenShift Container Platform 클라이언트(oc)를 다운로드하고 다음 명령을 입력하여 사용할 수 있도록 합니다.

    $ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/latest/openshift-client-linux.tar.gz > oc.tar.gz
    $ tar zxf oc.tar.gz
    $ chmod +x oc
  2. OpenShift Container Platform 버전을 설정합니다.

    $ OCP_VERSION=<ocp_version> 1
    1
    <ocp_version> 을 현재 버전으로 바꿉니다. 예를 들면 다음과 같습니다. latest-4.9
  3. OpenShift Container Platform 설치 프로그램을 다운로드하고 다음 명령을 입력하여 사용할 수 있도록 합니다.

    $ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-install-linux.tar.gz > openshift-install-linux.tar.gz
    $ tar zxvf openshift-install-linux.tar.gz
    $ chmod +x openshift-install
  4. RHCOS ISO URL을 검색합니다.

    $ ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep x86_64 | grep iso | cut -d\" -f4)
  5. RHCOS ISO를 다운로드합니다.

    $ curl -L $ISO_URL > rhcos-live.x86_64.iso
  6. install-config.yaml 파일을 준비합니다.

    apiVersion: v1
    baseDomain: <domain> 1
    compute:
    - name: worker
      replicas: 0 2
    controlPlane:
      name: master
      replicas: 1 3
    metadata:
      name: <name> 4
    networking:
      networkType: OVNKubernetes
      clusterNetwork:
      - cidr: <IP_address>/<prefix> 5
        hostPrefix: <prefix> 6
      serviceNetwork:
      - <IP_address>/<prefix> 7
    platform:
      none: {}
    bootstrapInPlace:
      installationDisk: <path_to_install_drive> 8
    pullSecret: '<pull_secret>' 9
    sshKey: |
      <ssh_key> 10
    1
    클러스터 도메인 이름을 추가합니다.
    2
    컴퓨팅 복제본을 0 으로 설정합니다. 이렇게 하면 컨트롤 플레인 노드를 예약할 수 있습니다.
    3
    controlPlane 복제본을 1 로 설정합니다. 이 설정은 이전 compute 설정과 함께 클러스터가 단일 노드에서 실행되도록 합니다.
    4
    메타데이터 이름을 클러스터 이름으로 설정합니다.
    5
    clusterNetwork CIDR을 설정합니다.
    6
    clusterNetwork 호스트 접두사를 설정합니다. 포드는 이 풀에서 IP 주소를 수신합니다.
    7
    serviceNetwork CIDR을 설정합니다. 서비스는 이 풀에서 IP 주소를 수신합니다.
    8
    설치 디스크 드라이브의 경로를 설정합니다.
    9
    Red Hat OpenShift Cluster Manager에서 풀 시크릿 을 복사합니다. 1단계에서 Download pull secret(pull secret 다운로드)을 클릭하고 이 구성 설정에 내용을 추가합니다.
    10
    설치 후 클러스터에 로그인할 수 있도록 관리 호스트에서 공용 SSH 키를 추가합니다.
  7. OpenShift Container Platform 자산을 생성합니다.

    $ mkdir ocp
    $ cp install-config.yaml ocp
    $ ./openshift-install --dir=ocp create single-node-ignition-config
  8. Ignition 데이터를 RHCOS ISO에 포함합니다.

    $ alias coreos-installer='podman run --privileged --pull always --rm \
            -v /dev:/dev -v /run/udev:/run/udev -v $PWD:/data \
            -w /data quay.io/coreos/coreos-installer:release'
    $ cp ocp/bootstrap-in-place-for-live-iso.ign iso.ign
    $ coreos-installer iso ignition embed -fi iso.ign rhcos-live.x86_64.iso

9.2.3. USB 미디어로 설치

USB 미디어로 설치하려면 관리 노드에서 검색 ISO를 사용하여 부팅 가능한 USB 드라이브를 생성해야 합니다. USB 드라이브로 서버를 부팅하면 단일 노드 설치를 위해 노드를 준비합니다.

프로세스

  1. 관리 노드에서 USB 드라이브를 USB 포트에 삽입합니다.
  2. 부팅 가능한 USB 드라이브를 생성합니다.

    # dd if=<path-to-iso> of=<path/to/usb> status=progress

    예를 들면 다음과 같습니다.

    # dd if=discovery_image_sno.iso of=/dev/sdb status=progress

    ISO를 USB 드라이브에 복사한 후에는 USB 드라이브를 사용하여 OpenShift Container Platform을 설치할 수 있습니다.

  3. 서버에서 USB 드라이브를 USB 포트에 삽입합니다.
  4. 서버를 재부팅하고 재부팅 시 BIOS 설정을 입력합니다.
  5. 부팅 드라이브 순서를 변경하여 USB 드라이브 부팅을 먼저 만듭니다.
  6. BIOS 설정을 저장하고 종료합니다. 서버가 검색 이미지로 부팅됩니다.

9.2.4. Assisted Installer를 사용하여 설치 모니터링

Assisted Installer를 사용하여 ISO를 생성한 경우 다음 절차를 사용하여 설치를 모니터링합니다.

프로세스

  1. 관리 호스트에서 브라우저로 돌아가서 페이지를 새로 고칩니다. 필요한 경우 Assisted Installer(설치 프로그램) 페이지를 사용하여 Install OpenShift 를 다시 로드하고 클러스터 이름을 선택합니다.
  2. 3단계, 네트워킹 에 도달할 때까지 Next (다음)를 클릭합니다.
  3. 사용 가능한 서브넷에서 서브넷을 선택합니다.
  4. 계속 선택한 동일한 호스트 검색 SSH 키를 사용합니다. 필요한 경우 SSH 공개 키를 변경할 수 있습니다.
  5. Next (다음)를 클릭하여 Review and Create(검토 및 생성) 단계를 진행합니다.
  6. 클러스터 설치를 클릭합니다.
  7. 설치 진행 상황을 모니터링합니다. 클러스터 이벤트를 확인합니다. 설치 프로세스가 서버 드라이브에 검색 이미지 쓰기를 완료하면 서버가 다시 시작됩니다. USB 드라이브를 제거하고 BIOS를 재설정하여 USB 드라이브가 아닌 서버의 로컬 미디어로 부팅합니다.

서버가 여러 번 다시 시작하여 컨트롤 플레인을 배포합니다.

9.2.5. 수동으로 설치 모니터링

ISO를 수동으로 만든 경우 이 절차를 사용하여 설치를 모니터링합니다.

프로세스

  1. 설치를 모니터링합니다.

    $ ./openshift-install --dir=ocp wait-for install-complete

    컨트롤 플레인을 배포하는 동안 서버가 여러 번 재시작됩니다.

  2. 선택 사항: 설치가 완료된 후 환경을 확인합니다.

    $ export KUBECONFIG=ocp/auth/kubeconfig
    $ oc get nodes
    $ oc get clusterversion