Oracle Edge Cloud에 설치


OpenShift Container Platform 4.20

Oracle Cloud Edge에 OpenShift Container Platform 설치

Red Hat OpenShift Documentation Team

초록

이 문서에서는 Oracle Edge Cloud Infrastructure에 OpenShift Container Platform을 설치하는 방법을 설명합니다.

1장. 지원 설치 관리자를 사용하여 Oracle Edge Cloud에 클러스터 설치

Oracle® Edge Cloud를 사용하면 데이터센터의 고성능 클라우드 인프라에 Oracle® Cloud Infrastructure(OCI) 서비스를 사용하여 애플리케이션 및 미들웨어를 실행할 수 있습니다.

다음 절차에서는 Oracle® Compute Cloud@Customer의 클러스터 설치를 예로 설명합니다.

1.1. 지원되는 Oracle Edge Cloud 인프라

다음 표에서는 각 Oracle® Edge Cloud 인프라의 지원 상태를 설명합니다.

Expand
표 1.1. Oracle Edge Cloud 인프라 지원 상태
인프라 유형지원 상태

프라이빗 클라우드 어플라이언스

정식 출시일 (GA)

Oracle Compute Cloud@Customer

정식 출시일 (GA)

roving Edge

기술 프리뷰

1.2. 개요

지원 설치 관리자를 사용하여 Oracle Edge Cloud에 OpenShift Container Platform을 설치할 수 있습니다.

다른 설치 방법은 "인터 기반 설치 관리자를 사용하여 Oracle® Edge Cloud에 클러스터 설치"를 참조하십시오.

사전 설치 고려 사항

설치 프로세스

설치 프로세스는 OpenShift Container Platform 클러스터의 지정된 항목 내에 bastion 호스트를 빌드합니다. bastion 호스트는 두 개의 Terraform 스크립트를 실행하는 데 사용됩니다.

  • 첫 번째 스크립트는 Oracle® Edge Cloud 시스템의 OCI Home 리전에 IAM 리소스를 빌드합니다(동적 그룹 2개 및 정책 1개).
  • 두 번째 스크립트는 OpenShift Container Platform VCN, 퍼블릭 및 프라이빗 서브넷, 로드 밸런서, 인터넷 GW, NAT GW, DNS 서버를 포함하여 OpenShift Container Platform 클러스터를 지원하기 위해 Oracle® Edge Cloud 시스템에 인프라 리소스를 빌드합니다. 이 스크립트에는 클러스터를 구성하는 컨트롤 플레인 노드 및 컴퓨팅 노드를 활성화하는 데 필요한 모든 리소스가 포함됩니다.

bastion 호스트는 지정된 OpenShift Container Platform Compartment에 설치되고 Oracle® Edge Cloud DRG Subnet 또는 Internet GW 서브넷을 통해 통신하도록 구성됩니다.

설치 프로세스에서는 클러스터를 구성하는 외부 및 내부 로드 밸런서와 함께 3개의 컨트롤 플레인(마스터) 노드와 컴퓨팅(작업자) 노드를 프로비저닝합니다. 이는 Oracle Edge Cloud의 표준 구현입니다.

주요 단계

절차의 주요 단계는 다음과 같습니다.

  1. Oracle® Edge Cloud bastion 서버 준비.
  2. Home 리전을 통해 Terraform 스크립트 실행.
  3. Oracle Edge Cloud용 OpenShift Container Platform 이미지 준비.
  4. Oracle® Edge Cloud 리전을 통해 Terraform 스크립트 실행.
  5. 지원 설치 프로그램 웹 콘솔을 사용하여 클러스터 설치.

1.3. OCI bastion 서버 준비

bastion 호스트를 구현하면 Oracle Cloud Infrastructure (OCI) 리소스에 대한 액세스를 안전하고 효율적으로 관리하여 개인 인스턴스가 안전하고 제어되는 진입점을 통해서만 보호되고 액세스할 수 있도록 할 수 있습니다.

프로세스

  1. bastion 서버를 설치합니다. 자세한 내용은 Oracle 문서의 "사용 설치" 섹션을 참조하십시오.
  2. Terraform 스크립트를 실행하는 데 사용되는 Terraform 애플리케이션을 설치합니다. 자세한 내용은 Oracle 문서의 "Terraform Installation" 섹션을 참조하십시오.
  3. OCI CLI(명령줄 인터페이스)를 설치하고 구성합니다. 자세한 내용은 Oracle 문서의 " OCI CLI 설치 및 구성" 섹션을 참조하십시오.

1.4. Home 리전을 통해 Terraform 스크립트 실행

Terraform 스크립트 createInfraResources.tfterraform.tfvars 를 bastion 서버에 복사합니다. 그런 다음 createInfraResources.tf 스크립트를 실행하여 Oracle Cloud Infrastructure (OCI) 홈 리전에 Dynamic Group Identity 리소스를 만듭니다. 이러한 리소스에는 동적 그룹, 정책 및 태그가 포함됩니다.

사전 요구 사항

  • 동적 그룹 및 정책을 생성할 수 있는 테넌시 권한이 있습니다. 그렇지 않은 경우 이 절차 중에 수동으로 프로비저닝할 수 있습니다.

프로세스

  1. SSH를 통해 bastion 서버에 연결합니다.
  2. OpenShift\createResourceOnhomeRegion 폴더 를 만듭니다.
  3. C3_PCA GitHub 리포지토리에서 createInfraResources.tfterraform.tfvars 파일을 createResourceOnHomeRegion 폴더에 복사합니다.
  4. 소스 환경에 액세스할 수 있고 C3 인증서를 내보내야 합니다.
  5. createInfraResources.tf Terraform 스크립트를 실행합니다.

전체 절차는 Oracle 문서의 "Terraform Script Execution Part-1 ( Home Region을 통해 스크립트 실행)" 섹션을 참조하십시오.

