4.4. AWS에 빠르게 클러스터 설치

OpenShift Container Platform 4.9 버전에서는 기본 구성 옵션을 사용하는 클러스터를 AWS(Amazon Web Services)에 설치할 수 있습니다.

4.4.1. 사전 요구 사항

  • OpenShift Container Platform 설치 및 업데이트 프로세스에 대한 세부 사항을 검토합니다.
  • 클러스터 설치 방법 선택 및 사용자를 위한 준비에 대한 문서를 읽습니다.
  • 클러스터를 호스팅할 AWS 계정을 구성했습니다.

    중요

    컴퓨터에 AWS 프로필이 저장되어 있는 경우 다단계 인증 장치를 사용하는 동안 생성한 임시 세션 토큰을 해당 프로필이 사용해서는 안 됩니다. 클러스터는 클러스터의 전체 수명 동안 현재 AWS 자격 증명을 계속 사용하여 AWS 리소스를 생성하므로 키 기반의 장기 자격 증명을 사용해야 합니다. 적절한 키를 생성하려면 AWS 문서의 IAM 사용자의 액세스 키 관리를 참조하십시오. 설치 프로그램을 실행할 때 키를 제공할 수 있습니다.

  • 방화벽을 사용하는 경우 클러스터가 액세스해야 하는 사이트를 허용하도록 방화벽을 구성해야 합니다.
  • 사용자의 환경에서 클라우드 ID 및 액세스 관리(IAM) API에 액세스할 수 없거나 kube-system 네임스페이스에 관리자 수준의 인증 정보 시크릿을 저장하지 않으려면 IAM 인증 정보 수동 생성 및 유지 관리를 참조하십시오. 수동 모드는 클라우드 IAM API에 연결할 수 없는 환경에서도 사용할 수 있습니다.

4.4.2. OpenShift Container Platform 용 인터넷 액세스

OpenShift Container Platform 4.9에서 클러스터를 설치하려면 인터넷 액세스가 필요합니다.

다음의 경우 인터넷 액세스가 필요합니다.

  • OpenShift Cluster Manager 에 액세스하여 설치 프로그램을 다운로드하고 서브스크립션 관리를 수행합니다. 클러스터가 인터넷에 액세스할 수 있고 Telemetry 서비스를 비활성화하지 않은 경우, 클러스터에 자동으로 권한이 부여됩니다.
  • Quay.io에 액세스. 클러스터를 설치하는 데 필요한 패키지를 받을 수 있습니다.
  • 클러스터 업데이트를 수행하는 데 필요한 패키지를 받을 수 있습니다.
중요

클러스터가 직접 인터넷에 액세스할 수 없는 경우, 프로비저닝하는 일부 유형의 인프라에서 제한된 네트워크 설치를 수행할 수 있습니다. 이 프로세스 동안 필요한 콘텐츠를 다운로드하고 이를 사용하여 설치 패키지로 미러 레지스트리를 채웁니다. 설치 유형에 따라서는 클러스터를 설치하는 환경에 인터넷 액세스가 필요하지 않을 수도 있습니다. 클러스터를 업데이트하기 전에 미러 레지스트리의 내용을 업데이트합니다.

4.4.3. 클러스터 노드 SSH 액세스를 위한 키 쌍 생성

OpenShift Container Platform을 설치하는 동안 SSH 공개 키를 설치 프로그램에 지정할 수 있습니다. 키는 Ignition 구성 파일을 통해 RHCOS(Red Hat Enterprise Linux CoreOS) 노드에 전달되며 노드에 대한 SSH 액세스를 인증하는 데 사용됩니다. 키는 각 노드에서 core 사용자의 ~/.ssh/authorized_keys 목록에 추가되어 암호 없는 인증을 활성화합니다.

키가 노드에 전달되면 키 쌍을 사용하여 사용자 core로 RHCOS 노드에 SSH로 SSH 연결을 수행할 수 있습니다 . SSH를 통해 노드에 액세스하려면 로컬 사용자의 SSH에서 개인 키 ID를 관리해야 합니다.

설치 디버깅 또는 재해 복구를 수행하기 위해 클러스터 노드에 SSH를 실행하려면 설치 프로세스 중에 SSH 공용 키를 지정해야 합니다. ./openshift-install gather 명령에도 SSH 공개 키가 클러스터 노드에 있어야 합니다.

중요

