6.5. 설치 프로그램 받기
OpenShift Container Platform을 설치하기 전에 설치에 사용하는 호스트에 설치 파일을 다운로드합니다.
사전 요구 사항
- 500MB의 로컬 디스크 공간이 있는 Linux 또는 macOS를 실행하는 컴퓨터가 있습니다.
프로세스
- OpenShift Cluster Manager 사이트의 인프라 공급자 페이지에 액세스합니다. Red Hat 계정이 있으면 사용자 자격 증명으로 로그인합니다. 계정이 없으면 계정을 만드십시오.
- 인프라 공급자를 선택합니다.
설치 유형 페이지로 이동하여 호스트 운영 체제 및 아키텍처에 해당하는 설치 프로그램을 다운로드하여 설치 구성 파일을 저장할 디렉터리에 파일을 배치합니다.
중요설치 프로그램은 클러스터를 설치하는 데 사용하는 컴퓨터에 여러 파일을 만듭니다. 클러스터 설치를 마친 후 설치 프로그램과 설치 프로그램으로 생성되는 파일을 보관해야 합니다. 클러스터를 삭제하려면 두 파일이 모두 필요합니다.
중요클러스터 설치에 실패하거나 설치 프로그램으로 만든 파일을 삭제해도 클러스터는 제거되지 않습니다. 클러스터를 제거하려면 해당 클라우드 공급자에 적용되는 OpenShift Container Platform 설치 제거 절차를 완료해야 합니다.
설치 프로그램 파일의 압축을 풉니다. 예를 들어 Linux 운영 체제를 사용하는 컴퓨터에서 다음 명령을 실행합니다.
$ tar -xvf openshift-install-linux.tar.gz
- Red Hat OpenShift Cluster Manager에서 설치 풀 시크릿을 다운로드합니다. 이 풀 시크릿을 사용하면 OpenShift Container Platform 구성 요소에 대한 컨테이너 이미지를 제공하는 Quay.io를 포함하여 인증 기관에서 제공하는 서비스로 인증할 수 있습니다.
6.5.1. 설치 구성 파일 만들기
vGPU Cloud에 설치하는 OpenShift Container Platform 클러스터를 사용자 지정할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform 설치 프로그램과 클러스터의 풀 시크릿을 받습니다.
- 서브스크립션 수준에서 서비스 권한을 확보합니다.
프로세스
install-config.yaml
파일을 생성합니다.설치 프로그램이 포함된 디렉터리로 변경하고 다음 명령을 실행합니다.
$ ./openshift-install create install-config --dir <installation_directory> 1
- 1
<installation_directory>
는 설치 프로그램이 생성하는 파일을 저장할 디렉터리 이름을 지정합니다.
디렉터리를 지정할 때 다음을 수행합니다.
-
디렉터리에
실행
권한이 있는지 확인합니다. 설치 디렉토리에서 Terraform 바이너리를 실행하려면 이 권한이 필요합니다. - 빈 디렉터리를 사용합니다. 부트스트랩 X.509 인증서와 같은 일부 설치 자산은 단기간에 만료되므로 설치 디렉터리를 재사용해서는 안 됩니다. 다른 클러스터 설치의 개별 파일을 재사용하려면 해당 파일을 사용자 디렉터리에 복사하면 됩니다. 그러나 설치 자산의 파일 이름은 릴리스간에 변경될 수 있습니다. 따라서 이전 OpenShift Container Platform 버전에서 설치 파일을 복사할 때는 주의하십시오.
화면에 나타나는 지시에 따라 클라우드에 대한 구성 세부 사항을 입력합니다.
선택사항: 클러스터 시스템에 액세스하는 데 사용할 SSH 키를 선택합니다.
참고설치 디버깅 또는 재해 복구를 수행하려는 프로덕션 OpenShift Container Platform 클러스터의 경우
ssh-agent
프로세스가 사용하는 SSH 키를 지정합니다.- 대상 플랫폼으로 alibabacloud 를 선택합니다.
- 클러스터를 배포할 리전을 선택합니다.
- 클러스터를 배포할 기본 도메인을 선택합니다. 기본 도메인은 클러스터용으로 생성한 퍼블릭 DNS 영역에 해당합니다.
- 클러스터에 대한 설명이 포함된 이름을 입력합니다.
- Red Hat OpenShift Cluster Manager에서 풀 시크릿 을 붙여넣습니다.
RuntimeClass 클라우드에 클러스터를 설치하려면 CCO(Cloud Credential Operator)가 수동 모드에서 작동해야 합니다.
install-config.yaml
파일을 수정하여credentialsMode
매개변수를Manual
로 설정합니다.credentialsMode
가Manual
로 설정된 install-config.yaml 구성 파일의 예apiVersion: v1 baseDomain: cluster1.example.com credentialsMode: Manual 1 compute: - architecture: amd64 hyperthreading: Enabled ...
- 1
- 이 행을 추가하여
credentialsMode
를Manual
로 설정합니다.
-
install-config.yaml
파일을 수정합니다. 사용 가능한 매개변수에 대한 자세한 정보는 “설치 구성 매개변수” 섹션에서 확인할 수 있습니다. 여러 클러스터를 설치하는 데 사용할 수 있도록
install-config.yaml
파일을 백업합니다.중요install-config.yaml
파일은 설치 과정에서 사용됩니다. 이 파일을 재사용하려면 지금 백업해야 합니다.
6.5.2. 설치 구성 매개변수
OpenShift Container Platform 클러스터를 배포하기 전에 매개변수 값을 제공하여 클러스터를 호스팅할 클라우드 플랫폼에서 사용자 계정을 설명하고 선택사항으로 클러스터의 플랫폼을 사용자 지정합니다. install-config.yaml
설치 구성 파일을 생성할 때 명령줄을 통해 필요한 매개변수 값을 제공합니다. 클러스터를 사용자 지정하면 install-config.yaml
파일을 수정하여 플랫폼에 대한 세부 정보를 제공할 수 있습니다.
설치한 후에는 install-config.yaml
파일에서 이러한 매개변수를 수정할 수 없습니다.
6.5.2.1. 필수 구성 매개변수
필수 설치 구성 매개변수는 다음 표에 설명되어 있습니다.
매개변수 | 설명 | 값 |
---|---|---|
|
| 문자열 |
|
클라우드 공급자의 기본 도메인입니다. 기본 도메인은 OpenShift Container Platform 클러스터 구성 요소에 대한 경로를 생성하는 데 사용됩니다. 클러스터의 전체 DNS 이름은 |
정규화된 도메인 또는 하위 도메인 이름(예: |
|
Kubernetes 리소스 | 개체 |
|
클러스터의 이름입니다. 클러스터의 DNS 레코드는 |
소문자, 하이픈( |
|
설치를 수행할 특정 플랫폼에 대한 구성: | 개체 |
| Red Hat OpenShift Cluster Manager에서 풀 시크릿을 가져와서 Quay.io와 같은 서비스에서 OpenShift Container Platform 구성 요소의 컨테이너 이미지 다운로드를 인증합니다. |
{ "auths":{ "cloud.openshift.com":{ "auth":"b3Blb=", "email":"you@example.com" }, "quay.io":{ "auth":"b3Blb=", "email":"you@example.com" } } } |
6.5.2.2. 네트워크 구성 매개변수
기존 네트워크 인프라의 요구 사항에 따라 설치 구성을 사용자 지정할 수 있습니다. 예를 들어 클러스터 네트워크의 IP 주소 블록을 확장하거나 기본값과 다른 IP 주소 블록을 제공할 수 있습니다.
IPv4 주소만 지원됩니다.
Red Hat OpenShift Data Foundation 재해 복구 솔루션에서는 Globalnet이 지원되지 않습니다. 지역 재해 복구 시나리오의 경우 각 클러스터의 클러스터 및 서비스 네트워크에 대해 겹치지 않는 개인 IP 주소를 사용해야 합니다.
매개변수 | 설명 | 값 |
---|---|---|
| 클러스터의 네트워크의 구성입니다. | 개체 참고
설치한 후에는 |
| 설치할 Red Hat OpenShift Networking 네트워크 플러그인입니다. |
|
| Pod의 IP 주소 블록입니다.
기본값은 여러 IP 주소 블록을 지정하는 경우 블록이 겹치지 않아야 합니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. networking: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 |
|
IPv4 네트워크입니다. |
CIDR(Classless Inter-Domain Routing) 표기법의 IP 주소 블록입니다. IPv4 블록의 접두사 길이는 |
|
개별 노드 각각에 할당할 서브넷 접두사 길이입니다. 예를 들어 | 서브넷 접두사입니다.
기본값은 |
|
서비스의 IP 주소 블록입니다. 기본값은 OpenShift SDN 및 OVN-Kubernetes 네트워크 플러그인은 서비스 네트워크에 대한 단일 IP 주소 블록만 지원합니다. | CIDR 형식의 IP 주소 블록이 있는 어레이입니다. 예를 들면 다음과 같습니다. networking: serviceNetwork: - 172.30.0.0/16 |
| 시스템의 IP 주소 블록입니다. 여러 IP 주소 블록을 지정하는 경우 블록이 겹치지 않아야 합니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. networking: machineNetwork: - cidr: 10.0.0.0/16 |
|
| CIDR 표기법의 IP 네트워크 블록입니다.
예: 참고
기본 NIC가 상주하는 CIDR과 일치하도록 |
6.5.2.3. 선택적 구성 매개변수
선택적 설치 구성 매개변수는 다음 표에 설명되어 있습니다.
매개변수 | 설명 | 값 |
---|---|---|
| 노드의 신뢰할 수 있는 인증서 스토리지에 추가되는 PEM 인코딩 X.509 인증서 번들입니다. 이 신뢰할 수 있는 번들은 프록시가 구성되었을 때에도 사용할 수 있습니다. | 문자열 |
| 선택적 핵심 클러스터 구성 요소의 설치를 제어합니다. 선택적 구성 요소를 비활성화하여 OpenShift Container Platform 클러스터의 설치 공간을 줄일 수 있습니다. 자세한 내용은 설치 의 "클러스터 기능" 페이지를 참조하십시오. | 문자열 배열 |
|
활성화할 선택적 기능 세트를 선택합니다. 유효한 값은 | 문자열 |
|
| 문자열 배열 |
| 컴퓨팅 노드를 구성하는 시스템의 구성입니다. |
|
|
풀에 있는 시스템의 명령어 집합 아키텍처를 결정합니다. 현재 다양한 아키텍처가 있는 클러스터는 지원되지 않습니다. 모든 풀은 동일한 아키텍처를 지정해야 합니다. 유효한 값은 | 문자열 |
|
컴퓨팅 시스템에서 동시 멀티스레딩 또는 중요 동시 멀티스레딩을 비활성화하는 경우 용량 계획에서 시스템 성능이 크게 저하될 수 있는 문제를 고려해야 합니다. |
|
|
|
|
|
|
|
| 프로비저닝할 컴퓨팅 시스템(작업자 시스템이라고도 함) 수입니다. |
|
| 기능 세트를 위한 클러스터를 활성화합니다. 기능 세트는 기본적으로 활성화되어 있지 않은 OpenShift Container Platform 기능 컬렉션입니다. 설치 중에 기능 세트를 활성화하는 방법에 대한 자세한 내용은 "기능 게이트를 사용하여 기능 활성화"를 참조하십시오. |
문자열. |
| 컨트롤 플레인을 구성하는 시스템들의 구성입니다. |
|
|
풀에 있는 시스템의 명령어 집합 아키텍처를 결정합니다. 현재 다양한 아키텍처가 있는 클러스터는 지원되지 않습니다. 모든 풀은 동일한 아키텍처를 지정해야 합니다. 유효한 값은 | 문자열 |
|
컨트롤 플레인 시스템에서 동시 멀티스레딩 또는 중요 동시 멀티스레딩을 비활성화하는 경우 용량 계획에서 시스템 성능이 크게 저하될 수 있는 문제를 고려해야 합니다. |
|
|
|
|
|
|
|
| 프로비저닝하는 컨트롤 플레인 시스템의 수입니다. |
지원되는 유일한 값은 기본값인 |
| Cloud Credential Operator (CCO) 모드입니다. 모드가 지정되지 않은 경우 CCO는 여러 모드가 지원되는 플랫폼에서 Mint 모드가 우선으로 되어 지정된 인증 정보의 기능을 동적으로 확인하려고합니다. 참고 모든 클라우드 공급자에서 모든 CCO 모드가 지원되는 것은 아닙니다. CCO 모드에 대한 자세한 내용은 Cluster Operators 참조 콘텐츠의 Cloud Credential Operator 항목을 참조하십시오. 참고
AWS 계정에 서비스 제어 정책(SCP)이 활성화된 경우 |
|
|
FIPS 모드를 활성화 또는 비활성화합니다. 기본값은 중요
클러스터의 FIPS 모드를 활성화하려면 FIPS 모드에서 작동하도록 구성된 RHEL(Red Hat Enterprise Linux) 컴퓨터에서 설치 프로그램을 실행해야 합니다. RHEL에서 FIPS 모드 구성에 대한 자세한 내용은 FIPS 모드에서 시스템 설치를 참조하십시오. FIPS 검증 또는 모듈 In Process 암호화 라이브러리 사용은 참고 Azure File 스토리지를 사용하는 경우 FIPS 모드를 활성화할 수 없습니다. |
|
| 릴리스 이미지 내용의 소스 및 리포지토리입니다. |
개체의 배열입니다. 이 표의 다음 행에 설명된 대로 |
|
| 문자열 |
| 동일한 이미지를 포함할 수도 있는 하나 이상의 리포지토리를 지정합니다. | 문자열 배열 |
| Kubernetes API, OpenShift 경로와 같이 클러스터의 사용자 끝점을 게시하거나 노출하는 방법입니다. |
이 필드를 중요
필드 값을 |
| 클러스터 시스템에 대한 액세스를 인증하는 SSH 키입니다. 참고
설치 디버깅 또는 재해 복구를 수행하려는 프로덕션 OpenShift Container Platform 클러스터의 경우 |
예를 들어 |
6.5.2.4. 추가 Alibaba Cloud 구성 매개변수
추가 Alibaba Cloud 구성 매개변수는 다음 표에 설명되어 있습니다. alibabacloud
매개변수는 Alibaba Cloud에 설치할 때 사용되는 구성입니다. defaultMachinePlatform
매개변수는 자체 플랫폼 구성을 정의하지 않는 머신 풀에 대해 Alibaba Cloud에 설치할 때 사용되는 기본 구성입니다.
이러한 매개변수는 지정된 컴퓨팅 머신 및 컨트롤 플레인 시스템에 모두 적용됩니다.
정의된 경우 compute.platform.alibabacloud
및 controlPlane.platform.alibabacloud
매개변수는 각각 컴퓨팅 머신 및 컨트롤 플레인 시스템의 platform.alibacloud.defaultMachinePlatform
설정을 덮어씁니다.
매개변수 | 설명 | 값 |
---|---|---|
| ECS 인스턴스를 생성하는 데 사용되는 imageID입니다. ImageId는 클러스터와 동일한 리전에 속해야 합니다. | 문자열. |
|
instanceType은 ECS 인스턴스 유형을 정의합니다. 예: | 문자열. |
|
시스템 디스크의 범주를 정의합니다. 예: | 문자열. |
| 시스템 디스크의 크기를 기가바이트(GiB)로 정의합니다. | 정수. |
|
사용할 수 있는 가용성 영역 목록입니다. 예: | 문자열 목록. |
| ECS 인스턴스를 생성하는 데 사용되는 imageID입니다. ImageId는 클러스터와 동일한 리전에 속해야 합니다. | 문자열. |
|
instanceType은 ECS 인스턴스 유형을 정의합니다. 예: | 문자열. |
|
시스템 디스크의 범주를 정의합니다. 예: | 문자열. |
| 시스템 디스크의 크기를 기가바이트(GiB)로 정의합니다. | 정수. |
|
사용할 수 있는 가용성 영역 목록입니다. 예: | 문자열 목록. |
| 필수 항목입니다. 클러스터가 생성될 Alibaba Cloud 리전입니다. | 문자열. |
| 클러스터가 설치될 이미 존재하는 리소스 그룹의 ID입니다. 비어 있는 경우 설치 프로그램에서 클러스터에 대한 새 리소스 그룹을 생성합니다. | 문자열. |
| 클러스터에 대해 생성된 모든 Alibaba Cloud 리소스에 적용되는 추가 키와 값입니다. | 개체. |
| 클러스터를 설치해야 하는 기존 VPC의 ID입니다. 비어 있는 경우 설치 프로그램은 클러스터에 대한 새 VPC를 생성합니다. | 문자열. |
| 클러스터 리소스가 생성될 기존 VSwitch의 ID 목록입니다. 기존 VSwitch는 기존 VPC를 사용하는 경우에만 사용할 수 있습니다. 비어 있는 경우 설치 프로그램에서 클러스터에 대한 새 VSwitch를 만듭니다. | 문자열 목록. |
| 컴퓨팅 시스템 및 컨트롤 플레인 시스템 모두에서 ECS 인스턴스를 생성하는 데 사용해야 하는 이미지 ID입니다. 설정된 경우 이미지 ID는 클러스터와 동일한 리전에 속해야 합니다. | 문자열. |
|
컴퓨팅 시스템 및 컨트롤 플레인 시스템 모두에서 ECS 인스턴스를 생성하는 데 사용되는 ECS 인스턴스 유형입니다. 예: | 문자열. |
|
컴퓨팅 시스템 및 컨트롤 플레인 시스템의 경우 시스템 디스크의 범주입니다. 예: |
문자열(예: "", |
|
컴퓨팅 시스템 및 컨트롤 플레인 시스템의 경우 시스템 디스크 크기(GiB)입니다. 최소는 | 정수. |
|
컴퓨팅 시스템 및 컨트롤 플레인 시스템 모두 사용할 수 있는 가용성 영역 목록입니다. 예: | 문자열 목록. |
| 클러스터의 내부 API에 대한 DNS 레코드를 추가할 기존 프라이빗 영역의 ID입니다. 기존 프라이빗 영역은 기존 VPC를 사용하는 경우에만 사용할 수 있습니다. 프라이빗 영역은 서브넷이 포함된 VPC와 연결되어 있어야 합니다. 설치 프로그램이 사용자를 대신하여 프라이빗 영역을 생성하도록 프라이빗 영역을 설정되지 않은 상태로 둡니다. | 문자열. |
6.5.3. Alibaba Cloud에 대한 샘플 사용자 지정 install-config.yaml 파일
설치 구성 파일(install-config.yaml
)을 사용자 지정하여 클러스터 플랫폼에 대한 자세한 정보를 지정하거나 필수 매개변수 값을 수정할 수 있습니다.
apiVersion: v1 baseDomain: alicloud-dev.devcluster.openshift.com credentialsMode: Manual compute: - architecture: amd64 hyperthreading: Enabled name: worker platform: {} replicas: 3 controlPlane: architecture: amd64 hyperthreading: Enabled name: master platform: {} replicas: 3 metadata: creationTimestamp: null name: test-cluster 1 networking: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 machineNetwork: - cidr: 10.0.0.0/16 networkType: OVNKubernetes 2 serviceNetwork: - 172.30.0.0/16 platform: alibabacloud: defaultMachinePlatform: 3 instanceType: ecs.g6.xlarge systemDiskCategory: cloud_efficiency systemDiskSize: 200 region: ap-southeast-1 4 resourceGroupID: rg-acfnw6j3hyai 5 vpcID: vpc-0xifdjerdibmaqvtjob2b 6 vswitchIDs: 7 - vsw-0xi8ycgwc8wv5rhviwdq5 - vsw-0xiy6v3z2tedv009b4pz2 publish: External pullSecret: '{"auths": {"cloud.openshift.com": {"auth": ... }' 8 sshKey: | ssh-rsa AAAA... 9
- 1
- 필수 항목입니다. 설치 프로그램에서 클러스터 이름을 입력하라는 메시지를 표시합니다.
- 2
- 설치할 클러스터 네트워크 플러그인입니다. 지원되는 값은
OVNKubernetes
및OpenShiftSDN
입니다. 기본값은OVNKubernetes
입니다. - 3
- 선택 사항: 자체 플랫폼 구성을 정의하지 않는 머신 풀에 대한 매개변수를 지정합니다.
- 4
- 필수 항목입니다. 설치 프로그램에서 클러스터를 배포할 리전을 묻는 메시지를 표시합니다.
- 5
- 선택 사항: 클러스터를 설치해야 하는 기존 리소스 그룹을 지정합니다.
- 8
- 필수 항목입니다. 설치 프로그램에서 가져오기 시크릿을 묻는 메시지를 표시합니다.
- 9
- 선택 사항: 설치 프로그램에서 클러스터의 시스템에 액세스하는 데 사용하는 SSH 키 값을 입력하라는 메시지를 표시합니다.
- 6 7
- 선택 사항: 다음은 예제 vswitchID 값입니다.
6.5.4. 필요한 설치 매니페스트 생성
클러스터가 머신을 구성하는 데 필요한 Kubernetes 매니페스트 및 Ignition 구성 파일을 생성해야 합니다.
프로세스
설치 프로그램이 포함된 디렉터리에서 다음 명령을 실행하여 매니페스트를 생성합니다.
$ openshift-install create manifests --dir <installation_directory>
다음과 같습니다.
<installation_directory>
- 설치 프로그램이 파일을 생성하는 디렉터리를 지정합니다.
6.5.5. Cloud Credential Operator 유틸리티 구성
CCO(Cloud Credential Operator)가 수동 모드에서 작동할 때 클러스터 외부에서 클라우드 인증 정보를 생성하고 관리하려면 CCO 유틸리티(ccoctl
) 바이너리를 추출 및 준비합니다.
ccoctl
유틸리티는 Linux 환경에서 실행해야 하는 Linux 바이너리입니다.
사전 요구 사항
- 클러스터 관리자 액세스 권한이 있는 OpenShift Container Platform 계정에 액세스할 수 있습니다.
-
OpenShift CLI(
oc
)가 설치되어 있습니다.
프로세스
다음 명령을 실행하여 OpenShift Container Platform 릴리스 이미지를 가져옵니다.
$ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}')
다음 명령을 실행하여 OpenShift Container Platform 릴리스 이미지에서 CCO 컨테이너 이미지를 가져옵니다.
$ CCO_IMAGE=$(oc adm release info --image-for='cloud-credential-operator' $RELEASE_IMAGE -a ~/.pull-secret)
참고$RELEASE_IMAGE
의 아키텍처가ccoctl
툴을 사용할 환경의 아키텍처와 일치하는지 확인합니다.다음 명령을 실행하여 OpenShift Container Platform 릴리스 이미지 내에서
ccoctl
바이너리를 추출합니다.$ oc image extract $CCO_IMAGE --file="/usr/bin/ccoctl" -a ~/.pull-secret
다음 명령을 실행하여
ccoctl
을 실행할 수 있도록 권한을 변경합니다.$ chmod 775 ccoctl
검증
ccoctl
을 사용할 준비가 되었는지 확인하려면 다음 명령을 실행하여 도움말 파일을 표시합니다.$ ccoctl --help
ccoctl --help
의 출력OpenShift credentials provisioning tool Usage: ccoctl [command] Available Commands: alibabacloud Manage credentials objects for alibaba cloud aws Manage credentials objects for AWS cloud gcp Manage credentials objects for Google cloud help Help about any command ibmcloud Manage credentials objects for IBM Cloud nutanix Manage credentials objects for Nutanix Flags: -h, --help help for ccoctl Use "ccoctl [command] --help" for more information about a command.
6.5.6. ccoctl 툴을 사용하여 OpenShift Container Platform 구성 요소의 인증 정보 생성
OpenShift Container Platform Cloud Credential Operator (CCO) 유틸리티를 사용하여 각 클러스터 내 구성 요소에 대해 RuntimeClass Cloud RAM 사용자 및 정책 생성을 자동화할 수 있습니다.
기본적으로 ccoctl
은 명령이 실행되는 디렉터리에 오브젝트를 생성합니다. 다른 디렉터리에 오브젝트를 생성하려면 --output-dir
플래그를 사용합니다. 이 절차에서는 <path_to_ccoctl_output_dir>
을 사용하여 이 디렉터리를 나타냅니다.
사전 요구 사항
다음이 있어야 합니다.
-
ccoctl
바이너리를 추출하여 준비합니다. - OpenShift Container Platform 클러스터를 생성할 수 있는 충분한 권한이 있는 RAM 사용자가 생성되어 있어야 합니다.
-
해당 RAM 사용자의 AccessKeyID (
access_key_id
) 및 AccessKeySecret (access_key_secret
)을 로컬 컴퓨터의~/.alibabacloud/credentials
파일에 추가했습니다.
프로세스
다음 명령을 실행하여
$RELEASE_IMAGE
변수를 설정합니다.$ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}')
다음 명령을 실행하여 OpenShift Container Platform 릴리스 이미지에서
CredentialsRequest
오브젝트 목록을 추출합니다.$ oc adm release extract \ --credentials-requests \ --cloud=alibabacloud \ --to=<path_to_directory_with_list_of_credentials_requests>/credrequests \ 1 $RELEASE_IMAGE
- 1
credrequests
는CredentialsRequest
오브젝트 목록이 저장되는 디렉터리입니다. 이 명령은 디렉터리가 없는 경우 해당 디렉터리를 생성합니다.
참고이 명령을 실행하는 데 시간이 다소 걸릴 수 있습니다.
클러스터에서 클러스터 기능을 사용하여 하나 이상의 선택적 구성 요소를 비활성화하는 경우 비활성화된 구성 요소에 대한
CredentialsRequest
사용자 정의 리소스를 삭제합니다.Alibaba Cloud에서 OpenShift Container Platform 4.12의
credrequests
디렉터리 콘텐츠 예0000_30_machine-api-operator_00_credentials-request.yaml 1 0000_50_cluster-image-registry-operator_01-registry-credentials-request-alibaba.yaml 2 0000_50_cluster-ingress-operator_00-ingress-credentials-request.yaml 3 0000_50_cluster-storage-operator_03_credentials_request_alibaba.yaml 4
ccoctl
툴을 사용하여redrequests
디렉터리의 모든CredentialsRequest
오브젝트를 처리합니다.툴을 사용하려면 다음 명령을 실행합니다.
$ ccoctl alibabacloud create-ram-users \ --name <name> \ --region=<alibaba_region> \ --credentials-requests-dir=<path_to_directory_with_list_of_credentials_requests>/credrequests \ --output-dir=<path_to_ccoctl_output_dir>
다음과 같습니다.
-
<name>
은 추적을 위해 생성된 클라우드 리소스에 태그를 지정하는 데 사용되는 이름입니다. -
<alibaba_region>
은 클라우드 리소스가 생성될 Alibaba Cloud 지역입니다. -
<path_to_directory_with_list_of_credentials_requests>/credrequests
는CredentialsRequest
개체의 파일이 포함된 디렉터리입니다. -
<path_to_ccoctl_output_dir>
은 생성된 구성 요소 인증 정보 시크릿을 배치할 디렉터리입니다.
참고클러스터에서
TechPreviewNoUpgrade
기능 세트에서 활성화한 기술 프리뷰 기능을 사용하는 경우--enable-tech-preview
매개변수를 포함해야 합니다.출력 예
2022/02/11 16:18:26 Created RAM User: user1-alicloud-openshift-machine-api-alibabacloud-credentials 2022/02/11 16:18:27 Ready for creating new ram policy user1-alicloud-openshift-machine-api-alibabacloud-credentials-policy-policy 2022/02/11 16:18:27 RAM policy user1-alicloud-openshift-machine-api-alibabacloud-credentials-policy-policy has created 2022/02/11 16:18:28 Policy user1-alicloud-openshift-machine-api-alibabacloud-credentials-policy-policy has attached on user user1-alicloud-openshift-machine-api-alibabacloud-credentials 2022/02/11 16:18:29 Created access keys for RAM User: user1-alicloud-openshift-machine-api-alibabacloud-credentials 2022/02/11 16:18:29 Saved credentials configuration to: user1-alicloud/manifests/openshift-machine-api-alibabacloud-credentials-credentials.yaml ...
참고RAM 사용자는 두 개의 AccessKey를 동시에 가질 수 있습니다.
ccoctl alibabacloud create-ram-users
를 두 번 이상 실행하면 이전에 생성된 매니페스트 시크릿이 오래되어 새로 생성된 시크릿을 다시 적용해야 합니다.-
OpenShift Container Platform 시크릿이 생성되었는지 확인합니다.
$ ls <path_to_ccoctl_output_dir>/manifests
출력 예:
openshift-cluster-csi-drivers-alibaba-disk-credentials-credentials.yaml openshift-image-registry-installer-cloud-credentials-credentials.yaml openshift-ingress-operator-cloud-credentials-credentials.yaml openshift-machine-api-alibabacloud-credentials-credentials.yaml
Alibaba Cloud를 쿼리하여 RAM 사용자 및 정책의 생성 여부를 확인할 수 있습니다. 자세한 내용은 RAM 사용자 및 정책을 나열에 대한 Alibaba Cloud 문서를 참조하십시오.
생성된 자격 증명 파일을 대상 매니페스트 디렉터리에 복사합니다.
$ cp ./<path_to_ccoctl_output_dir>/manifests/*credentials.yaml ./<path_to_installation>dir>/manifests/
다음과 같습니다.
<path_to_ccoctl_output_dir>
-
ccoctl alibabacloud create-ram-users
명령으로 생성된 디렉터리를 지정합니다. <path_to_installation_dir>
- 설치 프로그램이 파일을 생성하는 디렉터리를 지정합니다.