1.5. OCI 이미지 준비

Red Hat 포털의 지원 설치 프로그램에서 OpenShift Container Platform ISO 이미지를 생성합니다. 그런 다음 이미지를 Oracle Edge Cloud 호환 이미지로 변환하여 Oracle Edge Cloud 환경의 사용자 지정 이미지 페이지에 업로드합니다.

bastion 서버 또는 Oracle Solution Center와 같은 환경 내에서 노트북에 이미지를 생성, 변환 및 업로드할 수 있습니다.

1.5.1. 지원 설치 프로그램에서 이미지 생성

클러스터를 생성하고 검색 ISO 이미지를 다운로드합니다.

프로세스

  1. 인증 정보를 사용하여 지원 설치 프로그램 웹 콘솔에 로그인합니다.
  2. Red Hat OpenShift 타일에서 OpenShift 를 선택합니다.
  3. Red Hat OpenShift Container Platform 타일에서 클러스터 생성 을 선택합니다.
  4. Cluster Type 페이지에서 Cloud 탭의 끝으로 스크롤하고 Oracle Cloud Infrastructure(가상 시스템) 를 선택합니다.
  5. Create an OpenShift Cluster 페이지에서 Interactive 타일을 선택합니다.
  6. 클러스터 세부 정보 페이지에서 다음 필드를 완료합니다.

    Expand
    필드작업 필요

    클러스터 이름

    OpenShift Container Platform 클러스터의 이름을 지정합니다. 이 이름은 Terraform 스크립트를 통해 리소스를 생성하는 데 사용한 이름과 같습니다. 이름은 1~54자 사이여야 합니다. 소문자 영숫자 또는 하이픈(-)을 사용할 수 있지만 소문자 또는 숫자로 시작하고 끝나야 합니다.

    기본 도메인

    클러스터의 기본 도메인을 지정합니다. 이는 Oracle® Edge Cloud에서 실행되는 Terraform 스크립트의 zone_dns 변수에 사용되는 값입니다. 값을 기록해 둡니다.

    OpenShift 버전

    OpenShift 4.16.20 을 선택합니다. 즉시 표시되지 않는 경우 드롭다운 메뉴의 끝으로 스크롤하고 사용 가능한 모든 버전 표시를 선택하고 검색 상자에 버전을 입력합니다.

    외부 파트너 플랫폼과 통합

    Oracle Cloud Infrastructure 를 선택합니다.

    이 값을 지정하면 기본적으로 사용자 정의 매니페스트 포함 확인란이 선택되고 사용자 정의 매니페스트 페이지가 마법사에 추가됩니다.

  7. 나머지 필드의 기본 설정을 그대로 두고 Next 를 클릭합니다.
  8. Operator 페이지에서 다음을 클릭합니다.
  9. Host Discovery 페이지에서 호스트 추가 를 클릭하고 다음 단계를 완료합니다.

    참고

    최소 ISO 이미지는 Oracle Edge Cloud의 필수 프로비저닝 유형 이며 변경할 수 없습니다.

    1. SSH 공개 키 필드에서 다음 명령의 출력을 복사하여 SSH 공개 키를 추가합니다.

      $ cat ~/.ssh/id_rsa.put
      Copy to Clipboard Toggle word wrap

      SSH 공개 키는 모든 OpenShift Container Platform 컨트롤 플레인 및 컴퓨팅 노드에 설치됩니다.

    2. 프록시 설정 표시 확인란을 클릭합니다.
    3. 이전에 구성한 bastion 서버의 /etc/environment 파일에서 프록시 변수를 추가합니다.

      http_proxy=http://www-proxy.<your_domain>.com:80
      https_proxy=http://www-proxy.<your_domain>.com:80
      no_proxy=localhost,127.0.0.1,1,2,3,4,5,6,7,8,9,0,.<your_domain>.com
      #(ie.oracle.com,.oraclecorp.com)
      Copy to Clipboard Toggle word wrap
    4. Discovery ISO 생성 을 클릭하여 검색 ISO 이미지 파일을 생성합니다.
  10. Discovery ISO 다운로드를 클릭하여 파일을 로컬 시스템에 저장합니다. ISO 파일을 다운로드한 후 필요에 따라 이름을 바꿀 수 있습니다(예: discovery_image_<your_cluster_name>.iso ).

1.5.2. 이미지를 Oracle Edge Cloud에 변환 및 업로드

ISO 이미지를 OCI(Oracle Cloud Infrastructure) 이미지로 변환하고 OCI 홈 리전 오브젝트 저장소의 Oracle Edge Cloud 시스템에 업로드합니다.

프로세스

  1. 이미지를 ISO에서 OCI로 변환합니다.
  2. OCI 이미지를 OCI 버킷에 업로드하고 PAR(Pre-Authenticated Request) URL을 생성합니다.
  3. OCI 이미지를 Oracle® Edge Cloud 포털로 가져옵니다.
  4. 다음 절차에서 사용할 이미지의 OCID(Oracle Cloud Identifier)를 복사합니다.

전체 절차는 Oracle 문서의 "OpenShift 이미지 준비" 섹션에서 6 - 8단계를 참조하십시오.

1.6. C3 리전을 통해 Terraform 스크립트 실행

terraform.tfvars Terraform 스크립트를 실행하여 Oracle® Edge Cloud에서 모든 인프라 리소스를 생성합니다. 이러한 리소스에는 OpenShift Container Platform VCN, 퍼블릭 및 프라이빗 서브넷, 로드 밸런서, 인터넷 GW, NAT GW 및 DNS 서버가 포함됩니다.

이 절차에서는 컨트롤 플레인(마스터)과 컴퓨팅(작업자) 노드 3개로 구성된 클러스터를 배포합니다. 배포 후 노드의 이름을 바꾸고 재부팅해야 합니다. 이 프로세스에서는 노드를 일시적으로 복제하므로 다음 절차에서 수동 정리가 필요합니다.