재해 복구 및 디버깅이 필요한 프로덕션 환경에서는이 단계를 생략하지 마십시오.

참고

AWS 키 쌍과 같이 플랫폼 고유의 방식으로 구성된 키가 아닌 로컬 키를 사용해야 합니다.

프로세스

  1. 로컬 시스템에 클러스터 노드의 인증에 사용할 기존 SSH 키 쌍이 없는 경우 새로 생성합니다. 예를 들어 Linux 운영 체제를 사용하는 컴퓨터에서 다음 명령을 실행합니다.

    $ ssh-keygen -t ed25519 -N '' -f <path>/<file_name> 1
    1
    새 SSH 키의 경로 및 파일 이름(예: ~/.ssh/id_ed25519 )을 지정합니다. 기존 키 쌍이 있는 경우 공개 키가 '~/.ssh 디렉터리에 있는지 확인하십시오.
    참고

    x86_64 아키텍처에 FIPS 검증 / 진행중인 모듈 (Modules in Process) 암호화 라이브러리를 사용하는 OpenShift Container Platform 클러스터를 설치하려면 ed25519 알고리즘을 사용하는 키를 생성하지 마십시오. 대신 rsa 또는 ecdsa 알고리즘을 사용하는 키를 생성합니다.

  2. 공개 SSH 키를 확인합니다.

    $ cat <path>/<file_name>.pub

    예를 들어 다음을 실행하여 ~/.ssh/id_ed25519.pub 공개 키를 확인합니다.

    $ cat ~/.ssh/id_ed25519.pub
  3. 아직 추가되지 않은 경우 로컬 사용자의 SSH 에이전트에 SSH 개인 키 ID를 추가합니다. 키의 SSH 에이전트 관리는 클러스터 노드에 암호 없는 SSH 인증을 수행하거나 ./openshift-install gather 명령을 사용하려는 경우 필요합니다.

    참고

    일부 배포에서는 ~/.ssh/id_rsa~/.ssh/id_dsa와 같은 기본 SSH 개인 키 ID가 자동으로 관리됩니다.

    1. ssh-agent 프로세스가 로컬 사용자에 대해 실행되지 않은 경우 백그라운드 작업으로 시작합니다.

      $ eval "$(ssh-agent -s)"

      출력 예

      Agent pid 31874

      참고

      클러스터가 FIPS 모드인 경우 FIPS 호환 알고리즘만 사용하여 SSH 키를 생성합니다. 키는 RSA 또는 ECDSA여야 합니다.

  4. ssh-agent에 SSH 개인 키를 추가합니다.

    $ ssh-add <path>/<file_name> 1
    1
    SSH 개인 키의 경로 및 파일 이름을 지정합니다(예: ~/.ssh/id_ed25519).

    출력 예

    Identity added: /home/<you>/<path>/<file_name> (<computer_name>)

다음 단계

  • OpenShift Container Platform을 설치할 때 SSH 공개 키를 설치 프로그램에 지정합니다.

4.4.4. 설치 프로그램 받기

OpenShift Container Platform을 설치하기 전에 로컬 컴퓨터에 설치 파일을 다운로드합니다.

사전 요구 사항

  • 500MB의 로컬 디스크 공간이 있는 Linux 또는 macOS를 실행하는 컴퓨터가 있습니다.

프로세스

  1. OpenShift Cluster Manager 사이트의 인프라 공급자 페이지에 액세스합니다. Red Hat 계정이 있으면 사용자 자격 증명으로 로그인합니다. 계정이 없으면 계정을 만드십시오.
  2. 인프라 공급자를 선택합니다.
  3. 설치 유형 페이지로 이동한 다음, 운영 체제에 맞는 설치 프로그램을 다운로드하여 설치 구성 파일을 저장할 디렉터리에 파일을 저장합니다.

    중요

    설치 프로그램은 클러스터를 설치하는 데 사용하는 컴퓨터에 여러 파일을 만듭니다. 클러스터 설치를 마친 후 설치 프로그램과 설치 프로그램으로 생성되는 파일을 보관해야 합니다. 클러스터를 삭제하려면 두 파일이 모두 필요합니다.

    중요

    클러스터 설치에 실패하거나 설치 프로그램으로 만든 파일을 삭제해도 클러스터는 제거되지 않습니다. 클러스터를 제거하려면 해당 클라우드 공급자에 적용되는 OpenShift Container Platform 설치 제거 절차를 완료해야 합니다.

  4. 설치 프로그램 파일의 압축을 풉니다. 예를 들어 Linux 운영 체제를 사용하는 컴퓨터에서 다음 명령을 실행합니다.

    $ tar -xvf openshift-install-linux.tar.gz
  5. Red Hat OpenShift Cluster Manager에서 설치 풀 시크릿 을 다운로드합니다. 이 풀 시크릿을 사용하면 OpenShift Container Platform 구성 요소에 대한 컨테이너 이미지를 제공하는 Quay.io를 포함하여 인증 기관에서 제공하는 서비스로 인증할 수 있습니다.

