2.4. OCI에 클러스터를 설치하기 위한 구성 파일 생성
에이전트 기반 설치 관리자를 사용하여 부팅 가능한 ISO 이미지를 생성할 수 있도록 install-config.yaml
및 agent-config.yaml
구성 파일을 생성해야 합니다. 에이전트 기반 설치는 지원 검색 에이전트와 지원 서비스가 있는 부팅 가능한 ISO로 구성됩니다. 이러한 두 구성 요소는 클러스터 설치를 수행하는 데 필요하지만 후자의 구성 요소는 호스트 중 하나에서만 실행됩니다.
이후 단계에서는 생성된 에이전트 ISO 이미지를 Oracle의 기본 Object Storage 버킷에 업로드하는 Oracle 문서의 단계를 수행해야 합니다. 이 버킷은 OCI(Oracle® Cloud Infrastructure)에 OpenShift Container Platform 클러스터를 통합하는 초기 단계입니다.
에이전트 기반 설치 관리자를 사용하여 ZTP(Zero Touch Provisioning) 사용자 지정 리소스를 생성하거나 허용할 수도 있습니다.
사전 요구 사항
- OpenShift Container Platform 설치 및 업데이트 프로세스에 대한 세부 사항을 검토했습니다.
- 클러스터 설치 방법 선택 및 사용자 방법에 대한 문서를 읽습니다.
- "인터 기반 설치 관리자와 함께 설치할 준비" 문서를 읽었습니다.
- Red Hat Hybrid Cloud Console 에서 에이전트 기반 설치 프로그램과 CLI(명령줄 인터페이스)를 다운로드했습니다.
연결이 끊긴 환경에 설치하는 경우 환경에 미러 레지스트리를 준비하고 레지스트리에 미러링된 릴리스 이미지를 준비했습니다.
중요다음 명령을 실행하여
openshift-install
바이너리 버전이 로컬 이미지 컨테이너 레지스트리 및 Red Hat Quay와 같은 공유 레지스트리가 아닌 로컬 이미지 컨테이너 레지스트리와 관련이 있는지 확인합니다.$ ./openshift-install version
공유 레지스트리 바이너리의 출력 예
./openshift-install 4.17.0 built from commit ae7977b7d1ca908674a0d45c5c243c766fa4b2ca release image registry.ci.openshift.org/origin/release:4.17ocp-release@sha256:0da6316466d60a3a4535d5fed3589feb0391989982fba59d47d4c729912d6363 release architecture amd64
- 관리자 권한으로 OpenShift Container Platform에 로그인했습니다.
프로세스
다음 명령을 실행하여 구성 파일을 저장할 설치 디렉터리를 만듭니다.
$ mkdir ~/<directory_name>
조직의 요구 사항에 맞게
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 # ...
- 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 설치를 참조하십시오.
로컬 시스템에
openshift
라는 디렉터리를 만듭니다. 이는 설치 디렉터리의 하위 디렉터리여야 합니다.중요install-config.yaml
또는agent-config.yaml
구성 파일을openshift
디렉터리로 이동하지 마십시오.-
OCI 인프라 리소스를 프로비저닝하는 스택을 사용한 경우: OCI 스택의
dynamic_custom_manifest
출력을manifest.yaml
이라는 제목의 파일에 복사하여 붙여넣고openshift
디렉터리에 파일을 저장합니다. OCI 인프라 리소스를 프로비저닝하는 데 스택을 사용하지 않은 경우: 에이전트 ISO 이미지를 생성하기 위해 사용자 정의 매니페스트를 다운로드하고 준비합니다.
- 구성 파일 (Oracle 문서)으로 이동하여 GitHub의 사용자 정의 매니페스트 디렉터리에 대한 링크를 따르십시오.
-
condensed-manifest.yml
파일의 내용을 복사하여openshift
디렉터리의 파일에 로컬로 저장합니다. -
condensed-manifest.yml
파일에서TODO
로 표시된 섹션을 업데이트하여 OCID(Oracle® Cloud Identifier), VCN OCID, 로드 밸런서의 OCID 서브넷, OCID 목록을 지정합니다.
조직의 요구 사항을 충족하도록
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 # ...
- 1
- DNS 레코드에 지정한 클러스터 이름입니다.
- 2
- OpenShift Container Platform에서 클러스터의 네임스페이스입니다.
- 3
- IPv4를 네트워크 IP 주소 형식으로 사용하는 경우
rendezvousIP
매개변수를 VCN의 CIDR(Classless Inter-Domain Routing) 메서드가 네트워크에 할당하는 IPv4 주소로 설정해야 합니다. 또한 ISO로 부팅한 인스턴스 풀에서 하나 이상의 인스턴스가rendezvousIP
매개변수에 대해 설정한 IP 주소 값과 일치하는지 확인합니다. - 4
- rootfs 이미지를 업로드할 서버의 URL입니다. 이 매개변수는 연결이 끊긴 환경에만 필요합니다.
설치 디렉터리에 다음 명령을 입력하여 rootfs 이미지를 제외하는 최소 ISO 이미지를 생성합니다.
$ ./openshift-install agent create image --log-level debug
이 명령은 다음 작업도 완료합니다.
-
./<installation_directory>/auth 디렉터리: ./<installation_directory
>/auth 디렉터리를 생성하여kubeadmin-password
및kubeconfig
파일을 하위 디렉터리에 배치합니다. -
agent-config.yaml
구성 파일에서 지정한 IP 주소를 기반으로rendezvousIP
파일을 생성합니다. 선택 사항:
agent-config.yaml
및install-config.yaml
구성 파일에 대한 모든 수정 사항은ZTP(ZTP) 사용자 정의 리소스로 가져옵니다.중요에이전트 기반 설치 관리자는 RHCOS(Red Hat Enterprise Linux CoreOS)를 사용합니다. 이후 단계에서 언급한 rootfs 이미지는 운영 체제를 부팅, 복구 및 복구하는 데 필요합니다.
-
연결이 끊긴 환경만 해당: rootfs 이미지를 웹 서버에 업로드합니다.
-
최소 ISO 이미지를 생성할 때 생성된
./<installation_directory>/boot-artifacts
디렉터리로 이동합니다. 모든
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 미만입니다.
-
최소 ISO 이미지를 생성할 때 생성된