프로세스

  1. SSH를 통해 bastion 서버에 연결합니다.
  2. C3 인증서 위치를 설정하고 인증서를 내보냅니다.
  3. terraform.tfvars 스크립트를 실행하여 컨트롤 플레인 노드 3개와 컴퓨팅 노드 3개를 생성합니다.
  4. 컨트롤 플레인 및 컴퓨팅 노드의 레이블을 업데이트합니다.
  5. Oracle® Edge Cloud 포털에서 인스턴스를 하나씩 중지하고 다시 시작합니다.

전체 절차는 Oracle 문서의 "Terraform Script Execution - Part 2" 섹션을 참조하십시오.

1.7. 지원 설치 프로그램 웹 콘솔을 사용하여 설치 완료

인프라를 구성한 후 이제 인스턴스가 실행되고 Red Hat에 등록할 준비가 되었습니다.

1.7.1. 노드 역할 할당

Terraform 스크립트가 성공적으로 완료되면 클러스터에 대해 호스트 10개를 나열합니다. 컨트롤 플레인 호스트 3개와 컴퓨팅 호스트 3개가 "연결 해제" 상태가 됩니다. 컨트롤 플레인 호스트 3개와 컴퓨팅 호스트 3개가 "불충분" 상태입니다.

연결이 끊긴 호스트를 삭제하고 나머지 호스트에 역할을 할당합니다.

프로세스

  1. 지원 설치 관리자 웹 콘솔에서 클러스터를 선택하고 호스트 검색 페이지로 이동합니다.
  2. 각 호스트의 옵션 버튼을 클릭하고 호스트 제거 를 선택하여 "연결 해제" 상태의 6개의 호스트를 삭제합니다. 나머지 호스트의 상태는 "Insufficient"에서 "Ready"로 변경됩니다. 이 프로세스는 최대 3분이 걸릴 수 있습니다.
  3. 역할 열에서 부팅 크기가 1.10TB인 3개의 노드에 컨트롤 플레인 역할을 할당합니다. 부팅 크기가 100GB인 3개의 노드에 작업자 역할을 할당합니다.
  4. 호스트의 옵션 버튼을 클릭하고 호스트 이름 변경을 선택하여 63자보다 짧은 이름으로 모든 호스트의 이름을 변경합니다. 그렇지 않으면 클러스터 설치에 실패합니다.
  5. 다음을 클릭합니다.
  6. 스토리지 페이지에서 다음을 클릭합니다.

1.7.2. 네트워킹 구성

네트워킹 페이지에서 Some validations 실패 상태를 표시하는 호스트에 대한 NTP 소스를 추가합니다.

프로세스

  1. Host inventory 표에서 이 상태를 표시하는 각 호스트에 대해 Some validations failed 링크를 클릭합니다.
  2. NTP 소스 추가 를 클릭한 다음 노드 중 하나에 대해 IP 주소 169.254.169.254 를 추가합니다.
  3. 일부 검증 실패 지표가 모두 사라질 때까지 2 - 3 분 정도 기다립니다.
  4. 다음을 선택합니다.

1.7.3. 사용자 정의 매니페스트 추가

Oracle에서 제공하는 네 가지 필수 사용자 정의 매니페스트를 생성, 수정 및 업로드합니다.

  • C3/custom_manifests_C3/manifests 폴더에서 다음 매니페스트는 필수입니다.

    • oci-ccm.yml
    • oci-csi.yml
  • C3/custom_manifests_C3/openshift 폴더에서 다음 매니페스트는 필수입니다.

    • machineconfig-ccm.yml
    • machineconfig-csi.yml

사전 요구 사항

프로세스

  1. 사용자 정의 매니페스트 페이지로 이동합니다.
  2. oci-ccm.ymloci-csi.yml 매니페스트 파일을 업로드하고 저장합니다.

    1. 폴더 필드에서 매니페스트 를 선택합니다.
    2. 파일 이름 필드에 oci-ccm.yml 을 입력합니다.
    3. 콘텐츠 섹션에서 찾아보기 를 클릭합니다.
    4. C3/custom_ manifest_C3/manifests 폴더에서 oci-ccm.yml 파일을 선택합니다.
    5. 다른 매니페스트 추가 를 클릭하고 oci-csi.yml 파일에 대해 이전 하위 단계를 반복합니다.
  3. machineconfig-ccm.ymlmachineconfig-csi.yml 매니페스트 파일을 업로드하고 저장합니다.

    1. 다른 매니페스트 추가를 클릭합니다.
    2. 폴더 필드에서 openshift 를 선택합니다.
    3. 파일 이름 필드에 machineconfig-ccm.yml 을 입력합니다.
    4. 콘텐츠 섹션에서 찾아보기 를 클릭합니다.
    5. C3/custom_ manifest_C3/openshift 폴더에서 machineconfig-ccm.yml 파일을 선택합니다.
    6. 다른 매니페스트 추가 를 클릭하고 machineconfig-csi.yml 파일에 대해 이전 하위 단계를 반복합니다.
  4. 다음을 클릭하여 사용자 정의 매니페스트를 저장합니다.
  5. 검토 및 생성 페이지에서 클러스터 설치를 클릭하여 OpenShift Container Platform 클러스터를 생성합니다. 이 프로세스는 약 30분 정도 소요됩니다.

1.8. Oracle Edge Cloud 웹 콘솔에서 OpenShift Container Platform 열기

Oracle Edge Cloud에서 OpenShift Container Platform 콘솔에 액세스하는 방법은 Oracle 문서의 "RH Assisted Installer UI를 사용하여 클러스터 설치" 섹션의 15 - 17 단계를 참조하십시오.