4.4.5. 클러스터 배포

호환되는 클라우드 플랫폼에 OpenShift Container Platform을 설치할 수 있습니다.

중요

최초 설치 과정에서 설치 프로그램의 create cluster 명령을 한 번만 실행할 수 있습니다.

사전 요구 사항

  • 클러스터를 호스팅하는 클라우드 플랫폼으로 계정을 구성합니다.
  • OpenShift Container Platform 설치 프로그램과 클러스터의 풀 시크릿을 받습니다.

프로세스

  1. 설치 프로그램이 포함된 디렉터리로 변경하고 클러스터 배포를 초기화합니다.

    $ ./openshift-install create cluster --dir <installation_directory> \ 1
        --log-level=info 2
    1
    <installation_directory>는 설치 프로그램이 생성하는 파일을 저장할 디렉터리 이름을 지정합니다.
    2
    다른 설치 세부 사항을 보려면 info 대신 warn, debug 또는 error를 지정합니다.
    중요

    비어 있는 디렉터리를 지정합니다. 부트스트랩 X.509 인증서와 같은 일부 설치 자산은 단기간에 만료되므로 설치 디렉터리를 재사용해서는 안 됩니다. 다른 클러스터 설치의 개별 파일을 재사용하려면 해당 파일을 사용자 디렉터리에 복사하면 됩니다. 그러나 설치 자산의 파일 이름은 릴리스간에 변경될 수 있습니다. 따라서 이전 OpenShift Container Platform 버전에서 설치 파일을 복사할 때는 주의하십시오.

    화면에 나타나는 지시에 따라 필요한 값을 입력합니다.

    1. 선택사항: 클러스터 시스템에 액세스하는 데 사용할 SSH 키를 선택합니다.

      참고

      설치 디버깅 또는 재해 복구를 수행하려는 프로덕션 OpenShift Container Platform 클러스터의 경우 ssh-agent 프로세스가 사용하는 SSH 키를 지정합니다.

    2. 대상 플랫폼으로 aws를 선택합니다.
    3. 컴퓨터에 AWS(Amazon Web Services) 프로필이 저장되어 있지 않은 경우 설치 프로그램을 실행하도록 구성한 사용자의 AWS 액세스 키 ID와 시크릿 액세스 키를 입력합니다.

      참고

      AWS 액세스 키 ID와 시크릿 액세스 키는 설치 호스트에 있는 현재 사용자의 홈 디렉터리에서 ~/.aws/credentials에 저장됩니다. 내보낸 프로필의 인증 정보가 파일에 없으면 설치 프로그램에서 인증 정보에 대한 메시지를 표시합니다. 설치 프로그램에 사용자가 제공하는 인증 정보는 파일에 저장됩니다.

    4. 클러스터를 배포할 AWS 리전을 선택합니다.
    5. 클러스터에 대해 구성한 Route53 서비스의 기본 도메인을 선택합니다.
    6. 클러스터를 설명할 수 있는 이름을 입력합니다.
    7. Red Hat OpenShift Cluster Manager에서 풀 시크릿 을 붙여넣습니다.
    참고

    호스트에 구성된 클라우드 공급자 계정에 클러스터를 배포하기에 충분한 권한이 없는 경우, 설치 프로세스가 중단되고 누락된 권한을 알리는 메시지가 표시됩니다.

    클러스터 배포가 완료되면 웹 콘솔로 연결되는 링크와 kubeadmin 사용자의 인증 정보가 포함된 클러스터 액세스 지침이 사용자 터미널에 표시됩니다.

    출력 예

    ...
    INFO Install complete!
    INFO To access the cluster as the system:admin user when using 'oc', run 'export KUBECONFIG=/home/myuser/install_dir/auth/kubeconfig'
    INFO Access the OpenShift web-console here: https://console-openshift-console.apps.mycluster.example.com
    INFO Login to the console with user: "kubeadmin", and password: "4vYBz-Ee6gm-ymBZj-Wt5AL"
    INFO Time elapsed: 36m22s

    참고

    설치에 성공하면 클러스터 액세스 및 인증 정보도 <installation_directory>/.openshift_install.log로 출력됩니다.

    중요
    • 설치 프로그램에서 생성하는 Ignition 구성 파일에 24시간 후에 만료되는 인증서가 포함되어 있습니다. 이 인증서는 그 후에 갱신됩니다. 인증서를 갱신하기 전에 클러스터가 종료되고 24시간이 지난 후에 클러스터가 다시 시작되면 클러스터는 만료된 인증서를 자동으로 복구합니다. 예외적으로 kubelet 인증서를 복구하려면 대기 중인 node-bootstrapper 인증서 서명 요청(CSR)을 수동으로 승인해야 합니다. 자세한 내용은 Recovering from expired control plane certificates 문서를 참조하십시오.
    • 클러스터를 설치한 후 24시간에서 22시간까지의 인증서가 교체되기 때문에 생성된 후 12시간 이내에 Ignition 구성 파일을 사용하는 것이 좋습니다. 12시간 이내에 Ignition 구성 파일을 사용하면 설치 중에 인증서 업데이트가 실행되는 경우 설치 실패를 방지할 수 있습니다.
    중요

    설치 프로그램에서 생성되는 파일이나 설치 프로그램을 삭제해서는 안 됩니다. 클러스터를 삭제하려면 두 가지가 모두 필요합니다.

  2. 선택사항: 클러스터를 설치하는 데 사용한 IAM 계정에서 AdministratorAccess 정책을 제거하거나 비활성화합니다.

    참고

    AdministratorAccess 정책에서 제공하는 승격된 권한은 설치 중에만 필요합니다.