에이전트 기반 설치 관리자를 사용하여 Oracle® Edge Cloud에 클러스터를 설치하여 Oracle® Edge Cloud(OCI) 서비스를 계속 사용하여 온프레미스 인프라에서 클러스터 워크로드를 실행할 수 있습니다.

다음 절차에서는 Oracle® Compute Cloud@Customer의 클러스터 설치를 예로 설명합니다.

2.1. 지원되는 Oracle Edge Cloud 인프라

다음 표에서는 각 Oracle® Edge Cloud 인프라의 지원 상태를 설명합니다.

Expand
표 2.1. Oracle Edge Cloud 인프라 지원 상태
인프라 유형지원 상태

프라이빗 클라우드 어플라이언스

정식 출시일 (GA)

Oracle Compute Cloud@Customer

정식 출시일 (GA)

roving Edge

기술 프리뷰

2.2. 설치 프로세스 워크플로

다음 워크플로는 에이전트 기반 설치 관리자를 사용하여 Oracle Edge Cloud에 OpenShift Container Platform 클러스터를 설치하는 프로세스에 대한 고급 개요를 설명합니다.

  1. OCI(Oracle Cloud Infrastructure) 리소스 및 서비스(Oracle)를 생성합니다.
  2. 에이전트 기반 설치 관리자(Red Hat)에 대한 구성 파일을 준비합니다.
  3. 에이전트 ISO 이미지(Red Hat)를 생성합니다.
  4. ISO 이미지를 OCI 이미지로 변환하고 OCI 홈 리전 Bucket에 업로드한 다음 업로드된 이미지를 Oracle Edge Cloud 시스템(Oracle)으로 가져옵니다.
  5. 연결이 끊긴 환경: Oracle Edge Cloud 인스턴스(Red Hat)에서 액세스할 수 있는 웹 서버를 준비합니다.
  6. 연결이 끊긴 환경: rootfs 이미지를 웹 서버(Red Hat)에 업로드합니다.
  7. Red Hat(OpenShift Container Platform)에 대한 방화벽을 구성합니다.
  8. 컨트롤 플레인 노드를 생성하고 로드 밸런서(Oracle)를 구성합니다.
  9. 컴퓨팅 노드를 생성하고 로드 밸런서(Oracle)를 구성합니다.
  10. 클러스터가 Oracle Edge Cloud (Oracle)에서 실행되는지 확인합니다.

2.3. OCI 인프라 리소스 및 서비스 생성

VM(가상 머신) 모양에 Oracle Edge Cloud 환경을 생성해야 합니다. 이 환경을 생성하면 OpenShift Container Platform을 설치하고 광범위한 클라우드 옵션과 강력한 보안 정책을 지원하는 인프라에 클러스터를 배포할 수 있습니다. OCI(Oracle Cloud Infrastructure) 구성 요소에 대한 사전 지식이 있으면 OCI 리소스의 개념과 조직의 요구 사항에 맞게 구성하는 방법을 이해하는 데 도움이 될 수 있습니다.

중요

OpenShift Container Platform과의 호환성을 유지하려면 A 를 각 DNS 레코드 및 이름 레코드의 레코드 유형으로 다음과 같이 설정해야 합니다.

  • API 로드 밸런서의 apiVIP 매개변수를 대상으로 하는 api.<cluster_name>.<base_domain>
  • API 로드 밸런서의 apiVIP 매개변수를 대상으로 하는 api-int.<cluster_name>.<base_domain>
  • *.apps.<cluster_name>.<base_domain > . Ingress 로드 밸런서의 ingressVIP 매개변수를 대상으로 합니다.

api.*api-int.* DNS 레코드는 컨트롤 플레인 시스템과 관련이 있으므로 설치된 OpenShift Container Platform 클러스터의 모든 노드가 이러한 DNS 레코드에 액세스할 수 있는지 확인해야 합니다.

사전 요구 사항

프로세스

2.4. Oracle Edge Cloud에 클러스터를 설치하기 위한 구성 파일 생성

에이전트 기반 설치 관리자를 사용하여 부팅 가능한 ISO 이미지를 생성할 수 있도록 install-config.yamlagent-config.yaml 구성 파일을 생성해야 합니다. 에이전트 기반 설치는 지원 검색 에이전트와 지원 서비스가 있는 부팅 가능한 ISO로 구성됩니다. 이러한 두 구성 요소는 클러스터 설치를 수행하는 데 필요하지만 후자의 구성 요소는 호스트 중 하나에서만 실행됩니다.

참고

에이전트 기반 설치 관리자를 사용하여 ZTP(Zero Touch Provisioning) 사용자 지정 리소스를 생성하거나 허용할 수도 있습니다.

사전 요구 사항

  • OpenShift Container Platform 설치 및 업데이트 프로세스에 대한 세부 사항을 검토했습니다.
  • 클러스터 설치 방법 선택 및 사용자 방법에 대한 문서를 읽습니다.
  • "인터 기반 설치 관리자와 함께 설치할 준비" 문서를 읽었습니다.
  • Red Hat Hybrid Cloud Console 에서 에이전트 기반 설치 프로그램과 CLI(명령줄 인터페이스)를 다운로드했습니다.
  • 연결이 끊긴 환경에 설치하는 경우 환경에 미러 레지스트리를 준비하고 레지스트리에 미러링된 릴리스 이미지를 준비했습니다.

    중요

    다음 명령을 실행하여 openshift-install 바이너리 버전이 로컬 이미지 컨테이너 레지스트리 및 Red Hat Quay와 같은 공유 레지스트리가 아닌 로컬 이미지 컨테이너 레지스트리와 관련이 있는지 확인합니다.

    $ ./openshift-install version
    Copy to Clipboard Toggle word wrap

    공유 레지스트리 바이너리의 출력 예

    ./openshift-install 4.20.0
    built from commit ae7977b7d1ca908674a0d45c5c243c766fa4b2ca
    release image registry.ci.openshift.org/origin/release:4.20ocp-release@sha256:0da6316466d60a3a4535d5fed3589feb0391989982fba59d47d4c729912d6363
    release architecture amd64
    Copy to Clipboard Toggle word wrap

  • 관리자 권한으로 OpenShift Container Platform에 로그인했습니다.

프로세스

  1. 다음 명령을 실행하여 구성 파일을 저장할 설치 디렉터리를 만듭니다.

    $ mkdir ~/<directory_name>
    Copy to Clipboard Toggle word wrap
  2. 조직의 요구 사항에 맞게 install-config.yaml 구성 파일을 구성하고 생성한 디렉터리에 파일을 저장합니다.

    외부 플랫폼을 설정하는 install-config.yaml 파일

    # install-config.yaml
    apiVersion: v1
    baseDomain: <base_domain> 
    1
    
    networking:
      clusterNetwork:
      - cidr: 10.128.0.0/14
        hostPrefix: 23
      network type: OVNKubernetes
      machineNetwork:
      - cidr: <ip_address_from_cidr> 
    2
    
      serviceNetwork:
      - 172.30.0.0/16
    compute:
      - architecture: amd64 
    3
    
      hyperthreading: Enabled
      name: worker
      replicas: 0
    controlPlane:
      architecture: amd64 
    4
    
      hyperthreading: Enabled
      name: master
      replicas: 3
    platform:
       external:
        platformName: oci 
    5
    
        cloudControllerManager: External
    sshKey: <public_ssh_key> 
    6
    
    pullSecret: '<pull_secret>' 
    7
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    클라우드 공급자의 기본 도메인입니다.
    2
    CIDR이 네트워크에서 작동하는 리소스 및 구성 요소에 할당하는 VCN(가상 클라우드 네트워크)의 IP 주소입니다.
    3 4
    인프라에 따라 arm64 또는 amd64 를 선택할 수 있습니다.
    5
    OpenShift Container Platform이 OCI 와 통합할 수 있도록 OCI를 외부 플랫폼으로 설정합니다.
    6
    SSH 공개 키를 지정합니다.
    7
    OpenShift Container Platform 구성 요소 및 서비스의 컨테이너 이미지를 다운로드할 때 인증에 필요한 풀 시크릿(예: Quay.io)입니다. Red Hat Hybrid Cloud Console에서 OpenShift Container Platform 4 설치를 참조하십시오.
  3. 로컬 시스템에 openshift 라는 디렉터리를 만듭니다. 이는 설치 디렉터리의 하위 디렉터리여야 합니다.

    중요

    install-config.yaml 또는 agent-config.yaml 구성 파일을 openshift 디렉터리로 이동하지 마십시오.

  4. Oracle 사용자 지정 매니페스트 파일을 구성합니다.

    1. Compute Cloud@Customer(Oracle 문서)의 에이전트 기반 설치 관리자를 사용하여 OpenShift 클러스터 설정 의 "OpenShift 마스터 이미지 사전 설정"으로 이동합니다.
    2. oci-ccm.yml,oci-csi.yml, machineconfig-ccm.yml 파일을 복사하여 openshift 디렉터리에 붙여넣습니다.
    3. oci-ccm.ymloci-csi.yml 파일을 편집하여 compartment Oracle® Cloud Identifier (OCID), VCN OCID, 로드 밸런서의 OCID 서브넷, 보안 목록 OCID, c3-cert.pem 섹션을 지정합니다.
  5. 조직의 요구 사항을 충족하도록 agent-config.yaml 구성 파일을 구성합니다.

    IPv4 네트워크의 샘플 agent-config.yaml 파일입니다.

    apiVersion: v1beta1
    metadata:
      name: <cluster_name> 
    1
    
      namespace: <cluster_namespace> 
    2
    
    rendezvousIP: <ip_address_from_CIDR> 
    3
    
    bootArtifactsBaseURL: <server_URL> 
    4
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    DNS 레코드에 지정한 클러스터 이름입니다.
    2
    OpenShift Container Platform에서 클러스터의 네임스페이스입니다.
    3
    IPv4를 네트워크 IP 주소 형식으로 사용하는 경우 rendezvousIP 매개변수를 VCN의 CIDR(Classless Inter-Domain Routing) 메서드가 네트워크에 할당하는 IPv4 주소로 설정해야 합니다. 또한 ISO로 부팅한 인스턴스 풀에서 하나 이상의 인스턴스가 rendezvousIP 매개변수에 대해 설정한 IP 주소 값과 일치하는지 확인합니다.
    4
    rootfs 이미지를 업로드할 서버의 URL입니다. 이 매개변수는 연결이 끊긴 환경에만 필요합니다.
  6. 설치 디렉터리에 다음 명령을 입력하여 rootfs 이미지를 제외하는 최소 ISO 이미지를 생성합니다.

    $ ./openshift-install agent create image --log-level debug
    Copy to Clipboard Toggle word wrap

    이 명령은 다음 작업도 완료합니다.

    • ./<installation_directory>/auth 디렉터리: ./<installation_directory >/auth 디렉터리를 생성하여 kubeadmin-passwordkubeconfig 파일을 하위 디렉터리에 배치합니다.
    • agent-config.yaml 구성 파일에서 지정한 IP 주소를 기반으로 rendezvousIP 파일을 생성합니다.
    • 선택 사항: agent-config.yamlinstall-config.yaml 구성 파일에 대한 모든 수정 사항은ZTP(ZTP) 사용자 정의 리소스로 가져옵니다.

      중요

      에이전트 기반 설치 관리자는 RHCOS(Red Hat Enterprise Linux CoreOS)를 사용합니다. 이후 단계에서 언급한 rootfs 이미지는 운영 체제를 부팅, 복구 및 복구하는 데 필요합니다.

  7. 연결이 끊긴 환경만 해당: rootfs 이미지를 웹 서버에 업로드합니다.

    1. 최소 ISO 이미지를 생성할 때 생성된 ./<installation_directory>/boot-artifacts 디렉터리로 이동합니다.
    2. 모든httpd(Hypertext Transfer Protocol daemon)와 같은 선호하는 웹 서버를 사용하여 agent-config.yaml 파일의 bootArtifactsBaseURL 매개변수에 지정된 위치에 rootfs 이미지를 업로드합니다.

      예를 들어 bootArtifactsBaseURL 매개변수가 http://192.168.122.20 를 표시하는 경우 에이전트 기반 설치 프로그램이 http://192.168.122.20/agent.x86_64-rootfs.img 의 이미지에 액세스할 수 있도록 생성된 rootfs 이미지를 이 위치에 업로드합니다. 에이전트 기반 설치 프로그램이 외부 플랫폼의 최소 ISO를 부팅하면 에이전트 기반 설치 프로그램이 http://192.168.122.20/agent.x86_64-rootfs.img 위치에서 시스템 메모리에 rootfs 이미지를 다운로드합니다.

      참고

      에이전트 기반 설치 관리자는 또한 bootArtifactsBaseURL 값을 최소 ISO 이미지 구성에 추가하여 Operator가 클러스터 노드를 부팅할 때 에이전트 기반 설치 프로그램이 rootfs 이미지를 시스템 메모리에 다운로드합니다.

      중요

      1 GB를 초과하는 전체 ISO 이미지에 rootfs 이미지가 포함되어 있습니다. 이미지는 최소 ISO 이미지보다 크며 일반적으로 150 MB 미만입니다.