추가 리소스

4.4.6. 바이너리를 다운로드하여 OpenShift CLI 설치

명령줄 인터페이스를 사용하여 OpenShift Container Platform과 상호 작용하기 위해 OpenShift CLI(oc)를 설치할 수 있습니다. Linux, Windows 또는 macOS에 oc를 설치할 수 있습니다.

중요

이전 버전의 oc를 설치한 경우 OpenShift Container Platform 4.9의 모든 명령을 완료하는 데 사용할 수 없습니다. 새 버전의 oc를 다운로드하여 설치합니다.

Linux에서 OpenShift CLI 설치

다음 절차를 사용하여 Linux에서 OpenShift CLI(oc) 바이너리를 설치할 수 있습니다.

프로세스

  1. Red Hat 고객 포털에서 OpenShift Container Platform 다운로드 페이지로 이동합니다.
  2. 버전 드롭다운 메뉴에서 적절한 버전을 선택합니다.
  3. OpenShift v4.9 Linux Client 항목 옆에 있는 지금 다운로드를 클릭하고 파일을 저장합니다.
  4. 아카이브의 압축을 풉니다.

    $ tar xvf <file>
  5. oc 바이너리를 PATH에 있는 디렉터리에 배치합니다.

    PATH를 확인하려면 다음 명령을 실행합니다.

    $ echo $PATH

OpenShift CLI를 설치한 후 oc 명령을 사용할 수 있습니다.

$ oc <command>
Windows에서 OpenSfhit CLI 설치

다음 절차에 따라 Windows에 OpenShift CLI(oc) 바이너리를 설치할 수 있습니다.

프로세스

  1. Red Hat 고객 포털에서 OpenShift Container Platform 다운로드 페이지로 이동합니다.
  2. 버전 드롭다운 메뉴에서 적절한 버전을 선택합니다.
  3. OpenShift v4.9 Windows Client 항목 옆에 있는 지금 다운로드를 클릭하고 파일을 저장합니다.
  4. ZIP 프로그램으로 아카이브의 압축을 풉니다.
  5. oc 바이너리를 PATH에 있는 디렉터리로 이동합니다.

    PATH를 확인하려면 명령 프롬프트를 열고 다음 명령을 실행합니다.

    C:\> path

OpenShift CLI를 설치한 후 oc 명령을 사용할 수 있습니다.

C:\> oc <command>
macOS에 OpenShift CLI 설치

다음 절차에 따라 macOS에서 OpenShift CLI(oc) 바이너리를 설치할 수 있습니다.