2.5. OpenShift Container Platform의 방화벽 설정

OpenShift Container Platform을 설치하기 전에 OpenShift Container Platform에 필요한 사이트에 대한 액세스 권한을 부여하도록 방화벽을 설정해야 합니다. 방화벽을 사용하는 경우 OpenShift Container Platform이 작동하는 데 필요한 사이트에 액세스할 수 있도록 방화벽을 추가로 설정합니다.

작업자 노드에 비해 컨트롤러 노드에서만 실행되는 서비스에 대한 특별한 구성 고려 사항은 없습니다.

참고

환경에 OpenShift Container Platform 클러스터 앞에 전용 로드 밸런서가 있는 경우 방화벽과 로드 밸런서 간의 허용 목록을 검토하여 클러스터에 대한 원하지 않는 네트워크 제한을 방지합니다.

프로세스

  1. 방화벽 허용 목록에 대해 다음 레지스트리 URL을 설정합니다.

    Expand
    URL포트함수

    registry.redhat.io

    443

    코어 컨테이너 이미지를 제공합니다.

    access.redhat.com

    443

    컨테이너 클라이언트에서 registry.access.redhat.com 에서 가져온 이미지를 확인하는 데 필요한 서명 저장소를 호스팅합니다. 방화벽 환경에서 이 리소스가 허용 목록에 있는지 확인합니다.

    registry.access.redhat.com

    443

    코어 컨테이너 이미지를 포함하여 Red Hat Ecosystem Catalog에 저장된 모든 컨테이너 이미지를 호스팅합니다.

    quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn01.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn02.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn03.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn04.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn05.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    cdn06.quay.io

    443

    코어 컨테이너 이미지를 제공합니다.

    sso.redhat.com

    443

    https://console.redhat.com 사이트에서 sso.redhat.com의 인증을 사용합니다.

    icr.io

    443

    IBM Cloud Pak 컨테이너 이미지를 제공합니다. 이 도메인은 IBM Cloud Paks를 사용하는 경우에만 필요합니다.

    cp.icr.io

    443

    IBM Cloud Pak 컨테이너 이미지를 제공합니다. 이 도메인은 IBM Cloud Paks를 사용하는 경우에만 필요합니다.

    • 허용 목록에 cdn.quay.iocdn0[1-6].quay.io 대신 와일드카드 *.quay.io 를 사용할 수 있습니다.
    • 와일드카드 *.access.redhat.com 을 사용하여 구성을 단순화하고 registry.access.redhat.com 을 포함한 모든 하위 도메인이 허용되는지 확인할 수 있습니다.
    • 허용 목록에 quay.io와 같은 사이트를 추가할 때 *.quay.io와 같은 와일드카드 항목을 거부 목록에 추가하지 마십시오. 대부분의 경우 이미지 레지스트리는 CDN(Content deliver network)을 사용하여 이미지를 제공합니다. 방화벽 블록에 액세스하면 초기 다운로드 요청이 cdn01.quay.io 와 같은 호스트 이름으로 리디렉션될 때 이미지 다운로드가 거부됩니다.
  2. 방화벽의 허용 목록에 빌드에 필요한 언어 또는 프레임워크에 대한 리소스를 제공하는 모든 사이트를 포함하도록 설정합니다.
  3. Telemetry를 비활성화하지 않으면 Red Hat Lightspeed에 액세스하려면 다음 URL에 대한 액세스 권한을 부여해야 합니다.

    Expand
    URL포트함수

    cert-api.access.redhat.com

    443

    Telemetry 필수

    api.access.redhat.com

    443

    Telemetry 필수

    infogw.api.openshift.com

    443

    Telemetry 필수

    console.redhat.com

    443

    Telemetry 및 insights-operator 필수

  4. Alibaba Cloud, AWS(Amazon Web Services), Microsoft Azure 또는 Google Cloud를 사용하여 클러스터를 호스팅하는 경우 클라우드 공급자 API 및 DNS를 제공하는 URL에 대한 액세스 권한을 부여해야 합니다.

    Expand
    클라우드URL포트함수

    Alibaba

    *.aliyuncs.com

    443

    Alibaba Cloud 서비스 및 리소스에 액세스하는 데 필요합니다. Alibaba endpoints_config.go 파일을 검토하여 사용하는 리전에서 허용할 정확한 끝점을 찾습니다.

    AWS

    aws.amazon.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    *.amazonaws.com

    또는 AWS API에 와일드카드를 사용하지 않도록 선택하는 경우 허용 목록에 다음 URL을 포함해야 합니다.

    443

    AWS 서비스 및 리소스에 액세스하는데 필요합니다. AWS 문서에서 AWS Service Endpoints 를 검토하여 사용하는 리전에서 허용할 정확한 끝점을 찾습니다.

    ec2.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    events.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    iam.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    route53.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    *.s3.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    *.s3.<aws_region>.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    *.s3.dualstack.<aws_region>.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    sts.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    sts.<aws_region>.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    tagging.us-east-1.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다. 이 끝점은 클러스터가 배포된 리전에 관계없이 항상 us-east-1 입니다.

    ec2.<aws_region>.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    elasticloadbalancing.<aws_region>.amazonaws.com

    443

    AWS 환경에서 클러스터를 설치하고 관리하는 데 사용됩니다.

    servicequotas.<aws_region>.amazonaws.com

    443

    필수 항목입니다. 서비스 배포 할당량을 확인하는 데 사용됩니다.

    tagging.<aws_region>.amazonaws.com

    443

    태그 형식으로 AWS 리소스에 대한 메타데이터를 할당할 수 있습니다.

    *.cloudfront.net

    443

    CloudFront에 대한 액세스를 제공하는 데 사용됩니다. AWS STS(Security Token Service) 및 프라이빗 S3 버킷을 사용하는 경우 CloudFront에 대한 액세스를 제공해야 합니다.

    GCP

    *.googleapis.com

    443

    Google Cloud 서비스 및 리소스에 액세스하는 데 필요합니다. API에서 허용할 엔드포인트를 찾으려면 Google Cloud 설명서에서 Cloud Endpoints 를 검토하십시오.

    accounts.google.com

    443

    Google Cloud 계정에 액세스하는 데 필요합니다.

    Microsoft Azure

    management.azure.com

    443

    Microsoft Azure 서비스 및 리소스에 액세스하는 데 필요합니다. Microsoft Azure 설명서에서 API를 허용할 끝점을 찾으려면 Microsoft Azure REST API 참조를 확인하십시오.

    *.blob.core.windows.net

    443

    Ignition 파일을 다운로드하는 데 필요합니다.

    login.microsoftonline.com

    443

    Microsoft Azure 서비스 및 리소스에 액세스하는 데 필요합니다. Microsoft Azure 설명서에서 Azure REST API 참조를 검토하여 API에서 허용할 끝점을 찾습니다.

  5. 다음 URL을 허용 목록에 추가하십시오.

    Expand
    URL포트함수

    *.apps.<cluster_name>.<base_domain>

    443

    설치 중에 ingress 와일드 카드를 설정하지 않으면 기본 클러스터 라우트에 액세스하는데 필요합니다.

    api.openshift.com

    443

    클러스터 토큰과 클러스터에 업데이트를 사용할 수 있는지 확인하는 데 필요합니다.

    console.redhat.com

    443

    클러스터 토큰에 필요합니다.

    mirror.openshift.com

    443

    미러링된 설치 콘텐츠 및 이미지에 액세스하는 데 필요합니다. Cluster Version Operator에는 단일 기능 소스만 필요하지만 이 사이트는 릴리스 이미지 서명의 소스이기도합니다.

    quayio-production-s3.s3.amazonaws.com

    443

    AWS에서 Quay 이미지 콘텐츠에 액세스하는데 필요합니다.

    rhcos.mirror.openshift.com

    443

    RHCOS(Red Hat Enterprise Linux CoreOS) 이미지를 다운로드하는 데 필요합니다.

    sso.redhat.com

    443

    https://console.redhat.com 사이트에서 sso.redhat.com의 인증을 사용합니다.

    storage.googleapis.com/openshift-release

    443

    릴리스 이미지 서명 소스입니다 (Cluster Version Operator에는 단일 기능 소스만 필요)

    Operator는 상태 확인을 수행하기 위해 경로 액세스가 필요합니다. 특히 인증 및 웹 콘솔 Operator는 두 경로에 연결하여 경로가 작동하는지 확인합니다. 클러스터 관리자이고 * .apps. <cluster_name>.<base_domain>을 허용하지 않으려면 다음 경로를 허용하십시오.

    • oauth-openshift.apps.<cluster_name>.<base_domain>
    • canary-openshift-ingress-canary.apps.<cluster_name>.<base_domain>
    • console-openshift-console.apps. <cluster_name>.<base_domain> 또는 필드가 비어 있지 않은 경우 consoles.operator/cluster 객체의 spec.route.hostname 필드에 지정된 호스트 이름입니다.
  6. 선택적 타사 콘텐츠에 대해 다음 URL을 허용 목록에 추가합니다.

    Expand
    URL포트함수

    registry.connect.redhat.com

    443

    모든 타사 이미지 및 인증된 Operator에 필요합니다.

  7. 기본 NTP(Red Hat Network Time Protocol) 서버를 사용하는 경우 다음 URL을 허용합니다.

    • 1.rhel.pool.ntp.org
    • 2.rhel.pool.ntp.org
    • 3.rhel.pool.ntp.org
참고

기본 Red Hat NTP 서버를 사용하지 않는 경우 플랫폼의 NTP 서버를 확인하고 방화벽에서 허용합니다.

2.6. Oracle Edge Cloud에서 클러스터 실행

Oracle® Edge Cloud에서 클러스터를 실행하려면 먼저 생성된 에이전트 ISO 이미지를 OCI 이미지로 변환하고 OCI 홈 리전 Bucket에 업로드한 다음 업로드된 이미지를 Oracle Edge Cloud 시스템으로 가져와야 합니다.

참고

Oracle Edge Cloud는 다음 OpenShift Container Platform 클러스터 토폴로지를 지원합니다.

  • 단일 노드에 OpenShift Container Platform 클러스터 설치.
  • 컨트롤 플레인 인스턴스와 두 개의 컴퓨팅 인스턴스가 있는 고가용성 클러스터입니다.
  • 컨트롤 플레인 인스턴스가 3개 이상 있는 컴팩트한 3-노드 클러스터입니다.

사전 요구 사항

  • 에이전트 ISO 이미지를 생성하셨습니다. "Oracle Edge Cloud에 클러스터를 설치하기 위한 구성 파일 생성" 섹션을 참조하십시오.

프로세스

  1. 에이전트 ISO 이미지를 OCI 이미지로 변환하고 OCI 홈 리전 Bucket에 업로드한 다음 업로드된 이미지를 Oracle Edge Cloud 시스템으로 가져옵니다. 자세한 내용은 Compute Cloud@Customer(Oracle 문서)의 에이전트 기반 설치 관리자를 사용하여 OpenShift 클러스터 설정 의 "OpenShift 마스터 이미지 사전 설정"을 참조하십시오.
  2. Oracle Edge Cloud에서 컨트롤 플레인 인스턴스를 생성합니다. 자세한 내용은 Compute Cloud@Customer(Oracle 문서)의 에이전트 기반 설치 관리자를 사용하여 OpenShift 클러스터 설정의 "C3에서 컨트롤 플레인 인스턴스 생성 및 마스터 노드 LB 백엔드 세트"를 참조하십시오.
  3. 클러스터 토폴로지에 대해 제공된 기본 이미지에서 컴퓨팅 인스턴스를 생성합니다. 자세한 내용은 Compute Cloud@Customer(Oracle 문서)의 에이전트 기반 설치 관리자를 사용하여 OpenShift 클러스터 설정 의 "작업 노드 추가"를 참조하십시오.

    중요

    컴퓨팅 인스턴스를 생성하기 전에 클러스터에 충분한 메모리 및 디스크 리소스가 있는지 확인합니다. 또한 agent-config.yaml 파일의 rendezvousIP 에 명시된 주소와 하나 이상의 컴퓨팅 인스턴스의 IP 주소가 동일한지 확인합니다.