프로세스

  1. Red Hat 고객 포털에서 OpenShift Container Platform 다운로드 페이지로 이동합니다.
  2. 버전 드롭다운 메뉴에서 적절한 버전을 선택합니다.
  3. OpenShift v4.9 MacOSX Client 항목 옆에 있는 지금 다운로드를 클릭하고 파일을 저장합니다.
  4. 아카이브의 압축을 해제하고 압축을 풉니다.
  5. oc 바이너리 PATH의 디렉터리로 이동합니다.

    PATH를 확인하려면 터미널을 열고 다음 명령을 실행합니다.

    $ echo $PATH

OpenShift CLI를 설치한 후 oc 명령을 사용할 수 있습니다.

$ oc <command>

4.4.7. CLI를 사용하여 클러스터에 로그인

클러스터 kubeconfig 파일을 내보내서 기본 시스템 사용자로 클러스터에 로그인할 수 있습니다. kubeconfig 파일에는 CLI에서 올바른 클러스터 및 API 서버에 클라이언트를 연결하는 데 사용하는 클러스터에 대한 정보가 포함되어 있습니다. 이 파일은 클러스터별로 고유하며 OpenShift Container Platform 설치 과정에서 생성됩니다.

사전 요구 사항

  • OpenShift Container Platform 클러스터를 배포했습니다.
  • oc CLI를 설치했습니다.

프로세스

  1. kubeadmin 인증 정보를 내보냅니다.

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig 1
    1
    <installation_directory>는 설치 파일을 저장한 디렉터리의 경로를 지정합니다.
  2. 내보낸 구성을 사용하여 oc 명령을 성공적으로 실행할 수 있는지 확인합니다.

    $ oc whoami

    출력 예

    system:admin

4.4.8. 웹 콘솔을 사용하여 클러스터에 로그인

kubeadmin 사용자는 OpenShift Container Platform 설치 후 기본적으로 존재합니다. OpenShift Container Platform 웹 콘솔을 사용하여 kubeadmin 사용자로 클러스터에 로그인할 수 있습니다.

사전 요구 사항

  • 설치 호스트에 대한 액세스 권한이 있어야 합니다.
  • 클러스터 설치를 완료했으며 모든 클러스터 Operator를 사용할 수 있습니다.

프로세스

  1. 설치 호스트의 kubeadmin-password 파일에서 kubeadmin 사용자의 암호를 가져옵니다.

    $ cat <installation_directory>/auth/kubeadmin-password
    참고

    대안으로 설치 호스트의 <installation_directory>/.openshift_install.log 로그 파일에서 kubeadmin 암호를 가져올 수 있습니다.

  2. OpenShift Container Platform 웹 콘솔 경로를 나열합니다.

    $ oc get routes -n openshift-console | grep 'console-openshift'
    참고

    대안으로 설치 호스트의 <installation_directory>/.openshift_install.log 로그 파일에서 OpenShift Container Platform 경로를 가져올 수 있습니다.

    출력 예

    console     console-openshift-console.apps.<cluster_name>.<base_domain>            console     https   reencrypt/Redirect   None

  3. 웹 브라우저의 이전 명령 출력에 자세히 설명된 경로로 이동하고 kubeadmin 사용자로 로그인합니다.

추가 리소스

  • OpenShift Container Platform 웹 콘솔 액세스 및 이해에 대한 자세한 내용은 웹 콘솔에 액세스를 참조하십시오.

4.4.9. OpenShift Container Platform의 Telemetry 액세스

OpenShift Container Platform 4.9에서는 클러스터 상태 및 업데이트 진행에 대한 메트릭을 제공하기 위해 기본적으로 실행되는 Telemetry 서비스에 인터넷 액세스가 필요합니다. 클러스터가 인터넷에 연결되어 있으면 Telemetry가 자동으로 실행되고 OpenShift Cluster Manager 에 클러스터가 자동으로 등록됩니다.

OpenShift Cluster Manager 인벤토리가 올바르거나 OpenShift Cluster Manager를 사용하여 자동으로 또는 OpenShift Cluster Manager를 사용하여 수동으로 유지 관리되는지 확인한 후 subscription watch를 사용하여 계정 또는 다중 클러스터 수준에서 OpenShift Container Platform 서브스크립션을 추적합니다.

추가 리소스

4.4.10. 다음 단계