클러스터가 설치되어 있고 Oracle Edge Cloud에서 효과적으로 실행되고 있는지 확인합니다.

사전 요구 사항

  • 필요한 모든 OCI(Oracle Cloud Infrastructure) 리소스 및 서비스를 생성하셨습니다. " OCI 인프라 리소스 및 서비스 생성" 섹션을 참조하십시오.
  • install-config.yamlagent-config.yaml 구성 파일을 생성하셨습니다. "Oracle Edge Cloud에 클러스터를 설치하기 위한 구성 파일 생성" 섹션을 참조하십시오.
  • 에이전트 ISO 이미지를 기본 Oracle Object Storage 버킷에 업로드하고 Oracle Edge Cloud에 컴퓨팅 인스턴스를 생성했습니다. 자세한 내용은 "Oracle Edge Cloud에서 클러스터 실행"을 참조하십시오.

프로세스

OpenShift Container Platform 클러스터의 자체 관리 노드에 컴퓨팅 인스턴스를 배포한 후 다음 옵션 중 하나를 선택하여 클러스터의 상태를 모니터링할 수 있습니다.

  • OpenShift Container Platform CLI에서 다음 명령을 입력합니다.

    $ ./openshift-install agent wait-for install-complete --log-level debug
    Copy to Clipboard Toggle word wrap

    부트스트랩 노드를 실행하는 rendezvous 호스트 노드의 상태를 확인합니다. 호스트가 재부팅되면 호스트는 클러스터의 일부를 형성합니다.

  • kubeconfig API를 사용하여 다양한 OpenShift Container Platform 구성 요소의 상태를 확인합니다. KUBECONFIG 환경 변수의 경우 클러스터의 kubeconfig 구성 파일의 상대 경로를 설정합니다.

    $  export KUBECONFIG=~/auth/kubeconfig
    Copy to Clipboard Toggle word wrap

    각 클러스터의 자체 관리 노드의 상태를 확인합니다. CCM은 각 노드에 레이블을 적용하여 OCI의 클러스터에서 노드를 실행 중으로 지정합니다.

    $ oc get nodes -A
    Copy to Clipboard Toggle word wrap

    출력 예

    NAME                                   STATUS ROLES                 AGE VERSION
    main-0.private.agenttest.oraclevcn.com Ready  control-plane, master 7m  v1.27.4+6eeca63
    main-1.private.agenttest.oraclevcn.com Ready  control-plane, master 15m v1.27.4+d7fa83f
    main-2.private.agenttest.oraclevcn.com Ready  control-plane, master 15m v1.27.4+d7fa83f
    Copy to Clipboard Toggle word wrap

    CCM Operator 상태가 클러스터가 실행 중임을 나타내는 적절한 지표로 각 클러스터의 Operator 상태를 확인합니다.

    $ oc get co
    Copy to Clipboard Toggle word wrap

    잘린 출력 예

    NAME           VERSION     AVAILABLE  PROGRESSING    DEGRADED   SINCE   MESSAGE
    authentication 4.20.0-0    True       False          False      6m18s
    baremetal      4.20.0-0    True       False          False      2m42s
    network        4.20.0-0    True       True           False      5m58s  Progressing: …
        …
    Copy to Clipboard Toggle word wrap

Legal Notice

Copyright © 2025 Red Hat

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동