HCP 클러스터를 사용하여 ROSA 설치
ROSA(AWS) 클러스터에 Red Hat OpenShift Service 설치, 액세스 및 삭제.
초록
1장. 기본 옵션을 사용하여 HCP 클러스터로 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA Classic의 빠른 시작 가이드를 찾고 있는 경우 Red Hat OpenShift Service on AWS 빠른 시작 가이드를 참조하십시오.
호스팅된 컨트롤 플레인(HCP)이 있는 Red Hat OpenShift Service on AWS(ROSA)는 AWS(ROSA) 클러스터에서 Red Hat OpenShift Service를 생성하기 위한 보다 효율적이고 안정적인 아키텍처를 제공합니다. ROSA HCP가 있는 경우 각 클러스터에는 ROSA 서비스 계정에서 격리된 전용 컨트롤 플레인이 있습니다.
기본 옵션 및 자동 AWS IAM(Identity and Access Management) 리소스 생성을 사용하여 HCP 클러스터로 ROSA를 빠르게 생성합니다. ROSA CLI(rosa)를 사용하여 클러스터를 배포할 수 있습니다.
기존 ROSA 클러스터를 호스팅된 컨트롤 플레인 아키텍처로 업그레이드하거나 변환할 수 없으므로 HCP 기능과 함께 ROSA를 사용할 새 클러스터를 생성해야 합니다.
여러 AWS 계정에서 VPC를 공유하는 것은 현재 HCP를 사용하여 ROSA에서 지원되지 않습니다. HCP 클러스터의 ROSA를 다른 AWS 계정에서 공유하는 서브넷에 설치하지 마십시오. 자세한 내용은 "Single VPC에서 여러 ROSA 클러스터 지원 "을 참조하십시오.
HCP 클러스터가 있는 ROSA는 AWS STS(Security Token Service) 인증만 지원합니다.
추가 읽기
- ROSA와 HCP 및 ROSA Classic의 비교는 Comparing architecture models 문서를 참조하십시오.
- ROSA CLI를 자동 모드에서 사용하여 HCP로 ROSA 시작하기에 대한 자세한 내용은 AWS 설명서를 참조하십시오.
자동 생성 모드에 대한 고려 사항
이 문서의 절차에서는 ROSA CLI의 auto 모드를 사용하여 현재 AWS 계정을 사용하여 필요한 IAM 리소스를 즉시 생성합니다. 필요한 리소스에는 계정 전체의 IAM 역할 및 정책, 클러스터별 Operator 역할 및 정책, OIDC(OpenID Connect) ID 공급자가 포함됩니다.
또는 수동 모드를 사용할 수 있습니다. 이 모드를 사용하면 자동으로 배포하는 대신 IAM 리소스를 생성하는 데 필요한 aws 명령을 출력할 수 있습니다.
다음 단계
- AWS 사전 요구 사항을 완료했는지 확인합니다.
1.1. 기본 클러스터 사양 개요 링크 복사링크가 클립보드에 복사되었습니다!
기본 설치 옵션을 사용하여 STS(Security Token Service)를 사용하여 AWS(ROSA)에서 Red Hat OpenShift Service를 빠르게 생성할 수 있습니다. 다음 요약에서는 기본 클러스터 사양을 설명합니다.
| 구성 요소 | 기본 사양 |
|---|---|
| 계정 및 역할 |
|
| 클러스터 설정 |
|
| 컨트롤 플레인 노드 구성 |
|
| 컴퓨팅 노드 시스템 풀 |
|
| 네트워킹 구성 |
|
| CIDR(Classless Inter-Domain Routing) 범위 |
|
| 클러스터 역할 및 정책 |
|
| 스토리지 |
|
| 클러스터 업데이트 전략 |
|
1.2. HCP 사전 요구 사항이 있는 ROSA 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터를 사용하여 ROSA를 생성하려면 다음 항목이 있어야 합니다.
- 구성된 VPC(가상 프라이빗 클라우드)
- 계정 전체 역할
- OIDC 구성
- Operator 역할
1.2.1. HCP 클러스터를 사용하여 ROSA용 가상 프라이빗 클라우드 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터를 사용하여 ROSA를 생성하려면 VPC(Virtual Private Cloud)가 있어야 합니다. 다음 방법을 사용하여 VPC를 생성할 수 있습니다.
- ROSA CLI를 사용하여 VPC 생성
- Terraform 템플릿을 사용하여 VPC 생성
- AWS 콘솔에서 VPC 리소스 수동 생성
Terraform 지침은 테스트 및 시연을 목적으로 합니다. 자체 설치를 수행하려면 VPC를 일부 수정해야 합니다. 또한 이 Terraform 스크립트를 사용할 때 클러스터를 설치하려는 리전과 동일한 지역에 있는지 확인해야 합니다. 이 예제에서는 us-east-2 를 사용합니다.
ROSA CLI를 사용하여 가상 사설 클라우드 생성
rosa create network 명령은 ROSA CLI(명령줄 인터페이스)의 v.1.2.48 이상에서 사용할 수 있습니다. 이 명령은 AWS CloudFormation을 사용하여 VPC 및 ROSA 클러스터를 설치하는 데 사용되는 기타 네트워킹 구성 요소를 생성합니다. CloudFormation은 네이티브 AWS 인프라형 툴이며 AWS CLI와 호환됩니다.
템플릿을 지정하지 않으면 CloudFormation은 다음 매개변수를 생성하는 기본 템플릿을 사용합니다.
| VPC 매개변수 | 현재의 |
|---|---|
| 가용성 영역 | 1 |
| 리전 |
|
| VPC CIDR |
|
rosa create network 명령과 함께 사용할 CloudFormation 템플릿을 생성하고 사용자 지정할 수 있습니다. 기본 VPC 템플릿에 대한 자세한 내용은 이 섹션의 추가 리소스를 참조하십시오.
사전 요구 사항
- AWS 계정을 구성했습니다.
- Red Hat 계정을 구성했습니다.
- ROSA CLI를 설치하고 최신 버전으로 구성했습니다.
절차
다음 명령을 실행하여 기본 CloudFormations 템플릿을 사용하여 AWS VPC를 생성합니다.
rosa create network
$ rosa create networkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 추가 매개변수를 지정하여 VPC를 사용자 지정합니다.
--param플래그를 사용하여 기본 VPC 템플릿의 변경 사항을 지정할 수 있습니다. 다음 예제 명령은리전,Name,AvailabilityZoneCount및VpcCidr에 대한 사용자 지정 값을 지정합니다.rosa create network --param Region=us-east-2 --param Name=quickstart-stack --param AvailabilityZoneCount=3 --param VpcCidr=10.0.0.0/16
$ rosa create network --param Region=us-east-2 --param Name=quickstart-stack --param AvailabilityZoneCount=3 --param VpcCidr=10.0.0.0/16Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령을 실행하는 데 약 5분이 걸리며 리소스가 생성될 때 AWS에서 정기적인 상태 업데이트를 제공합니다. CloudFormation에 문제가 있는 경우 롤백이 시도됩니다. 다른 모든 오류가 발생하면 오류 메시지 지침을 따르거나 AWS 지원에 문의하십시오.
검증
완료되면 생성된 리소스에 대한 요약이 표시됩니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Terraform을 사용하여 가상 사설 클라우드 생성
Terraform은 설정된 템플릿을 사용하여 다양한 리소스를 생성할 수 있는 툴입니다. 다음 프로세스는 HCP 클러스터를 사용하여 ROSA를 생성하는 데 필요한 기본 옵션을 사용합니다. Terraform 사용에 대한 자세한 내용은 추가 리소스를 참조하십시오.
사전 요구 사항
- 시스템에 Terraform 버전 1.4.0 이상을 설치했습니다.
- 시스템에 Git을 설치했습니다.
절차
쉘 프롬프트를 열고 다음 명령을 실행하여 Terraform VPC 리포지토리를 복제합니다.
git clone https://github.com/openshift-cs/terraform-vpc-example
$ git clone https://github.com/openshift-cs/terraform-vpc-exampleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 생성된 디렉터리로 이동합니다.
cd terraform-vpc-example
$ cd terraform-vpc-exampleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Terraform 파일을 시작합니다.
terraform init
$ terraform initCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 프로세스가 완료되면 초기화를 확인하는 메시지가 표시됩니다.
기존 Terraform 템플릿을 기반으로 VPC Terraform 계획을 빌드하려면
plan명령을 실행합니다. AWS 리전을 포함해야 합니다. 클러스터 이름을 지정하도록 선택할 수 있습니다.rosa.tfplan파일은테라폼계획이 완료된 후hypershift-tf디렉토리에 추가됩니다. 자세한 옵션은 Terraform VPC 리포지토리의 README 파일을 참조하십시오.terraform plan -out rosa.tfplan -var region=<region>
$ terraform plan -out rosa.tfplan -var region=<region>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 VPC를 빌드하려면 이 계획 파일을 적용합니다.
terraform apply rosa.tfplan
$ terraform apply rosa.tfplanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 다음 명령을 실행하여 HCP 클러스터로 ROSA를 생성할 때 사용할 Terraform-provisioned 개인, 공용 및 머신 풀 서브넷 ID 값을 환경 변수로 캡처할 수 있습니다.
export SUBNET_IDS=$(terraform output -raw cluster-subnets-string)
$ export SUBNET_IDS=$(terraform output -raw cluster-subnets-string)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 사용하여 변수가 올바르게 설정되었는지 확인합니다.
echo $SUBNET_IDS
$ echo $SUBNET_IDSCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
subnet-0a6a57e0f784171aa,subnet-078e84e5b10ecf5b0
$ subnet-0a6a57e0f784171aa,subnet-078e84e5b10ecf5b0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
수동으로 가상 프라이빗 클라우드 생성
Terraform을 사용하는 대신 VPC(Virtual Private Cloud)를 수동으로 생성하도록 선택하는 경우 AWS 콘솔의 VPC 페이지로 이동합니다.
VPC는 다음 표에 표시된 요구 사항을 충족해야 합니다.
| 요구 사항 | 세부 정보 |
|---|---|
| VPC 이름 | 클러스터를 생성할 때 특정 VPC 이름과 ID가 있어야합니다. |
| CIDR 범위 | VPC CIDR 범위는 머신 CIDR과 일치해야 합니다. |
| 가용성 영역 | 단일 영역에 하나의 가용성 영역이 필요하며, 다중 영역의 가용성 영역인 경우 3개가 필요합니다. |
| 퍼블릭 서브넷 | 공용 클러스터에 대해 NAT 게이트웨이가 있는 퍼블릭 서브넷이 1개 있어야 합니다. 프라이빗 클러스터에는 퍼블릭 서브넷이 필요하지 않습니다. |
| DNS 호스트 이름 및 확인 | DNS 호스트 이름 및 확인이 활성화되어 있는지 확인해야 합니다. |
1.2.3. 계정 전체 STS 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA(Red Hat OpenShift Service on AWS) CLI(rosa)를 사용하여 호스팅된 컨트롤 플레인(HCP) 클러스터가 있는 AWS(ROSA)에서 Red Hat OpenShift Service를 생성하기 전에 Operator 정책을 포함하여 필요한 계정 전체 역할 및 정책을 생성합니다.
HCP 클러스터를 사용하는 ROSA에는 AWS 관리 정책이 연결된 계정 및 Operator 역할이 필요합니다. 고객 관리 정책은 지원되지 않습니다. HCP 클러스터의 ROSA 관리 정책에 대한 자세한 내용은 ROSA 계정 역할에 대한 AWS 관리 정책을 참조하십시오.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
절차
AWS 계정에 없는 경우 필요한 계정 전체 STS 역할을 생성하고 다음 명령을 실행하여 정책을 연결합니다.
rosa create account-roles --hosted-cp
$ rosa create account-roles --hosted-cpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 다음 명령을 실행하여 접두사를 환경 변수로 설정합니다.
export ACCOUNT_ROLES_PREFIX=<account_role_prefix>
$ export ACCOUNT_ROLES_PREFIX=<account_role_prefix>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 변수 값을 확인합니다.
echo $ACCOUNT_ROLES_PREFIX
$ echo $ACCOUNT_ROLES_PREFIXCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ManagedOpenShift
ManagedOpenShiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ROSA의 AWS 관리 IAM 정책에 대한 자세한 내용은 ROSA의 AWS 관리 IAM 정책을 참조하십시오.
1.2.4. OpenID Connect 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
AWS 클러스터에서 Red Hat OpenShift Service를 사용하는 경우 클러스터를 생성하기 전에 OpenID Connect(OIDC) 구성을 생성할 수 있습니다. 이 구성은 OpenShift Cluster Manager와 함께 사용하도록 등록됩니다.
사전 요구 사항
- AWS에서 Red Hat OpenShift Service에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 최신 Red Hat OpenShift Service on AWS(ROSA) CLI를 설치하고 구성했습니다.
절차
AWS 리소스와 함께 OIDC 구성을 생성하려면 다음 명령을 실행합니다.
rosa create oidc-config --mode=auto --yes
$ rosa create oidc-config --mode=auto --yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 다음 정보를 반환합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터를 생성할 때 OIDC 구성 ID를 제공해야 합니다. CLI 출력은
--mode auto에 대해 이 값을 제공합니다. 그렇지 않으면--mode 수동에 대한awsCLI 출력에 따라 이러한 값을 결정해야합니다.선택 사항: 나중에 사용할 수 있도록 OIDC 구성 ID를 변수로 저장할 수 있습니다. 다음 명령을 실행하여 변수를 저장합니다.
export OIDC_ID=<oidc_config_id>
$ export OIDC_ID=<oidc_config_id>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 위의 출력 예에서 OIDC 구성 ID는 13cdr6b입니다.
다음 명령을 실행하여 변수 값을 확인합니다.
echo $OIDC_ID
$ echo $OIDC_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
13cdr6b
13cdr6bCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
사용자 조직과 연결된 클러스터에 사용 가능한 OIDC 구성을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list oidc-config
$ rosa list oidc-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDN
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDNCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.5. Operator 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터와 함께 ROSA를 사용하는 경우 호스팅되는 컨트롤 플레인(HCP) 배포와 함께 ROSA(Red Hat OpenShift Service on AWS)에 필요한 Operator IAM 역할을 생성해야 합니다. 클러스터 Operator는 Operator 역할을 사용하여 백엔드 스토리지, 클라우드 공급자 인증 정보 관리, 클러스터에 대한 외부 액세스와 같은 클러스터 작업을 수행하는 데 필요한 임시 권한을 얻습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 AWS ROSA CLI(
rosa)에 최신 Red Hat OpenShift Service를 설치하고 구성했습니다. - 계정 전체 AWS 역할을 생성하셨습니다.
절차
다음 명령을 사용하여 접두사 이름을 환경 변수로 설정합니다.
export OPERATOR_ROLES_PREFIX=<prefix_name>
$ export OPERATOR_ROLES_PREFIX=<prefix_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Operator 역할을 생성하려면 다음 명령을 실행합니다.
rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-RoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 분석에서는 Operator 역할 생성에 대한 옵션을 제공합니다.
rosa create operator-roles --hosted-cp
$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX1 --oidc-config-id=$OIDC_ID2 --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow HCP 클러스터의 ROSA에 올바른 역할을 생성하려면
--hosted-cp매개변수를 포함해야 합니다. 이 명령은 다음 정보를 반환합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제 Operator 역할이 생성되어 HCP 클러스터를 사용하여 ROSA를 생성할 준비가 되었습니다.
검증
ROSA 계정과 연결된 Operator 역할을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list operator-roles
$ rosa list operator-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 명령을 실행한 후 AWS 계정과 연결된 모든 접두사를 표시하고 이 접두사와 연결된 역할 수를 기록합니다. 이러한 역할과 세부 정보를 모두 확인해야 하는 경우 세부 정보 프롬프트에 이러한 역할을 나열하도록 "예"를 입력합니다.
1.3. CLI를 사용하여 HCP 클러스터로 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA(Red Hat OpenShift Service on AWS) CLI인 rosa 를 사용하여 클러스터를 생성하는 경우 기본 옵션을 선택하여 클러스터를 빠르게 생성할 수 있습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다.rosa 버전을실행하여 현재 설치된 ROSA CLI 버전을 확인합니다. 최신 버전을 사용할 수 있는 경우 CLI는 이 업그레이드를 다운로드할 수 있는 링크를 제공합니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
- OIDC 구성을 생성했습니다.
- AWS 계정에 ELB(Elastic Load Balancing) 서비스 역할이 있는지 확인했습니다.
절차
다음 명령 중 하나를 사용하여 HCP 클러스터로 ROSA를 생성합니다.
참고HCP 클러스터를 사용하여 ROSA를 생성할 때 기본 머신 Classless Inter-Domain Routing (CIDR)은
10.0.0.0/16입니다. VPC 서브넷의 CIDR 범위에 해당하지 않는 경우 다음 명령에--machine-cidr <address_block>을 추가합니다. AWS에서 Red Hat OpenShift Service의 기본 CIDR 범위에 대한 자세한 내용은 CIDR 범위 정의를 참조하십시오.환경 변수를 설정하지 않은 경우 다음 명령을 실행합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 클러스터 이름을 지정합니다. 클러스터 이름이 15자보다 긴 경우 openshiftapps.com에서 프로비저닝된 클러스터의 하위 도메인으로 자동 생성된 도메인 접두사가 포함됩니다. 하위 도메인을 사용자 지정하려면
--domain-prefix플래그를 사용합니다. 도메인 접두사는 15자를 초과할 수 없으며 고유해야 하며 클러스터 생성 후에는 변경할 수 없습니다. - 2
- 선택 사항:
--private인수는 HCP 클러스터를 사용하여 개인 ROSA를 생성하는 데 사용됩니다. 이 인수를 사용하는 경우--subnet-ids에 프라이빗 서브넷 ID만 사용해야 합니다. - 3
- 기본적으로 클러스터별 Operator 역할 이름 앞에는 클러스터 이름과 임의의 4자리 해시가 추가됩니다. 선택 옵션으로 역할 이름에 <
cluster_name>-<hash>를 대체할 사용자 지정 접두사를 지정할 수 있습니다. 접두사는 클러스터별 Operator IAM 역할을 생성할 때 적용됩니다. 접두사에 대한 자세한 내용은 사용자 정의 Operator IAM 역할 접두사 정보를 참조하십시오.참고연결된 계정 전체 역할을 생성할 때 사용자 정의 ARN 경로를 지정한 경우 사용자 정의 경로가 자동으로 감지됩니다. 사용자 정의 경로는 이후 단계에서 생성할 때 클러스터별 Operator 역할에 적용됩니다.
- 4
- 선택 사항: 다른 계정에서 역할을 가정할 때 필요할 수 있는 고유 식별자입니다.
환경 변수를 설정하는 경우 다음 명령을 실행하여 공개적으로 사용 가능한 API 및 공개적으로 사용 가능한 Ingress를 사용하여 단일 초기 머신 풀로 클러스터를 생성합니다.
rosa create cluster --private --cluster-name=<cluster_name> \ --mode=auto --hosted-cp --operator-roles-prefix=$OPERATOR_ROLES_PREFIX \ --oidc-config-id=$OIDC_ID --subnet-ids=$SUBNET_IDS$ rosa create cluster --private --cluster-name=<cluster_name> \ --mode=auto --hosted-cp --operator-roles-prefix=$OPERATOR_ROLES_PREFIX \ --oidc-config-id=$OIDC_ID --subnet-ids=$SUBNET_IDSCopy to Clipboard Copied! Toggle word wrap Toggle overflow 환경 변수를 설정하는 경우 다음 명령을 실행하여 단일 초기 머신 풀, 공개적으로 사용 가능한 API 및 공개적으로 사용 가능한 Ingress로 클러스터를 생성합니다.
rosa create cluster --cluster-name=<cluster_name> --mode=auto \ --hosted-cp --operator-roles-prefix=$OPERATOR_ROLES_PREFIX \ --oidc-config-id=$OIDC_ID --subnet-ids=$SUBNET_IDS$ rosa create cluster --cluster-name=<cluster_name> --mode=auto \ --hosted-cp --operator-roles-prefix=$OPERATOR_ROLES_PREFIX \ --oidc-config-id=$OIDC_ID --subnet-ids=$SUBNET_IDSCopy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여 클러스터 상태를 확인합니다.
rosa describe cluster --cluster=<cluster_name>
$ rosa describe cluster --cluster=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 설치가 진행됨에 따라 다음
상태필드 변경 사항이 출력에 나열됩니다.-
보류 (사전 계정) -
설치 ( 진행 중인 DNS 설정) -
설치 Ready참고설치에 실패하거나 10분 이상
State필드가준비상태가 아닌 경우 자세한 내용은 설치 문제 해결 설명서를 확인하십시오. 자세한 내용은 설치 문제 해결을 참조하십시오. Red Hat 지원에 문의하려면 AWS에서 Red Hat OpenShift Service에 대한 지원 받기를 참조하십시오.
-
AWS 설치 프로그램 로그에서 Red Hat OpenShift Service를 확인하여 클러스터 생성 진행 상황을 추적합니다. 로그를 확인하려면 다음 명령을 실행합니다.
rosa logs install --cluster=<cluster_name> --watch \
$ rosa logs install --cluster=<cluster_name> --watch \1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 선택 사항: 설치가 진행되는 동안 새 로그 메시지를 감시하려면
--watch인수를 사용합니다.
1.4. 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
2장. Terraform을 사용하여 ROSA 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
2.1. Terraform을 사용하여 기본 ROSA 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
기본 클러스터 옵션으로 구성된 Terraform 클러스터 템플릿을 사용하여 AWS(ROSA)에서 Red Hat OpenShift Service를 빠르게 생성합니다.
아래에 설명된 클러스터 생성 프로세스에서는 다음 리소스를 사용하여 HCP 클러스터로 ROSA를 준비하는 Terraform 구성을 사용합니다.
-
관리
oidc-config구성이 있는 OIDC 공급자 - AWS Managed ROSA 정책과 관련된 사전 요구 사항 IAM Operator 역할
- AWS Managed ROSA 정책이 연결된 IAM 계정 역할
- STS 클러스터를 사용하여 ROSA를 생성하는 데 필요한 기타 모든 AWS 리소스
2.1.1. Terraform 개요 링크 복사링크가 클립보드에 복사되었습니다!
Terraform은 리소스를 한 번 구성하고 해당 리소스를 원하는 대로 복제하는 방법을 제공하는 코드 기반 도구입니다. Terraform은 선언적 언어를 사용하여 생성 작업을 수행합니다. 인프라 리소스의 최종 상태를 선언하고 Terraform은 이러한 리소스를 사양에 맞게 생성합니다.
사전 요구 사항
Terraform 구성 내에서 Red Hat Cloud Services 공급자 를 사용하려면 다음 사전 요구 사항을 충족해야 합니다.
- AWS(ROSA) 명령줄 인터페이스(CLI) 툴에 Red Hat OpenShift Service를 설치했습니다.
- 오프라인 Red Hat OpenShift Cluster Manager 토큰이 있습니다.
- Terraform 버전 1.4.6 이상이 설치되어 있습니다.
AWS 계정 전체 IAM 역할을 생성했습니다.
특정 계정 전체 IAM 역할 및 정책은 ROSA 지원, 설치, 컨트롤 플레인 및 컴퓨팅 기능에 필요한 STS 권한을 제공합니다. 여기에는 계정 전체 Operator 정책이 포함됩니다. AWS 계정 역할에 대한 자세한 내용은 추가 리소스를 참조하십시오.
- AWS 계정 및 관련 인증 정보가 있어 리소스를 생성할 수 있습니다. 인증 정보는 AWS 공급자용으로 구성됩니다. AWS Terraform 공급자 설명서의 인증 및 구성 섹션을 참조하십시오.
최소한 Terraform이 작동하는 AWS IAM 역할 정책에서 다음 권한이 있습니다. AWS 콘솔에서 이러한 권한을 확인합니다.
예 2.1. Terraform에 대한 최소 AWS 권한
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Terraform 사용 시 고려 사항
일반적으로 Terraform을 사용하여 클라우드 리소스 관리는 Terraform 방법론을 사용하여 변경 사항을 수행해야 합니다. AWS 콘솔 또는 Red Hat 콘솔과 같은 Terraform 외부의 툴을 사용하여 Terraform이 생성한 클라우드 리소스를 수정할 때는 주의하십시오. Terraform 이외의 툴을 사용하여 Terraform에서 이미 관리하는 클라우드 리소스를 관리하면 선언된 Terraform 구성의 구성 드리프트가 도입되었습니다.
예를 들어 Red Hat Hybrid Cloud Console 을 사용하여 Terraform이 생성된 클러스터를 업그레이드하는 경우 향후 구성 변경 사항을 적용하기 전에 Terraform 상태를 조정해야 합니다. 자세한 내용은 HashiCorp 개발자 설명서의 Terraform 상태에서 리소스 관리를 참조하십시오.
2.1.2. 기본 클러스터 사양 개요 링크 복사링크가 클립보드에 복사되었습니다!
| 구성 요소 | 기본 사양 |
|---|---|
| 계정 및 역할 |
|
| 클러스터 설정 |
|
| 암호화 |
|
| 컨트롤 플레인 노드 구성 |
|
| 인프라 노드 구성 |
|
| 컴퓨팅 노드 시스템 풀 |
|
| 네트워킹 구성 |
|
| CIDR(Classless Inter-Domain Routing) 범위 |
|
| 클러스터 역할 및 정책 |
|
| 스토리지 |
|
| 클러스터 업데이트 전략 |
|
2.1.3. Terraform을 사용하여 기본 ROSA 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
아래에 설명된 클러스터 생성 프로세스는 Terraform을 사용하여 계정 전체 IAM 역할 및 관리 OIDC 구성으로 ROSA 클러스터를 생성하는 방법을 보여줍니다.
2.1.3.1. Terraform을 위한 환경 준비 링크 복사링크가 클립보드에 복사되었습니다!
Terraform을 사용하여 AWS 클러스터에서 Red Hat OpenShift Service를 생성하려면 오프라인 Red Hat OpenShift Cluster Manager 토큰 을 내보내야 합니다.
절차
선택 사항: 이 절차 중에 Terraform 파일이 현재 디렉터리에 생성되므로 새 디렉터리를 생성하여 이러한 파일을 저장하고 다음 명령을 실행하여 이 파일로 이동할 수 있습니다.
mkdir terraform-cluster && cd terraform-cluster
$ mkdir terraform-cluster && cd terraform-clusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 오프라인 Red Hat OpenShift Cluster Manager 토큰을 사용하여 계정에 권한을 부여합니다.
오프라인 토큰을 복사하고 다음 명령을 실행하여 토큰을 환경 변수로 설정합니다.
export RHCS_TOKEN=<your_offline_token>
$ export RHCS_TOKEN=<your_offline_token>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고이 환경 변수는 시스템을 다시 시작하거나 터미널을 닫는 등 각 세션이 끝날 때 재설정됩니다.
검증
토큰을 내보낸 후 다음 명령을 실행하여 값을 확인합니다.
echo $RHCS_TOKEN
$ echo $RHCS_TOKENCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.1.3.2. Terraform 파일을 로컬에서 생성 링크 복사링크가 클립보드에 복사되었습니다!
오프라인 Red Hat OpenShift Cluster Manager 토큰 을 설정한 후 클러스터를 빌드하려면 Terraform 파일을 로컬로 생성해야 합니다. 다음 코드 템플릿을 사용하여 이러한 파일을 생성할 수 있습니다.
절차
다음 명령을 실행하여
main.tf파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 선택 사항: 적절한 매개변수의 주석을 제거하고 필요한 경우 값을 편집하여 클러스터 생성 중에 관리자를 생성합니다.
다음 명령을 실행하여
variables.tf파일을 생성합니다.참고클러스터를 빌드하도록 명령을 실행하기 전에 이 파일을 복사하고 편집합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
vpc.tf파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform을 시작할 준비가 되어 있습니다.
2.1.3.3. Terraform을 사용하여 ROSA 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
Terraform 파일을 생성한 후 필요한 모든 종속 항목을 제공하려면 Terraform을 시작해야 합니다. 그런 다음 Terraform 계획을 적용합니다.
Terraform 상태 파일을 수정하지 마십시오. 자세한 내용은 Terraform 사용 시 고려 사항을참조하십시오.
절차
Terraform 파일을 기반으로 리소스를 생성하려면 다음 명령을 실행합니다.
terraform init
$ terraform initCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 복사한 Terraform이 다음 명령을 실행하여 올바른지 확인합니다.
terraform validate
$ terraform validateCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Success! The configuration is valid.
Success! The configuration is valid.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Terraform으로 클러스터를 생성합니다.
terraform apply
$ terraform applyCopy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform 인터페이스는 다음과 같이 클러스터를 생성하도록 두 가지 질문을 합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform 인터페이스에 생성 또는 변경할 리소스가 나열되고 확인 메시지가 표시되면
yes를 입력하여 취소하십시오.출력 예
Plan: 63 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve.
Plan: 63 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve.Copy to Clipboard Copied! Toggle word wrap Toggle overflow yes를 입력하면 Terraform 계획이 시작되어 AWS 계정 역할, Operator 역할 및 ROSA Classic 클러스터를 생성합니다.
검증
다음 명령을 실행하여 클러스터가 생성되었는지 확인합니다.
rosa list clusters
$ rosa list clustersCopy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 ID, 이름 및 상태를 보여주는 출력 예
ID NAME STATE TOPOLOGY 27c3snjsupa9obua74ba8se5kcj11269 rosa-tf-demo ready Classic (STS)
ID NAME STATE TOPOLOGY 27c3snjsupa9obua74ba8se5kcj11269 rosa-tf-demo ready Classic (STS)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 계정 역할이 생성되었는지 확인합니다.
rosa list account-roles
$ rosa list account-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Fetching account roles ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION AWS Managed ROSA-demo-Installer-Role Installer arn:aws:iam::<ID>:role/ROSA-demo-Installer-Role 4.14 No ROSA-demo-Support-Role Support arn:aws:iam::<ID>:role/ROSA-demo-Support-Role 4.14 No ROSA-demo-Worker-Role Worker arn:aws:iam::<ID>:role/ROSA-demo-Worker-Role 4.14 No
I: Fetching account roles ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION AWS Managed ROSA-demo-Installer-Role Installer arn:aws:iam::<ID>:role/ROSA-demo-Installer-Role 4.14 No ROSA-demo-Support-Role Support arn:aws:iam::<ID>:role/ROSA-demo-Support-Role 4.14 No ROSA-demo-Worker-Role Worker arn:aws:iam::<ID>:role/ROSA-demo-Worker-Role 4.14 NoCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Operator 역할이 생성되었는지 확인합니다.
rosa list operator-roles
$ rosa list operator-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform-created Operator 역할을 표시하는 출력 예
I: Fetching operator roles ROLE PREFIX AMOUNT IN BUNDLE rosa-demo 8
I: Fetching operator roles ROLE PREFIX AMOUNT IN BUNDLE rosa-demo 8Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.1.3.4. Terraform을 사용하여 ROSA 클러스터 삭제 링크 복사링크가 클립보드에 복사되었습니다!
terraform destroy 명령을 사용하여 terraform apply 명령으로 생성된 모든 리소스를 제거합니다.
리소스를 제거하기 전에 Terraform .tf 파일을 수정하지 마십시오. 이러한 변수는 삭제할 리소스와 일치합니다.
절차
terraform apply명령을 실행하여 클러스터를 생성한 디렉터리에서 다음 명령을 실행하여 클러스터를 삭제합니다.terraform destroy
$ terraform destroyCopy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform 인터페이스에서 두 가지 변수를 입력하라는 메시지를 표시합니다. 이는 클러스터를 생성할 때 제공한 응답과 일치해야 합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yes를 입력하여 역할을 시작하고 클러스터 삭제를 시작합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 클러스터가 삭제되었는지 확인합니다.
rosa list clusters
$ rosa list clustersCopy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 없이 표시되는 출력 예
I: No clusters available
I: No clusters availableCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 계정 역할이 삭제되었는지 확인합니다.
rosa list account-roles
$ rosa list account-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform-created 계정 역할이 표시되지 않는 출력 예
I: Fetching account roles I: No account roles available
I: Fetching account roles I: No account roles availableCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Operator 역할이 삭제되었는지 확인합니다.
rosa list operator-roles
$ rosa list operator-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow Terraform-created Operator 역할이 표시되지 않는 출력 예
I: Fetching operator roles I: No operator roles available
I: Fetching operator roles I: No operator roles availableCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3장. 사용자 정의 AWS KMS 암호화 키를 사용하여 HCP 클러스터로 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
사용자 지정 AWS KMS(Key Management Service) 키를 사용하여 호스팅되는 컨트롤 플레인(HCP) 클러스터를 사용하여 AWS(ROSA)에서 Red Hat OpenShift Service를 생성합니다.
3.1. HCP 사전 요구 사항이 있는 ROSA 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터를 사용하여 ROSA를 생성하려면 다음 항목이 있어야 합니다.
- 구성된 VPC(가상 프라이빗 클라우드)
- 계정 전체 역할
- OIDC 구성
- Operator 역할
3.2. HCP 클러스터를 사용하여 ROSA용 가상 프라이빗 클라우드 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터를 사용하여 ROSA를 생성하려면 VPC(Virtual Private Cloud)가 있어야 합니다. 다음 방법 중 하나를 사용하여 VPC를 생성합니다.
- ROSA CLI(명령줄 인터페이스)를 사용하여 VPC 생성
- Terraform 템플릿을 사용하여 VPC 생성
- AWS 콘솔에서 VPC 리소스 수동 생성
Terraform 지침은 테스트 및 시연을 목적으로 합니다. 자체 설치를 수행하려면 VPC를 일부 수정해야 합니다. 또한 이 Terraform 스크립트를 사용할 때 클러스터를 설치하려는 리전과 동일한 지역에 있는지 확인해야 합니다. 이 예제에서는 us-east-2 를 사용합니다.
ROSA CLI를 사용하여 가상 사설 클라우드 생성
rosa create network 명령은 ROSA CLI(명령줄 인터페이스)의 v.1.2.48 이상에서 사용할 수 있습니다. 이 명령은 AWS CloudFormation을 사용하여 VPC 및 ROSA 클러스터를 설치하는 데 사용되는 기타 네트워킹 구성 요소를 생성합니다. CloudFormation은 네이티브 AWS 인프라형 툴이며 AWS CLI와 호환됩니다.
템플릿을 지정하지 않으면 CloudFormation은 다음 매개변수를 생성하는 기본 템플릿을 사용합니다.
| VPC 매개변수 | 현재의 |
|---|---|
| 가용성 영역 | 1 |
| 리전 |
|
| VPC CIDR |
|
rosa create network 명령과 함께 사용할 CloudFormation 템플릿을 생성하고 사용자 지정할 수 있습니다. 기본 VPC 템플릿에 대한 자세한 내용은 이 섹션의 추가 리소스를 참조하십시오.
사전 요구 사항
- AWS 계정을 구성했습니다.
- Red Hat 계정을 구성했습니다.
- ROSA CLI를 설치하고 최신 버전으로 구성했습니다.
절차
다음 명령을 실행하여 기본 CloudFormations 템플릿을 사용하여 AWS VPC를 생성합니다.
rosa create network
$ rosa create networkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 추가 매개변수를 지정하여 VPC를 사용자 지정합니다.
--param플래그를 사용하여 기본 VPC 템플릿의 변경 사항을 지정할 수 있습니다. 다음 예제 명령은리전,Name,AvailabilityZoneCount및VpcCidr에 대한 사용자 지정 값을 지정합니다.rosa create network --param Region=us-east-2 --param Name=quickstart-stack --param AvailabilityZoneCount=3 --param VpcCidr=10.0.0.0/16
$ rosa create network --param Region=us-east-2 --param Name=quickstart-stack --param AvailabilityZoneCount=3 --param VpcCidr=10.0.0.0/16Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령을 실행하는 데 약 5분이 걸리며 리소스가 생성될 때 AWS에서 정기적인 상태 업데이트를 제공합니다. CloudFormation에 문제가 있는 경우 롤백이 시도됩니다. 다른 모든 오류가 발생하면 오류 메시지 지침을 따르거나 AWS 지원에 문의하십시오.
검증
완료되면 생성된 리소스에 대한 요약이 표시됩니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Terraform을 사용하여 가상 사설 클라우드 생성
Terraform은 설정된 템플릿을 사용하여 다양한 리소스를 생성할 수 있는 툴입니다. 다음 프로세스는 HCP 클러스터를 사용하여 ROSA를 생성하는 데 필요한 기본 옵션을 사용합니다. Terraform 사용에 대한 자세한 내용은 추가 리소스를 참조하십시오.
사전 요구 사항
- 시스템에 Terraform 버전 1.4.0 이상을 설치했습니다.
- 시스템에 Git을 설치했습니다.
절차
쉘 프롬프트를 열고 다음 명령을 실행하여 Terraform VPC 리포지토리를 복제합니다.
git clone https://github.com/openshift-cs/terraform-vpc-example
$ git clone https://github.com/openshift-cs/terraform-vpc-exampleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 생성된 디렉터리로 이동합니다.
cd terraform-vpc-example
$ cd terraform-vpc-exampleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Terraform 파일을 시작합니다.
terraform init
$ terraform initCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 프로세스가 완료되면 초기화를 확인하는 메시지가 표시됩니다.
기존 Terraform 템플릿을 기반으로 VPC Terraform 계획을 빌드하려면
plan명령을 실행합니다. AWS 리전을 포함해야 합니다. 클러스터 이름을 지정하도록 선택할 수 있습니다.rosa.tfplan파일은테라폼계획이 완료된 후hypershift-tf디렉토리에 추가됩니다. 자세한 옵션은 Terraform VPC 리포지토리의 README 파일을 참조하십시오.terraform plan -out rosa.tfplan -var region=<region>
$ terraform plan -out rosa.tfplan -var region=<region>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 VPC를 빌드하려면 이 계획 파일을 적용합니다.
terraform apply rosa.tfplan
$ terraform apply rosa.tfplanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 다음 명령을 실행하여 HCP 클러스터로 ROSA를 생성할 때 사용할 Terraform-provisioned 개인, 공용 및 머신 풀 서브넷 ID 값을 환경 변수로 캡처할 수 있습니다.
export SUBNET_IDS=$(terraform output -raw cluster-subnets-string)
$ export SUBNET_IDS=$(terraform output -raw cluster-subnets-string)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 사용하여 변수가 올바르게 설정되었는지 확인합니다.
echo $SUBNET_IDS
$ echo $SUBNET_IDSCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
subnet-0a6a57e0f784171aa,subnet-078e84e5b10ecf5b0
$ subnet-0a6a57e0f784171aa,subnet-078e84e5b10ecf5b0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
수동으로 가상 프라이빗 클라우드 생성
Terraform을 사용하는 대신 VPC(Virtual Private Cloud)를 수동으로 생성하도록 선택하는 경우 AWS 콘솔의 VPC 페이지로 이동합니다.
VPC는 다음 표에 표시된 요구 사항을 충족해야 합니다.
| 요구 사항 | 세부 정보 |
|---|---|
| VPC 이름 | 클러스터를 생성할 때 특정 VPC 이름과 ID가 있어야합니다. |
| CIDR 범위 | VPC CIDR 범위는 머신 CIDR과 일치해야 합니다. |
| 가용성 영역 | 단일 영역에 하나의 가용성 영역이 필요하며, 다중 영역의 가용성 영역인 경우 3개가 필요합니다. |
| 퍼블릭 서브넷 | 공용 클러스터에 대해 NAT 게이트웨이가 있는 퍼블릭 서브넷이 1개 있어야 합니다. 프라이빗 클러스터에는 퍼블릭 서브넷이 필요하지 않습니다. |
| DNS 호스트 이름 및 확인 | DNS 호스트 이름 및 확인이 활성화되어 있는지 확인해야 합니다. |
3.2.2. 계정 전체 STS 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA(Red Hat OpenShift Service on AWS) CLI(rosa)를 사용하여 호스팅된 컨트롤 플레인(HCP) 클러스터가 있는 AWS(ROSA)에서 Red Hat OpenShift Service를 생성하기 전에 Operator 정책을 포함하여 필요한 계정 전체 역할 및 정책을 생성합니다.
HCP 클러스터를 사용하는 ROSA에는 AWS 관리 정책이 연결된 계정 및 Operator 역할이 필요합니다. 고객 관리 정책은 지원되지 않습니다. HCP 클러스터의 ROSA 관리 정책에 대한 자세한 내용은 ROSA 계정 역할에 대한 AWS 관리 정책을 참조하십시오.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
절차
AWS 계정에 없는 경우 필요한 계정 전체 STS 역할을 생성하고 다음 명령을 실행하여 정책을 연결합니다.
rosa create account-roles --hosted-cp
$ rosa create account-roles --hosted-cpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 다음 명령을 실행하여 접두사를 환경 변수로 설정합니다.
export ACCOUNT_ROLES_PREFIX=<account_role_prefix>
$ export ACCOUNT_ROLES_PREFIX=<account_role_prefix>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 변수 값을 확인합니다.
echo $ACCOUNT_ROLES_PREFIX
$ echo $ACCOUNT_ROLES_PREFIXCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ManagedOpenShift
ManagedOpenShiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ROSA의 AWS 관리 IAM 정책에 대한 자세한 내용은 ROSA의 AWS 관리 IAM 정책을 참조하십시오.
3.2.3. OpenID Connect 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
AWS 클러스터에서 Red Hat OpenShift Service를 사용하는 경우 클러스터를 생성하기 전에 OpenID Connect(OIDC) 구성을 생성할 수 있습니다. 이 구성은 OpenShift Cluster Manager와 함께 사용하도록 등록됩니다.
사전 요구 사항
- AWS에서 Red Hat OpenShift Service에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 최신 Red Hat OpenShift Service on AWS(ROSA) CLI를 설치하고 구성했습니다.
절차
AWS 리소스와 함께 OIDC 구성을 생성하려면 다음 명령을 실행합니다.
rosa create oidc-config --mode=auto --yes
$ rosa create oidc-config --mode=auto --yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 다음 정보를 반환합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터를 생성할 때 OIDC 구성 ID를 제공해야 합니다. CLI 출력은
--mode auto에 대해 이 값을 제공합니다. 그렇지 않으면--mode 수동에 대한awsCLI 출력에 따라 이러한 값을 결정해야합니다.선택 사항: 나중에 사용할 수 있도록 OIDC 구성 ID를 변수로 저장할 수 있습니다. 다음 명령을 실행하여 변수를 저장합니다.
export OIDC_ID=<oidc_config_id>
$ export OIDC_ID=<oidc_config_id>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 위의 출력 예에서 OIDC 구성 ID는 13cdr6b입니다.
다음 명령을 실행하여 변수 값을 확인합니다.
echo $OIDC_ID
$ echo $OIDC_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
13cdr6b
13cdr6bCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
사용자 조직과 연결된 클러스터에 사용 가능한 OIDC 구성을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list oidc-config
$ rosa list oidc-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDN
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDNCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.4. Operator 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터와 함께 ROSA를 사용하는 경우 호스팅되는 컨트롤 플레인(HCP) 배포와 함께 ROSA(Red Hat OpenShift Service on AWS)에 필요한 Operator IAM 역할을 생성해야 합니다. 클러스터 Operator는 Operator 역할을 사용하여 백엔드 스토리지, 클라우드 공급자 인증 정보 관리, 클러스터에 대한 외부 액세스와 같은 클러스터 작업을 수행하는 데 필요한 임시 권한을 얻습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 AWS ROSA CLI(
rosa)에 최신 Red Hat OpenShift Service를 설치하고 구성했습니다. - 계정 전체 AWS 역할을 생성하셨습니다.
절차
다음 명령을 사용하여 접두사 이름을 환경 변수로 설정합니다.
export OPERATOR_ROLES_PREFIX=<prefix_name>
$ export OPERATOR_ROLES_PREFIX=<prefix_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Operator 역할을 생성하려면 다음 명령을 실행합니다.
rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-RoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 분석에서는 Operator 역할 생성에 대한 옵션을 제공합니다.
rosa create operator-roles --hosted-cp
$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX1 --oidc-config-id=$OIDC_ID2 --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow HCP 클러스터의 ROSA에 올바른 역할을 생성하려면
--hosted-cp매개변수를 포함해야 합니다. 이 명령은 다음 정보를 반환합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제 Operator 역할이 생성되어 HCP 클러스터를 사용하여 ROSA를 생성할 준비가 되었습니다.
검증
ROSA 계정과 연결된 Operator 역할을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list operator-roles
$ rosa list operator-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 명령을 실행한 후 AWS 계정과 연결된 모든 접두사를 표시하고 이 접두사와 연결된 역할 수를 기록합니다. 이러한 역할과 세부 정보를 모두 확인해야 하는 경우 세부 정보 프롬프트에 이러한 역할을 나열하도록 "예"를 입력합니다.
3.2.5. 사용자 정의 AWS KMS 키를 사용하여 ROSA 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
노드 루트 볼륨, etcd 데이터베이스 또는 둘 다를 암호화하는 데 사용되는 고객 제공 KMS 키를 사용하여 AWS (ROSA) 클러스터에서 Red Hat OpenShift Service를 생성할 수 있습니다. 각 옵션에 대해 다른 KMS 키 ARN을 제공할 수 있습니다.
HCP를 사용하는 ROSA는 고객 제공 KMS 키로 영구 볼륨을 암호화하도록 기본 스토리지 클래스를 자동으로 구성하지 않습니다. 이는 설치 후 클러스터 내에서 구성할 수 있는 것입니다.
절차
다음 명령을 실행하여 사용자 정의 AWS 고객 관리 KMS 키를 생성합니다.
KMS_ARN=$(aws kms create-key --region $AWS_REGION --description 'Custom ROSA Encryption Key' --tags TagKey=red-hat,TagValue=true --query KeyMetadata.Arn --output text)
$ KMS_ARN=$(aws kms create-key --region $AWS_REGION --description 'Custom ROSA Encryption Key' --tags TagKey=red-hat,TagValue=true --query KeyMetadata.Arn --output text)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 추가 단계를 위해 이 사용자 지정 키의 Amazon 리소스 이름(ARN) 출력을 저장합니다.
참고고객은 고객 KMS 키에 필요한
--tags TagKey=red-hat,TagValue=true인수를 제공해야 합니다.다음 명령을 실행하여 KMS 키가 생성되었는지 확인합니다.
echo $KMS_ARN
$ echo $KMS_ARNCopy to Clipboard Copied! Toggle word wrap Toggle overflow AWS 계정 ID를 환경 변수로 설정합니다.
AWS_ACCOUNT_ID=<aws_account_id>
$ AWS_ACCOUNT_ID=<aws_account_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 단계에서 생성한 계정 전체 설치 관리자 역할 및 Operator 역할의 ARN을 파일의
Statement.Principal.AWS섹션에 추가합니다. 다음 예에서는 기본ManagedOpenShift-HCP-ROSA-Installer-Role역할에 대한 ARN이 추가되었습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 생성된 정책 파일의 세부 정보를 확인합니다.
cat rosa-key-policy.json
$ cat rosa-key-policy.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 새로 생성된 키 정책을 사용자 정의 KMS 키에 적용합니다.
aws kms put-key-policy --key-id $KMS_ARN \ --policy file://rosa-key-policy.json \ --policy-name default
$ aws kms put-key-policy --key-id $KMS_ARN \ --policy file://rosa-key-policy.json \ --policy-name defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 클러스터를 생성합니다.
참고클러스터 이름이 15자보다 긴 경우
*.openshiftapps.com에서 프로비저닝된 클러스터의 하위 도메인으로 자동 생성된 도메인 접두사가 포함됩니다.하위 도메인을 사용자 지정하려면
--domain-prefix플래그를 사용합니다. 도메인 접두사는 15자를 초과할 수 없으며 고유해야 하며 클러스터 생성 후에는 변경할 수 없습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
OpenShift Cluster Manager 를 사용하여 KMS 키가 작동하는지 확인할 수 있습니다.
- OpenShift Cluster Manager 로 이동하여 인스턴스를 선택합니다.
- 인스턴스를 선택합니다.
- 스토리지 탭을 클릭합니다.
- KMS 키 ID 를 복사합니다.
- 키 관리 서비스를 검색하고 선택합니다.
- 필터 필드에 복사된 KMS 키 ID 를 입력합니다.
4장. HCP를 사용하여 ROSA에 개인 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
공용 인터넷 액세스가 필요하지 않은 호스트된 컨트롤 플레인(HCP) 워크로드가 있는 ROSA(Red Hat OpenShift Service on AWS)의 경우 프라이빗 클러스터를 생성할 수 있습니다.
4.1. ROSA CLI를 사용하여 HCP 클러스터로 개인 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA CLI(명령줄 인터페이스)를 사용하여 ROSA에 여러 가용 영역(Multi-AZ)이 있는 프라이빗 클러스터를 생성할 수 있습니다.
사전 요구 사항
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
- 설치 호스트에 ROSA CLI의 최신 버전을 설치하고 구성했습니다.
절차
호스팅된 컨트롤 플레인을 사용하여 클러스터를 생성하는 데 약 10분이 걸릴 수 있습니다.
프라이빗 서브넷이 하나 이상 있는 VPC를 생성합니다. 시스템의 클래스리스 도메인 간 라우팅(CIDR)이 가상 프라이빗 클라우드의 CIDR과 일치하는지 확인합니다. 자세한 내용은 자체 VPC 및 VPC 유효성 검사 사용에 대한 요구 사항을 참조하십시오.
중요방화벽을 사용하는 경우 ROSA가 작동하는 데 필요한 사이트에 액세스할 수 있도록 방화벽을 구성해야 합니다.
자세한 내용은 "AWS PrivateLink 방화벽 사전 요구 사항" 섹션을 참조하십시오.
다음 명령을 실행하여 계정 전체 IAM 역할을 생성합니다.
rosa create account-roles --hosted-cp
$ rosa create account-roles --hosted-cpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 OIDC 구성을 생성합니다.
rosa create oidc-config --mode=auto --yes
$ rosa create oidc-config --mode=auto --yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow Operator 역할을 생성하는 데 필요하므로 OIDC 구성 ID를 저장합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Operator 역할을 생성합니다.
rosa create operator-roles --hosted-cp --prefix <operator_roles_prefix> --oidc-config-id <oidc_config_id> --installer-role-arn arn:aws:iam::$<account_roles_prefix>:role/$<account_roles_prefix>-HCP-ROSA-Installer-Role
$ rosa create operator-roles --hosted-cp --prefix <operator_roles_prefix> --oidc-config-id <oidc_config_id> --installer-role-arn arn:aws:iam::$<account_roles_prefix>:role/$<account_roles_prefix>-HCP-ROSA-Installer-RoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 HCP 클러스터를 사용하여 개인 ROSA를 생성합니다.
rosa create cluster --private --cluster-name=<cluster-name> --sts --mode=auto --hosted-cp --operator-roles-prefix <operator_role_prefix> --oidc-config-id <oidc_config_id> [--machine-cidr=<VPC CIDR>/16] --subnet-ids=<private-subnet-id1>[,<private-subnet-id2>,<private-subnet-id3>]
$ rosa create cluster --private --cluster-name=<cluster-name> --sts --mode=auto --hosted-cp --operator-roles-prefix <operator_role_prefix> --oidc-config-id <oidc_config_id> [--machine-cidr=<VPC CIDR>/16] --subnet-ids=<private-subnet-id1>[,<private-subnet-id2>,<private-subnet-id3>]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 클러스터 상태를 확인합니다. 클러스터 생성 중에 출력의
State필드가보류중에서설치로 전환되고 마지막으로ready로 전환됩니다.rosa describe cluster --cluster=<cluster_name>
$ rosa describe cluster --cluster=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고설치에 실패하거나
State필드가 10분 후에준비되도록 변경되지 않는 경우 추가 리소스 섹션의 "Red Hat OpenShift Service on AWS 설치 관련 문제 해결" 설명서를 참조하십시오.다음 명령을 입력하여 OpenShift 설치 프로그램 로그를 따라 클러스터의 진행 상황을 추적합니다.
rosa logs install --cluster=<cluster_name> --watch
$ rosa logs install --cluster=<cluster_name> --watchCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2. AWS PrivateLink 끝점에 추가 AWS 보안 그룹 추가 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터가 있는 ROSA를 사용하면 고객의 VPC에 노출된 AWS PrivateLink 엔드포인트에는 클러스터의 머신 CIDR 범위 내에서 시작되는 요청에 대한 액세스를 제한하는 보안 그룹이 있습니다. VPC 외부의 모든 엔티티, VPC 피어, 전송 게이트웨이 또는 기타 네트워크 연결을 통해 클러스터의 API에 대한 액세스 권한을 부여하려면 다른 보안 그룹을 PrivateLink 엔드포인트에 연결하여 필요한 액세스 권한을 부여해야 합니다.
AWS PrivateLink 엔드포인트에 AWS 보안 그룹 추가는 HCP 버전 4.17.2 이상 버전의 ROSA에서만 지원됩니다.
사전 요구 사항
- 회사 네트워크 또는 기타 VPC가 연결되어 있습니다.
- VPC 내에서 보안 그룹을 생성하고 연결할 수 있는 권한이 있습니다.
절차
다음 명령을 실행하여 클러스터 이름을 환경 변수로 설정합니다.
export CLUSTER_NAME=<cluster_name>
$ export CLUSTER_NAME=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 변수가 설정되었는지 확인할 수 있습니다.
echo $CLUSTER_NAME
$ echo $CLUSTER_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
hcp-private
hcp-privateCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 VPC 끝점(VPCE) ID 및 VPC ID를 찾습니다.
read -r VPCE_ID VPC_ID <<< $(aws ec2 describe-vpc-endpoints --filters "Name=tag:api.openshift.com/id,Values=$(rosa describe cluster -c ${CLUSTER_NAME} -o yaml | grep '^id: ' | cut -d' ' -f2)" --query 'VpcEndpoints[].[VpcEndpointId,VpcId]' --output text)$ read -r VPCE_ID VPC_ID <<< $(aws ec2 describe-vpc-endpoints --filters "Name=tag:api.openshift.com/id,Values=$(rosa describe cluster -c ${CLUSTER_NAME} -o yaml | grep '^id: ' | cut -d' ' -f2)" --query 'VpcEndpoints[].[VpcEndpointId,VpcId]' --output text)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 주의기본 AWS PrivateLink 끝점 보안 그룹을 수정하거나 제거하는 것은 지원되지 않으며 예기치 않은 동작이 발생할 수 있습니다.
다음 명령을 실행하여 추가 보안 그룹을 생성합니다.
export SG_ID=$(aws ec2 create-security-group --description "Granting API access to ${CLUSTER_NAME} from outside of VPC" --group-name "${CLUSTER_NAME}-api-sg" --vpc-id $VPC_ID --output text)$ export SG_ID=$(aws ec2 create-security-group --description "Granting API access to ${CLUSTER_NAME} from outside of VPC" --group-name "${CLUSTER_NAME}-api-sg" --vpc-id $VPC_ID --output text)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 보안 그룹에 인바운드(ingress) 규칙을 추가합니다.
aws ec2 authorize-security-group-ingress --group-id $SG_ID --ip-permissions FromPort=443,ToPort=443,IpProtocol=tcp,IpRanges=[{CidrIp=<cidr-to-allow>}] \$ aws ec2 authorize-security-group-ingress --group-id $SG_ID --ip-permissions FromPort=443,ToPort=443,IpProtocol=tcp,IpRanges=[{CidrIp=<cidr-to-allow>}] \1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 액세스를 허용할 CIDR 블록을 지정합니다.
다음 명령을 실행하여 VPCE에 새 보안 그룹을 추가합니다.
aws ec2 modify-vpc-endpoint --vpc-endpoint-id $VPCE_ID --add-security-group-ids $SG_ID
$ aws ec2 modify-vpc-endpoint --vpc-endpoint-id $VPCE_ID --add-security-group-ids $SG_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow
이제 지정된 CIDR 블록에서 HCP 프라이빗 클러스터로 ROSA의 API에 액세스할 수 있습니다.
4.3. HCP 클러스터를 사용하는 ROSA의 추가 주체 링크 복사링크가 클립보드에 복사되었습니다!
추가 주체로 AWS IAM(Identity and Access Management) 역할을 허용하여 클러스터의 프라이빗 API 서버 끝점에 연결할 수 있습니다.
공용 인터넷 또는 VPC 프라이빗 서브넷 내에서 생성된 인터페이스 끝점에서 HCP 클러스터의 API 서버 엔드포인트를 사용하여 ROSA에 액세스할 수 있습니다. 기본적으로 -kube-system-kube-controller-manager Operator 역할을 사용하여 HCP API 서버로 ROSA에 개별적으로 액세스할 수 있습니다. 클러스터가 설치된 기본 계정을 사용하지 않고 다른 계정에서 직접 HCP API 서버를 사용하여 ROSA에 액세스하려면 계정 간 IAM 역할을 추가 주체로 포함해야 합니다. 이 기능을 사용하면 계정 간 VPC를 클러스터의 VPC에 연결하거나 이를 통해 네트워크 아키텍처를 단순화하고 데이터 전송 비용을 줄일 수 있습니다.
이 다이어그램에서 클러스터 생성 계정은 계정 A로 지정됩니다. 이 계정은 다른 계정, 계정 B가 API 서버에 액세스할 수 있어야 함을 지정합니다.
허용된 추가 주체를 구성한 후 VPC에서 HCP API 서버를 사용하여 계정 ROSA에 액세스하려는 인터페이스 VPC 엔드포인트를 생성해야 합니다. 그런 다음 Route53에 프라이빗 호스팅 영역을 생성하여 생성된 VPC 끝점을 통과하도록 HCP API 서버와 계정 ROSA 간 호출을 라우팅합니다.
4.3.1. HCP 클러스터로 ROSA를 생성하는 동안 추가 주체 추가 링크 복사링크가 클립보드에 복사되었습니다!
--additional-allowed-principals 인수를 사용하여 다른 역할을 통한 액세스를 허용합니다.
절차
다음과 같이
--additional-allowed-principals인수를rosa create cluster명령에 추가합니다.rosa create cluster [...] --additional-allowed-principals <arn_string>
$ rosa create cluster [...] --additional-allowed-principals <arn_string>Copy to Clipboard Copied! Toggle word wrap Toggle overflow arn:aws:iam::account_id:role/role_name을 사용하여 특정 역할을 승인할 수 있습니다.클러스터 생성 명령이 실행되면
--additional-allowed-principals가 지정된 클러스터 요약이 표시됩니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.3.2. HCP 클러스터를 사용하여 기존 ROSA에 추가 주체 추가 링크 복사링크가 클립보드에 복사되었습니다!
CLI(명령줄 인터페이스)를 사용하여 클러스터에 주체를 추가할 수 있습니다.
절차
다음 명령을 실행하여 클러스터를 편집하고 이 클러스터의 엔드포인트에 액세스할 수 있는 추가 주체를 추가합니다.
rosa edit cluster -c <cluster_name> --additional-allowed-principals <arn_string>
$ rosa edit cluster -c <cluster_name> --additional-allowed-principals <arn_string>Copy to Clipboard Copied! Toggle word wrap Toggle overflow arn:aws:iam::account_id:role/role_name을 사용하여 특정 역할을 승인할 수 있습니다.
4.4. 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
5장. 송신 잠금을 사용하여 AWS 클러스터에서 Red Hat OpenShift Service 생성 링크 복사링크가 클립보드에 복사되었습니다!
송신 잠금을 사용하여 AWS 클러스터에서 Red Hat OpenShift Service를 생성하면 클러스터가 인터넷에 액세스할 수 없는 경우 로컬 리전의 이미지 레지스트리를 사용하도록 허용하여 클러스터의 안정성과 보안을 향상시킬 수 있습니다. 클러스터는 Quay에서 이미지를 가져오려고 하지만, 도달하지 않으면 로컬 리전의 이미지 레지스트리에서 이미지를 대신 가져옵니다.
다음 AWS 리전을 사용하는 클러스터에서만 송신 잠금을 사용할 수 있습니다.
-
us-west-2 -
us-east-1 -
us-east-2 -
ap-northeast-1 -
ap-northeast-2 -
ap-northeast-3 -
ap-south-1 -
ap-southeast-1 -
ap-southeast-2 -
ca-central-1 -
eu-central-1 -
eu-north-1 -
eu-west-1 -
eu-west-2 -
eu-west-3 -
sa-east-1
송신 잠금이 있는 모든 퍼블릭 및 프라이빗 클러스터에서는 다양한 엔드포인트 및 인터넷 등록에서 이러한 이미지를 수집하는 대신 클러스터의 로컬 리전에 있는 레지스터에서 Red Hat 컨테이너 이미지를 가져옵니다. 가상 프라이빗 클라우드(VPC)를 구성하고 클러스터를 생성할 때 --properties 0_egress:true 플래그를 사용하여 퍼블릭 송신이 필요하지 않은 완전 운영 클러스터를 생성할 수 있습니다.
송신 잠금은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
전제 조건
- VPC, 서브넷 및 기타 필수 인프라를 생성할 수 있는 충분한 권한이 있는 AWS 계정이 있습니다.
- Terraform v1.4.0+ CLI를 설치했습니다.
- ROSA v1.2.45+ CLI를 설치했습니다.
- 필요한 인증 정보를 사용하여 AWS CLI를 설치하고 구성했습니다.
- git CLI를 설치했습니다.
호스팅된 컨트롤 플레인 아키텍처를 사용하는 AWS의 지원되는 모든 Red Hat OpenShift Service 버전에서 송신 잠금을 사용할 수 있지만 Red Hat은 각 OpenShift Container Platform 버전에 사용 가능한 최신 z-stream 릴리스를 사용하는 것이 좋습니다.
연결이 끊긴 환경에서 내부 이미지 레지스트리가 작동하는 방식과 관련된 업스트림 문제로 인해 일반 클러스터를 설치하고 업그레이드할 수 있지만 송신 잠금을 사용하는 클러스터는 이미지 레지스트리와 같은 모든 플랫폼 구성 요소를 완전히 사용할 수 없습니다. 클러스터를 업그레이드하거나 설치할 때 최신 ROSA 버전을 사용하여 이러한 기능을 복원할 수 있습니다.
5.1. HCP 클러스터를 사용하여 ROSA용 가상 프라이빗 클라우드 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터로 ROSA를 생성하려면 VPC(Virtual Private Cloud)가 있어야 합니다. 다음 방법 중 하나를 사용하여 VPC를 생성합니다.
- ROSA CLI(명령줄 인터페이스)를 사용하여 VPC 생성
- Terraform 템플릿을 사용하여 VPC 생성
- AWS 콘솔에서 VPC 리소스 수동 생성
Terraform 지침은 테스트 및 시연을 목적으로 합니다. 자체 설치를 수행하려면 VPC를 일부 수정해야 합니다. 또한 이 Terraform 스크립트를 사용할 때 클러스터를 설치하려는 리전과 동일한 지역에 있는지 확인해야 합니다. 이 예제에서는 us-east-2 를 사용합니다.
ROSA CLI를 사용하여 가상 사설 클라우드 생성
rosa create network 명령은 ROSA CLI(명령줄 인터페이스)의 v.1.2.48 이상에서 사용할 수 있습니다. 이 명령은 AWS CloudFormation을 사용하여 VPC 및 ROSA 클러스터를 설치하는 데 사용되는 기타 네트워킹 구성 요소를 생성합니다. CloudFormation은 네이티브 AWS 인프라형 툴이며 AWS CLI와 호환됩니다.
템플릿을 지정하지 않으면 CloudFormation은 다음 매개변수를 생성하는 기본 템플릿을 사용합니다.
| VPC 매개변수 | 현재의 |
|---|---|
| 가용성 영역 | 1 |
| 리전 |
|
| VPC CIDR |
|
rosa create network 명령과 함께 사용할 CloudFormation 템플릿을 생성하고 사용자 지정할 수 있습니다. 기본 VPC 템플릿에 대한 자세한 내용은 이 섹션의 추가 리소스를 참조하십시오.
사전 요구 사항
- AWS 계정을 구성했습니다.
- Red Hat 계정을 구성했습니다.
- ROSA CLI를 설치하고 최신 버전으로 구성했습니다.
절차
다음 명령을 실행하여 기본 CloudFormations 템플릿을 사용하여 AWS VPC를 생성합니다.
rosa create network
$ rosa create networkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 추가 매개변수를 지정하여 VPC를 사용자 지정합니다.
--param플래그를 사용하여 기본 VPC 템플릿의 변경 사항을 지정할 수 있습니다. 다음 예제 명령은리전,Name,AvailabilityZoneCount및VpcCidr에 대한 사용자 지정 값을 지정합니다.rosa create network --param Region=us-east-2 --param Name=quickstart-stack --param AvailabilityZoneCount=3 --param VpcCidr=10.0.0.0/16
$ rosa create network --param Region=us-east-2 --param Name=quickstart-stack --param AvailabilityZoneCount=3 --param VpcCidr=10.0.0.0/16Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령을 실행하는 데 약 5분이 걸리며 리소스가 생성될 때 AWS에서 정기적인 상태 업데이트를 제공합니다. CloudFormation에 문제가 있는 경우 롤백이 시도됩니다. 다른 모든 오류가 발생하면 오류 메시지 지침을 따르거나 AWS 지원에 문의하십시오.
검증
완료되면 생성된 리소스에 대한 요약이 표시됩니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Terraform을 사용하여 가상 사설 클라우드 생성
Terraform은 설정된 템플릿을 사용하여 다양한 리소스를 생성할 수 있는 툴입니다. 다음 프로세스는 HCP 클러스터를 사용하여 ROSA를 생성하는 데 필요한 기본 옵션을 사용합니다. Terraform 사용에 대한 자세한 내용은 추가 리소스를 참조하십시오.
사전 요구 사항
- 시스템에 Terraform 버전 1.4.0 이상을 설치했습니다.
- 시스템에 Git을 설치했습니다.
절차
쉘 프롬프트를 열고 다음 명령을 실행하여 Terraform VPC 리포지토리를 복제합니다.
git clone https://github.com/openshift-cs/terraform-vpc-example
$ git clone https://github.com/openshift-cs/terraform-vpc-exampleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 생성된 디렉터리로 이동합니다.
cd terraform-vpc-example/zero-egress
$ cd terraform-vpc-example/zero-egressCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Terraform 파일을 시작합니다.
terraform init
$ terraform initCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 프로세스가 완료되면 초기화를 확인하는 메시지가 표시됩니다.
기존 Terraform 템플릿을 기반으로 VPC Terraform 계획을 빌드하려면
plan명령을 실행합니다. AWS 리전, 가용성 영역, CIDR 블록 및 프라이빗 서브넷을 포함해야 합니다. 클러스터 이름을 지정하도록 선택할 수 있습니다.rosa-zero-egress.tfplan파일은terraform계획이 완료된 후hypershift-tf디렉터리에 추가됩니다. 자세한 옵션은 Terraform VPC 리포지토리의 README 파일을 참조하십시오.terraform plan -out rosa-zero-egress.tfplan -var region=<aws_region> \ -var 'availability_zones=["aws_region_1a","aws_region_1b","aws_region_1c"]'\ -var vpc_cidr_block=10.0.0.0/16 \ -var 'private_subnets=["10.0.0.0/24", "10.0.1.0/24", "10.0.2.0/24"]'$ terraform plan -out rosa-zero-egress.tfplan -var region=<aws_region> \1 -var 'availability_zones=["aws_region_1a","aws_region_1b","aws_region_1c"]'\2 -var vpc_cidr_block=10.0.0.0/16 \3 -var 'private_subnets=["10.0.0.0/24", "10.0.1.0/24", "10.0.2.0/24"]'4 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- AWS 리전을 입력합니다.중요
us-west-1, us-west-2, us-east-2, ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-northeast-3, ap-outh-1, ap-southeast-1, ap-southeast-2, ca-central-1, eu-central-1을 사용하는
클러스터에서만 송신 잠금을 사용할 수 있습니다. eu-north-1, eu-west-1, eu-west-2, eu-west-3,sa-east-1AWS 리전. - 2
- VPC의 가용성 영역을 입력합니다. 예를 들어
ap-southeast-1을 사용하는 VPC의 경우 다음을 가용성 영역으로 사용합니다.["ap-southeast-1a", "ap-southeast-1b", "ap-southeast-1c"]. - 3
- VPC의 CIDR 블록을 입력합니다.
- 4
- VPC용으로 생성된 각 서브넷을 입력합니다.
다음 명령을 실행하여 VPC를 빌드하려면 이 계획 파일을 적용합니다.
terraform apply rosa-zero-egress.tfplan
$ terraform apply rosa-zero-egress.tfplanCopy to Clipboard Copied! Toggle word wrap Toggle overflow
수동으로 가상 프라이빗 클라우드 생성
Terraform을 사용하는 대신 VPC(Virtual Private Cloud)를 수동으로 생성하도록 선택하는 경우 AWS 콘솔의 VPC 페이지로 이동합니다.
VPC는 다음 표에 표시된 요구 사항을 충족해야 합니다.
| 요구 사항 | 세부 정보 |
|---|---|
| VPC 이름 | 클러스터를 생성할 때 특정 VPC 이름과 ID가 있어야합니다. |
| CIDR 범위 | VPC CIDR 범위는 머신 CIDR과 일치해야 합니다. |
| 가용성 영역 | 단일 영역에 하나의 가용성 영역이 필요하며, 다중 영역의 가용성 영역인 경우 3개가 필요합니다. |
| 퍼블릭 서브넷 | 공용 클러스터에 대해 NAT 게이트웨이가 있는 퍼블릭 서브넷이 1개 있어야 합니다. 프라이빗 클러스터에는 퍼블릭 서브넷이 필요하지 않습니다. |
| DNS 호스트 이름 및 확인 | DNS 호스트 이름 및 확인이 활성화되어 있는지 확인해야 합니다. |
5.2. 계정 전체 STS 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA(Red Hat OpenShift Service on AWS) CLI(rosa)를 사용하여 호스팅된 컨트롤 플레인(HCP) 클러스터가 있는 AWS(ROSA)에서 Red Hat OpenShift Service를 생성하기 전에 Operator 정책을 포함하여 필요한 계정 전체 역할 및 정책을 생성합니다.
HCP 클러스터를 사용하는 ROSA에는 AWS 관리 정책이 연결된 계정 및 Operator 역할이 필요합니다. 고객 관리 정책은 지원되지 않습니다. HCP 클러스터의 ROSA 관리 정책에 대한 자세한 내용은 ROSA 계정 역할에 대한 AWS 관리 정책을 참조하십시오.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
절차
AWS 계정에 없는 경우 필요한 계정 전체 STS 역할을 생성하고 다음 명령을 실행하여 정책을 연결합니다.
rosa create account-roles --hosted-cp
$ rosa create account-roles --hosted-cpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 작업자 역할에 올바른 AWS 정책이 있는지 확인합니다.
aws iam attach-role-policy \ --role-name ManagedOpenShift-HCP-ROSA-Worker-Role \ --policy-arn "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"
$ aws iam attach-role-policy \ --role-name ManagedOpenShift-HCP-ROSA-Worker-Role \1 --policy-arn "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이 역할에는 이전 단계에서 만든 접두사를 포함해야 합니다.
선택 사항: 다음 명령을 실행하여 접두사를 환경 변수로 설정합니다.
export ACCOUNT_ROLES_PREFIX=<account_role_prefix>
$ export ACCOUNT_ROLES_PREFIX=<account_role_prefix>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 변수 값을 확인합니다.
echo $ACCOUNT_ROLES_PREFIX
$ echo $ACCOUNT_ROLES_PREFIXCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ManagedOpenShift
ManagedOpenShiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ROSA의 AWS 관리 IAM 정책에 대한 자세한 내용은 ROSA의 AWS 관리 IAM 정책을 참조하십시오.
5.3. OpenID Connect 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
AWS 클러스터에서 Red Hat OpenShift Service를 사용하는 경우 클러스터를 생성하기 전에 OpenID Connect(OIDC) 구성을 생성할 수 있습니다. 이 구성은 OpenShift Cluster Manager와 함께 사용하도록 등록됩니다.
사전 요구 사항
- AWS에서 Red Hat OpenShift Service에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 최신 Red Hat OpenShift Service on AWS(ROSA) CLI를 설치하고 구성했습니다.
절차
AWS 리소스와 함께 OIDC 구성을 생성하려면 다음 명령을 실행합니다.
rosa create oidc-config --mode=auto --yes
$ rosa create oidc-config --mode=auto --yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 다음 정보를 반환합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터를 생성할 때 OIDC 구성 ID를 제공해야 합니다. CLI 출력은
--mode auto에 대해 이 값을 제공합니다. 그렇지 않으면--mode 수동에 대한awsCLI 출력에 따라 이러한 값을 결정해야합니다.선택 사항: 나중에 사용할 수 있도록 OIDC 구성 ID를 변수로 저장할 수 있습니다. 다음 명령을 실행하여 변수를 저장합니다.
export OIDC_ID=<oidc_config_id>
$ export OIDC_ID=<oidc_config_id>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 위의 출력 예에서 OIDC 구성 ID는 13cdr6b입니다.
다음 명령을 실행하여 변수 값을 확인합니다.
echo $OIDC_ID
$ echo $OIDC_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
13cdr6b
13cdr6bCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
사용자 조직과 연결된 클러스터에 사용 가능한 OIDC 구성을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list oidc-config
$ rosa list oidc-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDN
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDNCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.4. Operator 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터와 함께 ROSA를 사용하는 경우 호스팅되는 컨트롤 플레인(HCP) 배포와 함께 ROSA(Red Hat OpenShift Service on AWS)에 필요한 Operator IAM 역할을 생성해야 합니다. 클러스터 Operator는 Operator 역할을 사용하여 백엔드 스토리지, 클라우드 공급자 인증 정보 관리, 클러스터에 대한 외부 액세스와 같은 클러스터 작업을 수행하는 데 필요한 임시 권한을 얻습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 AWS ROSA CLI(
rosa)에 최신 Red Hat OpenShift Service를 설치하고 구성했습니다. - 계정 전체 AWS 역할을 생성하셨습니다.
절차
다음 명령을 사용하여 접두사 이름을 환경 변수로 설정합니다.
export OPERATOR_ROLES_PREFIX=<prefix_name>
$ export OPERATOR_ROLES_PREFIX=<prefix_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Operator 역할을 생성하려면 다음 명령을 실행합니다.
rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-RoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 분석에서는 Operator 역할 생성에 대한 옵션을 제공합니다.
rosa create operator-roles --hosted-cp
$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX1 --oidc-config-id=$OIDC_ID2 --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow HCP 클러스터의 ROSA에 올바른 역할을 생성하려면
--hosted-cp매개변수를 포함해야 합니다. 이 명령은 다음 정보를 반환합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제 Operator 역할이 생성되어 HCP 클러스터를 사용하여 ROSA를 생성할 준비가 되었습니다.
검증
ROSA 계정과 연결된 Operator 역할을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list operator-roles
$ rosa list operator-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 명령을 실행한 후 AWS 계정과 연결된 모든 접두사를 표시하고 이 접두사와 연결된 역할 수를 기록합니다. 이러한 역할과 세부 정보를 모두 확인해야 하는 경우 세부 정보 프롬프트에 이러한 역할을 나열하도록 "예"를 입력합니다.
5.5. CLI를 사용하여 송신 잠금을 사용하여 HCP 클러스터를 사용하여 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift Service on AWS (ROSA) 명령줄 인터페이스(CLI)를 사용하여 클러스터를 생성하는 경우 기본 옵션을 선택하여 클러스터를 빠르게 생성할 수 있습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다.rosa 버전을실행하여 현재 설치된 ROSA CLI 버전을 확인합니다. 최신 버전을 사용할 수 있는 경우 CLI는 이 업그레이드를 다운로드할 수 있는 링크를 제공합니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
- OIDC 구성을 생성했습니다.
- AWS 계정에 ELB(Elastic Load Balancing) 서비스 역할이 있는지 확인했습니다.
절차
다음 명령 중 하나를 사용하여 HCP 클러스터로 ROSA를 생성합니다.
참고HCP 클러스터를 사용하여 ROSA를 생성할 때 기본 머신 Classless Inter-Domain Routing (CIDR)은
10.0.0.0/16입니다. VPC 서브넷의 CIDR 범위에 해당하지 않는 경우 다음 명령에--machine-cidr <address_block>을 추가합니다. AWS에서 Red Hat OpenShift Service의 기본 CIDR 범위에 대한 자세한 내용은 CIDR 범위 정의를 참조하십시오.환경 변수를 설정하지 않은 경우 다음 명령을 실행합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 클러스터 이름을 지정합니다. 클러스터 이름이 15자보다 긴 경우 openshiftapps.com에서 프로비저닝된 클러스터의 하위 도메인으로 자동 생성된 도메인 접두사가 포함됩니다. 하위 도메인을 사용자 지정하려면
--domain-prefix플래그를 사용합니다. 도메인 접두사는 15자를 초과할 수 없으며 고유해야 하며 클러스터 생성 후에는 변경할 수 없습니다. - 2
- 기본적으로 클러스터별 Operator 역할 이름 앞에는 클러스터 이름과 임의의 4자리 해시가 추가됩니다. 선택 옵션으로 역할 이름에 <
cluster_name>-<hash>를 대체할 사용자 지정 접두사를 지정할 수 있습니다. 접두사는 클러스터별 Operator IAM 역할을 생성할 때 적용됩니다. 접두사에 대한 자세한 내용은 사용자 정의 Operator IAM 역할 접두사 정보를 참조하십시오.참고연결된 계정 전체 역할을 생성할 때 사용자 정의 ARN 경로를 지정한 경우 사용자 정의 경로가 자동으로 감지됩니다. 사용자 정의 경로는 이후 단계에서 생성할 때 클러스터별 Operator 역할에 적용됩니다.
- 3
- 모든 청구를 담당하는 AWS 계정을 제공합니다.
환경 변수를 설정하는 경우 다음 명령을 실행하여 비공개적으로 사용 가능한 API를 사용하여 초기 머신 풀과 개인 사용 가능한 Ingress가 있는 송신 잠금을 사용하여 클러스터를 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여 클러스터 상태를 확인합니다.
rosa describe cluster --cluster=<cluster_name>
$ rosa describe cluster --cluster=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음
상태필드 변경 사항은 클러스터 설치가 진행됨에 따라 출력에 나열됩니다.-
보류 (사전 계정) -
설치 ( 진행 중인 DNS 설정) -
설치 Ready참고설치에 실패하거나 10분 이상
State필드가준비상태가 아닌 경우 자세한 내용은 설치 문제 해결 설명서를 확인하십시오. 자세한 내용은 설치 문제 해결을 참조하십시오. Red Hat 지원에 문의하려면 AWS에서 Red Hat OpenShift Service에 대한 지원 받기를 참조하십시오.
-
AWS 설치 프로그램 로그에서 Red Hat OpenShift Service를 확인하여 클러스터 생성 진행 상황을 추적합니다. 로그를 확인하려면 다음 명령을 실행합니다.
rosa logs install --cluster=<cluster_name> --watch \
$ rosa logs install --cluster=<cluster_name> --watch \1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 선택 사항: 설치가 진행되는 동안 새 로그 메시지를 감시하려면
--watch인수를 사용합니다.
6장. 외부 인증을 사용하여 HCP 클러스터를 사용하여 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
외부 OpenID Connect(OIDC) ID 공급자를 사용하여 인증을 위해 토큰을 발행하여 기본 제공 OpenShift OAuth 서버를 대체하는 호스팅된 컨트롤 플레인(HCP) 클러스터를 사용하여 AWS(ROSA)에서 Red Hat OpenShift Service를 생성할 수 있습니다. 기본 제공 OpenShift OAuth 서버는 외부 OIDC ID 공급자를 포함한 다양한 ID 공급자와의 통합을 지원하지만 OAuth 서버 자체의 기능으로 제한됩니다. CLI와 같은 머신 간 워크플로를 용이하게 하기 위해 외부 OIDC ID 공급자를 ROSA와 HCP 클러스터와 직접 통합하고 기본 제공 OpenShift OAuth 서버를 사용할 때 사용할 수 없는 추가 기능을 제공할 수 있습니다.
기존 ROSA 클러스터를 호스팅된 컨트롤 플레인 아키텍처로 업그레이드하거나 변환할 수 없으므로 HCP 기능과 함께 ROSA를 사용할 새 클러스터를 생성해야 합니다. 또한 외부 인증 공급자를 사용하여 내부 OAuth2 서버를 사용하도록 생성된 클러스터를 변환할 수 없습니다. 또한 새 클러스터를 생성해야 합니다.
여러 AWS 계정에서 VPC를 공유하는 것은 현재 HCP를 사용하여 ROSA에서 지원되지 않습니다. HCP 클러스터의 ROSA를 다른 AWS 계정에서 공유하는 서브넷에 설치하지 마십시오. 자세한 내용은 "Single VPC에서 여러 ROSA 클러스터 지원 "을 참조하십시오.
HCP 클러스터가 있는 ROSA는 STS(Security Token Service) 인증만 지원합니다.
추가 읽기
6.1. HCP 사전 요구 사항이 있는 ROSA 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터를 사용하여 ROSA를 생성하려면 다음 단계를 완료해야 합니다.
6.2. 외부 인증 공급자를 사용하는 HCP 클러스터를 사용하여 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA CLI에서 --external-auth-providers-enabled 플래그를 사용하여 외부 인증 서비스를 사용하는 클러스터를 생성합니다.
HCP 클러스터를 사용하여 ROSA를 생성할 때 기본 머신 Classless Inter-Domain Routing (CIDR)은 10.0.0.0/16 입니다. VPC 서브넷의 CIDR 범위에 해당하지 않는 경우 다음 명령에 --machine-cidr <address_block >을 추가합니다.
절차
OIDC_ID,SUBNET_IDS,OPERATOR_ROLES_PREFIX변수를 사용하여 환경을 준비한 경우 클러스터를 생성할 때 해당 변수를 계속 사용할 수 있습니다. 예를 들어 다음 명령을 실행합니다.rosa create cluster --hosted-cp --subnet-ids=$SUBNET_IDS \ --oidc-config-id=$OIDC_ID --cluster-name=<cluster_name> \ --operator-roles-prefix=$OPERATOR_ROLES_PREFIX \ --external-auth-providers-enabled
$ rosa create cluster --hosted-cp --subnet-ids=$SUBNET_IDS \ --oidc-config-id=$OIDC_ID --cluster-name=<cluster_name> \ --operator-roles-prefix=$OPERATOR_ROLES_PREFIX \ --external-auth-providers-enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow 환경 변수를 설정하지 않은 경우 다음 명령을 실행합니다.
rosa create cluster --cluster-name=<cluster_name> --sts --mode=auto \ --hosted-cp --operator-roles-prefix <operator-role-prefix> \ --oidc-config-id <ID-of-OIDC-configuration> \ --external-auth-providers-enabled \ --subnet-ids=<public-subnet-id>,<private-subnet-id>$ rosa create cluster --cluster-name=<cluster_name> --sts --mode=auto \ --hosted-cp --operator-roles-prefix <operator-role-prefix> \ --oidc-config-id <ID-of-OIDC-configuration> \ --external-auth-providers-enabled \ --subnet-ids=<public-subnet-id>,<private-subnet-id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 클러스터 세부 정보에 외부 인증이 활성화되어 있는지 확인합니다.
rosa describe cluster --cluster=<cluster_name>
$ rosa describe cluster --cluster=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
외부 인증플래그가 활성화되어 있으며 이제 외부 인증 공급자를 생성할 수 있습니다.
6.3. 외부 인증 공급자 생성 링크 복사링크가 클립보드에 복사되었습니다!
외부 인증 공급자에 대해 활성화된 옵션을 사용하여 HCP 클러스터가 있는 ROSA를 생성한 후에는 ROSA CLI를 사용하여 공급자를 생성해야 합니다.
ROSA CLI에서 rosa create|delete|list idp[s] 명령과 유사하게 rosa create external-auth-provider 를 사용하여 생성한 기존 ID 공급자를 편집할 수 없습니다. 대신 외부 인증 공급자를 삭제하고 새 공급자를 생성해야 합니다.
다음 표는 외부 인증 공급자를 생성할 때 사용할 수 있는 CLI 플래그를 보여줍니다.
| CLI Flag | 설명 |
|---|---|
|
| 클러스터의 이름 또는 ID입니다. |
|
| 외부 인증 공급자를 참조하는 데 사용되는 이름입니다. |
|
| 이 문자열은 계정을 애플리케이션과 연결하는 데 사용되는 클라이언트 시크릿입니다. 클라이언트 시크릿을 포함하지 않으면 이 명령에서 공용 OIDC OAuthClient를 사용합니다. |
|
| 쉼표로 구분된 토큰 대상 목록입니다. |
|
| 토큰 발행자의 URL입니다. |
|
| 클러스터 ID의 사용자 이름을 구성하는 데 사용해야 하는 클레임의 이름입니다. |
|
| 클러스터 ID에 대한 그룹 이름을 구성하는 데 사용해야 하는 클레임의 이름입니다. |
절차
대화형 명령 인터페이스를 사용하려면 다음 명령을 실행합니다.
rosa create external-auth-provider -c <cluster_name>
$ rosa create external-auth-provider -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 외부 인증 공급자의 이름입니다. 이 이름은 숫자와 대시가 있는 소문자여야 합니다.
- 2
- 이 인증 공급자가 토큰을 발행하는 대상 ID입니다.
- 3
- 토큰을 제공하는 발행자의 URL입니다.
- 4
- 선택 사항: 요청을 수행할 때 사용할 인증서 파일입니다.
- 5
이메일사용과 같이 클러스터 ID의 사용자 이름을 구성하는 데 사용되는 클레임의 이름입니다.- 6
- ID 토큰을 클러스터 ID로 변환하는 방법(예:
그룹사용 ). - 7
- 선택 사항: 사용자를 인증하는 토큰 클레임을 확인하는 데 도움이 되는 규칙입니다. 이 필드는
:<required_value> 형식으로 포맷해야 합니다. - 8
- 선택 사항: 앱 등록에서 콘솔에 사용하는 애플리케이션 또는 클라이언트 ID입니다.
다음 명령을 사용하여 외부 인증 공급자를 생성하는 데 필요한 ID를 포함할 수 있습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Successfully created an external authentication provider for cluster '<cluster_id>'
I: Successfully created an external authentication provider for cluster '<cluster_id>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
외부 인증 공급자를 확인하려면 다음 옵션 중 하나를 실행합니다.
다음 명령을 사용하여 지정된 클러스터의 외부 인증 구성을 나열합니다.
rosa list external-auth-provider -c <cluster_name>
$ rosa list external-auth-provider -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
다음 예제에서는 구성된 Microsoft Entra ID 외부 인증 공급자를 보여줍니다.
NAME ISSUER URL m-entra-id https://login.microsoftonline.com/<group_id>/v2.0
NAME ISSUER URL m-entra-id https://login.microsoftonline.com/<group_id>/v2.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 사용하여 지정된 클러스터의 외부 인증 구성을 표시합니다.
rosa describe external-auth-provider \ -c <cluster_name> --name <name_of_external_authentication>$ rosa describe external-auth-provider \ -c <cluster_name> --name <name_of_external_authentication>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.4. HCP 클러스터를 사용하여 ROSA에 대한 break glass 인증 정보 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터 소유자가 있는 ROSA는 break glass 인증 정보를 사용하여 임시 관리 클라이언트 인증 정보를 생성하여 사용자 정의 OpenID Connect(OIDC) 토큰 발행자로 구성된 클러스터에 액세스할 수 있습니다. break glass 인증 정보를 생성하면 새 cluster-admin kubeconfig 파일이 생성됩니다. kubeconfig 파일에는 CLI에서 클라이언트를 올바른 클러스터 및 API 서버에 연결하는 데 사용하는 클러스터에 대한 정보가 포함되어 있습니다. 새로 생성된 kubeconfig 파일을 사용하여 HCP 클러스터에서 ROSA에 대한 액세스를 허용할 수 있습니다.
사전 요구 사항
- 외부 인증이 활성화된 HCP 클러스터가 있는 ROSA를 생성했습니다. 자세한 내용은 외부 인증 공급자를 사용하는 HCP 클러스터를 사용하여 ROSA 생성 을 참조하십시오.
- 외부 인증 공급자를 생성했습니다. 자세한 내용은 외부 인증 공급자 생성을 참조하십시오.
-
클러스터 관리자권한이 있는 계정이 있어야 합니다.
절차
다음 명령 중 하나를 사용하여 break glass 인증 정보를 생성합니다.
대화형 명령 인터페이스를 사용하여 사용자 지정 설정을 대화식으로 지정하여 break glass 인증 정보를 생성하려면 다음 명령을 실행합니다.
rosa create break-glass-credential -c <cluster_name> -i
$ rosa create break-glass-credential -c <cluster_name> -i1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- <cluster_name>을 클러스터 이름으로 바꿉니다.
이 명령은 대화형 CLI 프로세스를 시작합니다.
출력 예
I: Enabling interactive mode ? Username (optional): ? Expiration duration (optional): I: Successfully created a break glass credential for cluster 'ac-hcp-test'.
I: Enabling interactive mode ? Username (optional):1 ? Expiration duration (optional):2 I: Successfully created a break glass credential for cluster 'ac-hcp-test'.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 지정된 값이 있는
mycluster라는 클러스터에 대한 중단 유리 인증 정보를 생성하려면 다음을 수행합니다.rosa create break-glass-credential -c mycluster --username test-username --expiration 1h
$ rosa create break-glass-credential -c mycluster --username test-username --expiration 1hCopy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여
mycluster라는 클러스터에 사용할 수 있는 break glass 인증 정보 ID, 상태 및 관련 사용자를 나열합니다.rosa list break-glass-credential -c mycluster
$ rosa list break-glass-credential -c myclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID USERNAME STATUS 2a7jli9n4phe6c02ul7ti91djtv2o51d test-user issued
ID USERNAME STATUS 2a7jli9n4phe6c02ul7ti91djtv2o51d test-user issuedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고명령에
-o json인수를 추가하여 JSON 출력에서 인증 정보를 볼 수도 있습니다.break glass 인증 정보의 상태를 보려면 다음 명령을 실행하여 <break_glass_credential_id>를 break glass 인증 정보 ID로 바꿉니다.
rosa describe break-glass-credential <break_glass_credential_id> -c <cluster_name>
$ rosa describe break-glass-credential <break_glass_credential_id> -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID: 2a7jli9n4phe6c02ul7ti91djtv2o51d Username: test-user Expire at: Dec 28 2026 10:23:05 EDT Status: issued
ID: 2a7jli9n4phe6c02ul7ti91djtv2o51d Username: test-user Expire at: Dec 28 2026 10:23:05 EDT Status: issuedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음은 사용 가능한
Status필드 값 목록입니다.-
유리 인증 정보가 발행되었으며 사용할 준비가 되어 있습니다.
-
expiredoff glass 인증 정보가 만료되었으며 더 이상 사용할 수 없습니다. -
break glass 인증 정보를 생성하지 못했습니다.
이 경우 실패를 자세히 설명하는 서비스 로그가 표시됩니다. 서비스 로그에 대한 자세한 내용은 AWS 클러스터에서 Red Hat OpenShift Service의 서비스 로그 액세스를 참조하십시오. Red Hat 지원에 문의하려면 지원 받기를 참조하십시오. -
awaiting_revocationbreak glass 인증 정보는 현재 취소되고 있습니다. 즉, 사용할 수 없습니다. -
유리 인증 정보가 취소되어 더 이상 사용할 수 없습니다.
-
유리 인증 정보가 발행되었으며 사용할 준비가 되어 있습니다.
kubeconfig를 검색하려면 다음 명령을 실행합니다.kubeconfig 디렉터리를생성합니다.mkdir ~/kubeconfigs
$ mkdir ~/kubeconfigsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 새로 생성된
kubeconfig파일을 내보내 <cluster_name>을 클러스터 이름으로 교체합니다.export CLUSTER_NAME=<cluster_name> && export KUBECONFIG=~/kubeconfigs/break-glass-${CLUSTER_NAME}.kubeconfig$ export CLUSTER_NAME=<cluster_name> && export KUBECONFIG=~/kubeconfigs/break-glass-${CLUSTER_NAME}.kubeconfigCopy to Clipboard Copied! Toggle word wrap Toggle overflow kubeconfig를 확인합니다.rosa describe break-glass-credential <break_glass_credential_id> -c mycluster --kubeconfig
$ rosa describe break-glass-credential <break_glass_credential_id> -c mycluster --kubeconfigCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
선택 사항:
kubeconfig를 저장하려면 다음 명령을 실행합니다.rosa describe break-glass-credential <break_glass_credential_id> -c mycluster --kubeconfig > $KUBECONFIG
$ rosa describe break-glass-credential <break_glass_credential_id> -c mycluster --kubeconfig > $KUBECONFIGCopy to Clipboard Copied! Toggle word wrap Toggle overflow
6.5. 유리 인증 정보를 사용하여 HCP 클러스터로 ROSA에 액세스 링크 복사링크가 클립보드에 복사되었습니다!
break glass 인증 정보의 새 kubeconfig 를 사용하여 HCP 클러스터의 ROSA에 대한 임시 관리자 액세스 권한을 얻습니다.
사전 요구 사항
- 외부 인증이 활성화된 HCP 클러스터를 사용하여 ROSA에 액세스할 수 있습니다. 자세한 내용은 외부 인증 공급자를 사용하는 HCP 클러스터를 사용하여 ROSA 생성 을 참조하십시오.
-
oc및kubectlCLI를 설치했습니다. -
새
kubeconfig를 구성했습니다. 자세한 내용은 HCP 클러스터를 사용하여 ROSA에 대한 break glass 인증 정보 생성을 참조하십시오.
절차
클러스터 세부 정보에 액세스합니다.
rosa describe break-glass-credential <break_glass_credential_id> -c <cluster_name> --kubeconfig > $KUBECONFIG
$ rosa describe break-glass-credential <break_glass_credential_id> -c <cluster_name> --kubeconfig > $KUBECONFIGCopy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터의 노드를 나열합니다.
oc get nodes
$ oc get nodesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME STATUS ROLES AGE VERSION ip-10-0-0-27.ec2.internal Ready worker 8m v1.28.7+f1b5f6c ip-10-0-0-67.ec2.internal Ready worker 9m v1.28.7+f1b5f6c
NAME STATUS ROLES AGE VERSION ip-10-0-0-27.ec2.internal Ready worker 8m v1.28.7+f1b5f6c ip-10-0-0-67.ec2.internal Ready worker 9m v1.28.7+f1b5f6cCopy to Clipboard Copied! Toggle word wrap Toggle overflow 올바른 인증 정보가 있는지 확인합니다.
kubectl auth whoami
$ kubectl auth whoamiCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ATTRIBUTE VALUE Username system:customer-break-glass:test-user Groups [system:masters system:authenticated]
ATTRIBUTE VALUE Username system:customer-break-glass:test-user Groups [system:masters system:authenticated]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 외부 OIDC 공급자에 정의된 그룹에 대해
ClusterRoleBinding을 적용합니다.ClusterRoleBinding은 Microsoft Entra ID에서 생성된rosa-hcp-admins그룹을 HCP 클러스터의 ROSA의 그룹에 매핑합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
clusterrolebinding.rbac.authorization.k8s.io/rosa-hcp-admins created
clusterrolebinding.rbac.authorization.k8s.io/rosa-hcp-admins createdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고ClusterRoleBinding이 적용되면 HCP 클러스터가 포함된 ROSA가 구성되고rosaCLI 및 Red Hat Hybrid Cloud Console 은 외부 OpenID Connect(OIDC) 공급자를 통해 인증됩니다. 이제 클러스터에 역할 할당 및 애플리케이션을 배포할 수 있습니다.
6.6. HCP 클러스터를 사용하여 ROSA에 대한 중단 유리 인증 정보 취소 링크 복사링크가 클립보드에 복사되었습니다!
revoke break-glass-credentials 명령을 사용하여 언제든지 프로비저닝한 모든 중단 유리 인증 정보에 대한 액세스를 취소할 수 있습니다.
사전 요구 사항
- 유리 인증 정보를 생성했습니다.
- 클러스터 소유자입니다.
절차
다음 명령을 실행하여 HCP 클러스터를 사용하여 ROSA의 중단 유리 인증 정보를 취소합니다.
중요이 명령을 실행하면 클러스터와 관련된 모든 중단 유리 인증 정보에 대한 액세스 권한이 취소됩니다.
rosa revoke break-glass-credentials -c <cluster_name>
$ rosa revoke break-glass-credentials -c <cluster_name>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- <cluster_name>을 클러스터 이름으로 바꿉니다.
출력 예
? Are you sure you want to revoke all the break glass credentials on cluster 'my-cluster'?: Yes I: Successfully requested revocation for all break glass credentials from cluster 'my-cluster'
? Are you sure you want to revoke all the break glass credentials on cluster 'my-cluster'?: Yes I: Successfully requested revocation for all break glass credentials from cluster 'my-cluster'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
취소 프로세스는 몇 분 정도 걸릴 수 있습니다. 다음 명령 중 하나를 실행하여 클러스터의 break glass 인증 정보가 취소되었는지 확인할 수 있습니다.
모든 break glass 인증 정보를 나열하고 각 인증 정보의 상태를 확인합니다.
rosa list break-glass-credential -c <cluster_name>
$ rosa list break-glass-credential -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID USERNAME STATUS 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 test-user awaiting_revocation
ID USERNAME STATUS 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 test-user awaiting_revocationCopy to Clipboard Copied! Toggle word wrap Toggle overflow 개별 인증 정보를 확인하여 상태를 확인할 수도 있습니다.
rosa describe break-glass-credential <break_glass_credential_id> -c <cluster_name>
$ rosa describe break-glass-credential <break_glass_credential_id> -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID: 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 Username: test-user Expire at: Dec 28 2026 10:23:05 EDT Status: issued Revoked at: Dec 27 2026 15:30:33 EDT
ID: 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 Username: test-user Expire at: Dec 28 2026 10:23:05 EDT Status: issued Revoked at: Dec 27 2026 15:30:33 EDTCopy to Clipboard Copied! Toggle word wrap Toggle overflow
6.7. 외부 인증 공급자 삭제 링크 복사링크가 클립보드에 복사되었습니다!
ROSA CLI를 사용하여 외부 인증 공급자를 삭제합니다.
절차
다음 명령을 실행하여 클러스터에 외부 인증 공급자를 표시합니다.
rosa list external-auth-provider -c <cluster_name>
$ rosa list external-auth-provider -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME ISSUER URL entra-test https://login.microsoftonline.com/<group_id>/v2.0
NAME ISSUER URL entra-test https://login.microsoftonline.com/<group_id>/v2.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 외부 인증 공급자를 삭제합니다.
rosa delete external-auth-provider <name_of_provider> -c <cluster_name>
$ rosa delete external-auth-provider <name_of_provider> -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
? Are you sure you want to delete external authentication provider entra-test on cluster rosa-ext-test? Yes I: Successfully deleted external authentication provider 'entra-test' from cluster 'rosa-ext-test'
? Are you sure you want to delete external authentication provider entra-test on cluster rosa-ext-test? Yes I: Successfully deleted external authentication provider 'entra-test' from cluster 'rosa-ext-test'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 클러스터의 외부 인증 공급자를 쿼리합니다.
rosa list external-auth-provider -c <cluster_name>
$ rosa list external-auth-provider -c <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
E: there are no external authentication providers for this cluster
E: there are no external authentication providers for this clusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow
7장. CNI 플러그인 없이 HCP 클러스터를 사용하는 ROSA 링크 복사링크가 클립보드에 복사되었습니다!
호스팅된 컨트롤 플레인(HCP) 클러스터에서 AWS(ROSA)에서 Red Hat OpenShift Service를 생성할 때 자체 CNI(Container Network Interface) 플러그인을 사용할 수 있습니다. CNI 없이 HCP 클러스터를 사용하여 ROSA를 생성하고 클러스터 생성 후 자체 CNI 플러그인을 설치할 수 있습니다.
자체 CNI를 사용하기로 선택한 고객의 경우 CNI 플러그인 지원 책임은 선택한 CNI 공급 업체와 협력하여 고객에게 달려 있습니다.
HCP를 사용하는 ROSA의 기본 플러그인은 OVN-Kubernetes 네트워크 플러그인 입니다. 이 플러그인은 HCP를 사용하는 ROSA에 대해 유일하게 지원되는 CNI 플러그인입니다.
HCP 클러스터와 함께 ROSA에 대한 자체 CNI를 사용하기로 선택한 경우 클러스터를 생성하기 전에 플러그인 공급 업체에서 상용 지원을 받는 것이 좋습니다. Red Hat 지원은 자체 CNI 사용을 선택한 고객의 Pod 트래픽에 Pod와 같은 CNI 관련 문제를 지원할 수 없습니다. Red Hat은 여전히 CNI 이외의 모든 문제에 대한 지원을 제공합니다. Red Hat의 CNI 관련 지원이 필요한 경우 기본 OVN-Kubernetes 네트워크 플러그인을 사용하여 클러스터를 설치해야 합니다. 자세한 내용은 담당 매트릭스 를 참조하십시오.
7.1. CNI 플러그인 없이 HCP 클러스터를 사용하여 ROSA 생성 링크 복사링크가 클립보드에 복사되었습니다!
7.1.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- AWS 사전 요구 사항을 완료했는지 확인합니다.
- VPC( 가상 프라이빗 클라우드 )가 구성되어 있는지 확인합니다.
7.1.2. 계정 전체 STS 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
ROSA(Red Hat OpenShift Service on AWS) CLI(rosa)를 사용하여 호스팅된 컨트롤 플레인(HCP) 클러스터가 있는 AWS(ROSA)에서 Red Hat OpenShift Service를 생성하기 전에 Operator 정책을 포함하여 필요한 계정 전체 역할 및 정책을 생성합니다.
HCP 클러스터를 사용하는 ROSA에는 AWS 관리 정책이 연결된 계정 및 Operator 역할이 필요합니다. 고객 관리 정책은 지원되지 않습니다. HCP 클러스터의 ROSA 관리 정책에 대한 자세한 내용은 ROSA 계정 역할에 대한 AWS 관리 정책을 참조하십시오.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
절차
AWS 계정에 없는 경우 필요한 계정 전체 STS 역할을 생성하고 다음 명령을 실행하여 정책을 연결합니다.
rosa create account-roles --hosted-cp
$ rosa create account-roles --hosted-cpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 다음 명령을 실행하여 접두사를 환경 변수로 설정합니다.
export ACCOUNT_ROLES_PREFIX=<account_role_prefix>
$ export ACCOUNT_ROLES_PREFIX=<account_role_prefix>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 변수 값을 확인합니다.
echo $ACCOUNT_ROLES_PREFIX
$ echo $ACCOUNT_ROLES_PREFIXCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ManagedOpenShift
ManagedOpenShiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ROSA의 AWS 관리 IAM 정책에 대한 자세한 내용은 ROSA의 AWS 관리 IAM 정책을 참조하십시오.
7.1.3. OpenID Connect 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
AWS 클러스터에서 Red Hat OpenShift Service를 사용하는 경우 클러스터를 생성하기 전에 OpenID Connect(OIDC) 구성을 생성할 수 있습니다. 이 구성은 OpenShift Cluster Manager와 함께 사용하도록 등록됩니다.
사전 요구 사항
- AWS에서 Red Hat OpenShift Service에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 최신 Red Hat OpenShift Service on AWS(ROSA) CLI를 설치하고 구성했습니다.
절차
AWS 리소스와 함께 OIDC 구성을 생성하려면 다음 명령을 실행합니다.
rosa create oidc-config --mode=auto --yes
$ rosa create oidc-config --mode=auto --yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 다음 정보를 반환합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터를 생성할 때 OIDC 구성 ID를 제공해야 합니다. CLI 출력은
--mode auto에 대해 이 값을 제공합니다. 그렇지 않으면--mode 수동에 대한awsCLI 출력에 따라 이러한 값을 결정해야합니다.선택 사항: 나중에 사용할 수 있도록 OIDC 구성 ID를 변수로 저장할 수 있습니다. 다음 명령을 실행하여 변수를 저장합니다.
export OIDC_ID=<oidc_config_id>
$ export OIDC_ID=<oidc_config_id>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 위의 출력 예에서 OIDC 구성 ID는 13cdr6b입니다.
다음 명령을 실행하여 변수 값을 확인합니다.
echo $OIDC_ID
$ echo $OIDC_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
13cdr6b
13cdr6bCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
사용자 조직과 연결된 클러스터에 사용 가능한 OIDC 구성을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list oidc-config
$ rosa list oidc-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDN
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDNCopy to Clipboard Copied! Toggle word wrap Toggle overflow
7.1.4. Operator 역할 및 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터와 함께 ROSA를 사용하는 경우 호스팅되는 컨트롤 플레인(HCP) 배포와 함께 ROSA(Red Hat OpenShift Service on AWS)에 필요한 Operator IAM 역할을 생성해야 합니다. 클러스터 Operator는 Operator 역할을 사용하여 백엔드 스토리지, 클라우드 공급자 인증 정보 관리, 클러스터에 대한 외부 액세스와 같은 클러스터 작업을 수행하는 데 필요한 임시 권한을 얻습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
-
설치 호스트에 AWS ROSA CLI(
rosa)에 최신 Red Hat OpenShift Service를 설치하고 구성했습니다. - 계정 전체 AWS 역할을 생성하셨습니다.
절차
다음 명령을 사용하여 접두사 이름을 환경 변수로 설정합니다.
export OPERATOR_ROLES_PREFIX=<prefix_name>
$ export OPERATOR_ROLES_PREFIX=<prefix_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Operator 역할을 생성하려면 다음 명령을 실행합니다.
rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-RoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 분석에서는 Operator 역할 생성에 대한 옵션을 제공합니다.
rosa create operator-roles --hosted-cp
$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX1 --oidc-config-id=$OIDC_ID2 --installer-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow HCP 클러스터의 ROSA에 올바른 역할을 생성하려면
--hosted-cp매개변수를 포함해야 합니다. 이 명령은 다음 정보를 반환합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제 Operator 역할이 생성되어 HCP 클러스터를 사용하여 ROSA를 생성할 준비가 되었습니다.
검증
ROSA 계정과 연결된 Operator 역할을 나열할 수 있습니다. 다음 명령을 실행합니다.
rosa list operator-roles
$ rosa list operator-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 명령을 실행한 후 AWS 계정과 연결된 모든 접두사를 표시하고 이 접두사와 연결된 역할 수를 기록합니다. 이러한 역할과 세부 정보를 모두 확인해야 하는 경우 세부 정보 프롬프트에 이러한 역할을 나열하도록 "예"를 입력합니다.
7.2. 클러스터 생성 링크 복사링크가 클립보드에 복사되었습니다!
AWS (ROSA) 명령줄 인터페이스(CLI)에서 Red Hat OpenShift Service를 사용하여 클러스터를 생성하는 경우 선택적 플래그 --no-cni 를 추가하여 CNI 플러그인 없이 클러스터를 생성할 수 있습니다.
사전 요구 사항
- HCP를 사용하여 ROSA에 대한 AWS 사전 요구 사항을 완료했습니다.
- 사용 가능한 AWS 서비스 할당량이 있습니다.
- AWS 콘솔에서 ROSA 서비스를 활성화했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다.rosa 버전을실행하여 현재 설치된 ROSA CLI 버전을 확인합니다. 최신 버전을 사용할 수 있는 경우 CLI는 이 업그레이드를 다운로드할 수 있는 링크를 제공합니다. - ROSA CLI를 사용하여 Red Hat 계정에 로그인했습니다.
- OIDC 구성을 생성했습니다.
- AWS 계정에 ELB(Elastic Load Balancing) 서비스 역할이 있는지 확인했습니다.
절차
다음 명령 중 하나를 사용하여 HCP 클러스터를 사용하여 ROSA를 생성할 수 있습니다.
참고HCP 클러스터를 사용하여 ROSA를 생성할 때 기본 머신 Classless Inter-Domain Routing (CIDR)은
10.0.0.0/16입니다. VPC 서브넷의 CIDR 범위에 해당하지 않는 경우 다음 명령에--machine-cidr <address_block>을 추가합니다. AWS의 Red Hat OpenShift Service의 기본 CIDR 범위에 대한 자세한 내용은 CIDR 범위 정의를 참조하십시오.다음 명령을 실행하여 공개적으로 사용 가능한 API, 공개적으로 사용 가능한 Ingress, CNI 플러그인을 사용하여 클러스터를 생성합니다.
rosa create cluster --cluster-name=<cluster_name> \ --sts --mode=auto --hosted-cp --operator-roles-prefix <operator-role-prefix> \ --oidc-config-id <ID-of-OIDC-configuration> --subnet-ids=<public-subnet-id>,<private-subnet-id> --no-cni$ rosa create cluster --cluster-name=<cluster_name> \ --sts --mode=auto --hosted-cp --operator-roles-prefix <operator-role-prefix> \ --oidc-config-id <ID-of-OIDC-configuration> --subnet-ids=<public-subnet-id>,<private-subnet-id> --no-cniCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 단일 초기 머신 풀, 비공개로 사용 가능한 API, 비공개로 사용 가능한 Ingress, CNI 플러그인을 사용하여 클러스터를 생성합니다.
rosa create cluster --private --cluster-name=<cluster_name> \ --sts --mode=auto --hosted-cp --subnet-ids=<private-subnet-id> --no-cni$ rosa create cluster --private --cluster-name=<cluster_name> \ --sts --mode=auto --hosted-cp --subnet-ids=<private-subnet-id> --no-cniCopy to Clipboard Copied! Toggle word wrap Toggle overflow OIDC_ID,SUBNET_IDS,OPERATOR_ROLES_PREFIX변수를 사용하여 환경을 준비한 경우 CNI 플러그인 없이 클러스터를 생성할 때 해당 변수를 계속 사용할 수 있습니다. 예를 들어 다음 명령을 실행합니다.rosa create cluster --hosted-cp --subnet-ids=$SUBNET_IDS --oidc-config-id=$OIDC_ID --cluster-name=<cluster_name> --operator-roles-prefix=$OPERATOR_ROLES_PREFIX --no-cni
$ rosa create cluster --hosted-cp --subnet-ids=$SUBNET_IDS --oidc-config-id=$OIDC_ID --cluster-name=<cluster_name> --operator-roles-prefix=$OPERATOR_ROLES_PREFIX --no-cniCopy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 명령을 실행하여 클러스터 상태를 확인합니다.
rosa describe cluster --cluster=<cluster_name>
$ rosa describe cluster --cluster=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 중요준비상태에 도달한 후에도 클러스터에 처음 로그인하면 자체 CNI 플러그인을 설치할 때까지 노드는 여전히준비되지 않은상태가 됩니다. CNI 설치 후 노드가준비됨으로 변경됩니다.클러스터 설치가 진행됨에 따라 다음
상태필드 변경 사항이 출력에 나열됩니다.-
보류 (사전 계정) -
설치 ( 진행 중인 DNS 설정) -
설치 Ready참고설치에 실패하거나 10분 이상
State필드가준비상태가 아닌 경우 자세한 내용은 설치 문제 해결 설명서를 확인하십시오. 자세한 내용은 설치 문제 해결을 참조하십시오. Red Hat 지원에 문의하려면 AWS에서 Red Hat OpenShift Service에 대한 지원 받기를 참조하십시오.
-
AWS 설치 프로그램 로그에서 Red Hat OpenShift Service를 확인하여 클러스터 생성 진행 상황을 추적합니다. 로그를 확인하려면 다음 명령을 실행합니다.
rosa logs install --cluster=<cluster_name> --watch
$ rosa logs install --cluster=<cluster_name> --watch1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 선택 사항: 설치가 진행되는 동안 새 로그 메시지를 감시하려면
--watch인수를 사용합니다.
7.2.1. CNI 플러그인이 없는 클러스터에 대해 예상되는 동작 링크 복사링크가 클립보드에 복사되었습니다!
HCP 클러스터 설치가 완료된 ROSA가 있지만 CNI 플러그인 없이는 클러스터가 작동할 수 없습니다. 노드가 준비되지 않았으므로 워크로드를 배포할 수 없습니다. 예를 들어 AWS 클러스터 웹 콘솔의 Red Hat OpenShift Service를 사용할 수 없으므로 OpenShift CLI(oc)를 사용하여 클러스터에 로그인해야 합니다. 또한 HAProxy 기반 Ingress 컨트롤러, 이미지 레지스트리 및 prometheus 기반 모니터링 스택과 같은 기타 OpenShift 구성 요소가 실행되지 않습니다. 이는 CNI 공급자를 설치할 때까지 예상되는 동작입니다.
7.3. 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
-
CNI 플러그인을 설치합니다. 그러면 노드가
not상태로 변경됩니다.ready - ROSA 클러스터 문서에 액세스하여 ROSA 클러스터에 액세스합니다.
8장. HCP 클러스터를 사용하여 ROSA 삭제 링크 복사링크가 클립보드에 복사되었습니다!
호스팅된 컨트롤 플레인(HCP) 클러스터가 있는 AWS(ROSA)에서 Red Hat OpenShift Service를 삭제하려면 Red Hat OpenShift Cluster Manager 또는 ROSA CLI(명령줄 인터페이스)(rosa)를 사용할 수 있습니다. 클러스터를 삭제한 후 클러스터에서 사용하는 AWS IAM(Identity and Access Management) 리소스도 삭제할 수 있습니다.
8.1. HCP 클러스터 및 클러스터별 IAM 리소스를 사용하여 ROSA 삭제 링크 복사링크가 클립보드에 복사되었습니다!
ROSA CLI(명령줄 인터페이스) 또는 Red Hat OpenShift Cluster Manager를 사용하여 HCP 클러스터로 ROSA를 삭제할 수 있습니다.
클러스터를 삭제한 후 ROSA CLI를 사용하여 AWS 계정의 클러스터별 IAM(Identity and Access Management) 리소스를 정리할 수 있습니다. 클러스터별 리소스에는 Operator 역할 및 OpenID Connect(OIDC) 공급자가 포함됩니다.
클러스터 삭제 및 프로세스에서 리소스가 사용되므로 IAM 리소스를 제거하기 전에 클러스터 삭제를 완료해야 합니다.
애드온이 설치되면 클러스터를 삭제하기 전에 추가 기능이 제거되므로 클러스터 삭제 시간이 오래 걸립니다. 시간 양은 애드온의 수와 크기에 따라 다릅니다.
사전 요구 사항
- HCP 클러스터가 있는 ROSA를 설치했습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다.
절차
다음 명령을 실행하여 클러스터 ID, 클러스터별 Operator 역할의 ARMN(Amazon Resource Names) 및 OIDC 공급자의 끝점 URL을 가져옵니다.
rosa describe cluster --cluster=<cluster_name>
$ rosa describe cluster --cluster=<cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 중요클러스터를 삭제한 후 ROSA CLI를 사용하여 클러스터별 STS 리소스를 삭제하려면 클러스터 ID가 필요합니다.
OpenShift Cluster Manager 또는 ROSA CLI(
rosa)를 사용하여 클러스터를 삭제합니다.OpenShift Cluster Manager를 사용하여 클러스터를 삭제하려면 다음을 수행합니다.
- OpenShift Cluster Manager 로 이동합니다.
-
클러스터 옆에 있는 옵션 메뉴
를 클릭하고 클러스터 삭제 를 선택합니다.
- 클러스터 이름을 프롬프트에 입력하고 삭제 를 클릭합니다.
ROSA CLI를 사용하여 클러스터를 삭제하려면 다음을 수행합니다.
다음 명령을 실행하여 <
cluster_name>을 클러스터의 이름 또는 ID로 바꿉니다.rosa delete cluster --cluster=<cluster_name> --watch
$ rosa delete cluster --cluster=<cluster_name> --watchCopy to Clipboard Copied! Toggle word wrap Toggle overflow 중요Operator 역할 및 OIDC 공급자를 제거하기 전에 클러스터 삭제가 완료될 때까지 기다려야 합니다.
다음 명령을 실행하여 클러스터별 Operator IAM 역할을 삭제합니다.
rosa delete operator-roles --prefix <operator_role_prefix>
$ rosa delete operator-roles --prefix <operator_role_prefix>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 OIDC 공급자를 삭제합니다.
rosa delete oidc-provider --oidc-config-id <oidc_config_id>
$ rosa delete oidc-provider --oidc-config-id <oidc_config_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
문제 해결
- IAM 역할이 누락되어 클러스터를 삭제할 수 없는 경우 삭제할 수 없는 클러스터 복구를 참조하십시오.
- 하이브리드 클라우드 콘솔에서 보류 중인 클러스터에 대한 애드온이 없는지 확인합니다.
- Amazon Web Console에서 모든 AWS 리소스 및 종속 항목이 삭제되었는지 확인합니다.
8.2. 계정 전체 IAM 리소스 삭제 링크 복사링크가 클립보드에 복사되었습니다!
계정 전체 AWS IAM(Identity and Access Management) 리소스에 의존하는 호스팅된 컨트롤 플레인(HCP) 클러스터를 사용하여 AWS(ROSA)에서 모든 Red Hat OpenShift Service를 삭제한 후 계정 전체 리소스를 삭제할 수 있습니다.
Red Hat OpenShift Cluster Manager를 사용하여 HCP 클러스터와 함께 ROSA를 더 이상 설치할 필요가 없는 경우 OpenShift Cluster Manager 및 사용자 IAM 역할도 삭제할 수 있습니다.
동일한 AWS 계정의 다른 ROSA와 HCP 클러스터에서 계정 전체 IAM 역할 및 정책을 사용할 수 있습니다. 다른 클러스터에 필요하지 않은 경우에만 리소스를 제거합니다.
OpenShift Cluster Manager를 사용하여 동일한 AWS 계정의 AWS 클러스터에서 다른 Red Hat OpenShift Service를 설치, 관리 및 삭제하려면 OpenShift Cluster Manager 및 사용자 IAM 역할이 필요합니다. OpenShift Cluster Manager를 사용하여 계정의 AWS 클러스터에 Red Hat OpenShift Service를 더 이상 설치할 필요가 없는 경우에만 역할을 제거합니다. 삭제 전에 이러한 역할이 제거된 경우 클러스터 복구에 대한 자세한 내용은 클러스터 배포 문제 해결에서 "삭제할 수 없는 클러스터 복구"를 참조하십시오.
8.2.1. 계정 전체 IAM 역할 및 정책 삭제 링크 복사링크가 클립보드에 복사되었습니다!
이 섹션에서는 계정 전체 Operator 정책과 함께 HCP 배포와 함께 ROSA에 대해 생성한 계정 전체 IAM 역할 및 정책을 삭제하는 단계를 제공합니다. 계정 전체 AWS IAM(Identity and Access Management) 역할 및 정책을 삭제하는 HCP 클러스터를 사용하는 모든 ROSA를 삭제한 후에만 삭제할 수 있습니다.
동일한 AWS 계정의 다른 Red Hat OpenShift Service에서 계정 전체 IAM 역할 및 정책을 사용할 수 있습니다. 다른 클러스터에 필요하지 않은 경우에만 역할을 제거합니다.
사전 요구 사항
- 삭제하려는 계정 전체 IAM 역할이 있습니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다.
절차
계정 전체 역할을 삭제합니다.
ROSA CLI(
rosa)를 사용하여 AWS 계정의 계정 전체 역할을 나열합니다.rosa list account-roles
$ rosa list account-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Fetching account roles ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION AWS Managed ManagedOpenShift-HCP-ROSA-Installer-Role Installer arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Installer-Role 4.18 Yes ManagedOpenShift-HCP-ROSA-Support-Role Support arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Support-Role 4.18 Yes ManagedOpenShift-HCP-ROSA-Worker-Role Worker arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Worker-Role 4.18 Yes
I: Fetching account roles ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION AWS Managed ManagedOpenShift-HCP-ROSA-Installer-Role Installer arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Installer-Role 4.18 Yes ManagedOpenShift-HCP-ROSA-Support-Role Support arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Support-Role 4.18 Yes ManagedOpenShift-HCP-ROSA-Worker-Role Worker arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Worker-Role 4.18 YesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 계정 전체 역할을 삭제합니다.
rosa delete account-roles --prefix <prefix> --mode auto
$ rosa delete account-roles --prefix <prefix> --mode auto1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
--<prefix> 인수를포함해야 합니다. <prefix>를 삭제할 계정 전체 역할의 접두사로 바꿉니다. 계정 전체 역할을 생성할 때 사용자 지정 접두사를 지정하지 않은 경우 기본 접두사인ManagedOpenShift를 지정합니다.
중요계정 전체 IAM 역할은 동일한 AWS 계정의 다른 ROSA 클러스터에서 사용할 수 있습니다. 다른 클러스터에 필요하지 않은 경우에만 역할을 제거합니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
계정 전체 인라인 및 Operator 정책을 삭제합니다.
AWS IAM 콘솔 의 정책 페이지에서 계정 전체 역할 및 정책을 생성할 때 지정한 접두사로 정책 목록을 필터링합니다.
참고계정 전체 역할을 생성할 때 사용자 지정 접두사를 지정하지 않은 경우 기본 접두사인
ManagedOpenShift를 검색합니다.AWS IAM 콘솔 을 사용하여 계정 전체 인라인 정책 및 Operator 정책을 삭제합니다. AWS IAM 콘솔을 사용하여 IAM 정책 삭제에 대한 자세한 내용은 AWS 문서의 IAM 정책 삭제 를 참조하십시오.
중요동일한 AWS 계정의 다른 ROSA에서 계정 전체 인라인 및 Operator IAM 정책을 사용할 수 있습니다. 다른 클러스터에 필요하지 않은 경우에만 역할을 제거합니다.
8.2.2. OpenShift Cluster Manager 및 사용자 IAM 역할 연결 해제 및 삭제 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift Cluster Manager를 사용하여 HCP 클러스터로 ROSA를 설치할 때 Red Hat 조직에 연결되는 OpenShift Cluster Manager 및 사용자 IAM(Identity and Access Management) 역할도 생성합니다. 클러스터를 삭제한 후 ROSA CLI(rosa)를 사용하여 역할을 연결 해제하고 삭제할 수 있습니다.
OpenShift Cluster Manager를 사용하여 동일한 AWS 계정에서 HCP를 사용하여 다른 ROSA를 설치하고 관리하려면 OpenShift Cluster Manager 및 사용자 IAM 역할이 필요합니다. 더 이상 OpenShift Cluster Manager를 사용하여 HCP 클러스터와 함께 ROSA를 설치할 필요가 없는 경우에만 역할을 제거합니다.
사전 요구 사항
- OpenShift Cluster Manager 및 사용자 IAM 역할을 생성하여 Red Hat 조직에 연결합니다.
-
설치 호스트에 최신 ROSA CLI(
rosa)를 설치하고 구성했습니다. - Red Hat 조직에는 조직 관리자 권한이 있습니다.
절차
Red Hat 조직에서 OpenShift Cluster Manager IAM 역할을 연결 해제하고 역할을 삭제합니다.
AWS 계정의 OpenShift Cluster Manager IAM 역할을 나열합니다.
rosa list ocm-roles
$ rosa list ocm-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Fetching ocm roles ROLE NAME ROLE ARN LINKED ADMIN AWS Managed ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> Yes Yes Yes
I: Fetching ocm roles ROLE NAME ROLE ARN LINKED ADMIN AWS Managed ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> Yes Yes YesCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Cluster Manager IAM 역할이 이전 명령의 출력에 연결된 것으로 표시되면 다음 명령을 실행하여 Red Hat 조직의 역할을 연결 해제합니다.
rosa unlink ocm-role --role-arn <arn>
$ rosa unlink ocm-role --role-arn <arn>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- &
lt;arn>을 OpenShift Cluster Manager IAM 역할의 ARM(Amazon Resource Name)으로 바꿉니다. ARN은 이전 명령의 출력에 지정됩니다. 이전 예에서 ARN은arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> 형식으로 되어 있습니다.
출력 예
I: Unlinking OCM role ? Unlink the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' role from organization '<red_hat_organization_id>'? Yes I: Successfully unlinked role-arn 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' from organization account '<red_hat_organization_id>'
I: Unlinking OCM role ? Unlink the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' role from organization '<red_hat_organization_id>'? Yes I: Successfully unlinked role-arn 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' from organization account '<red_hat_organization_id>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Cluster Manager IAM 역할 및 정책을 삭제합니다.
rosa delete ocm-role --role-arn <arn>
$ rosa delete ocm-role --role-arn <arn>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Deleting OCM role ? OCM Role ARN: arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> ? Delete 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' ocm role? Yes ? OCM role deletion mode: auto I: Successfully deleted the OCM role
I: Deleting OCM role ? OCM Role ARN: arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> ? Delete 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' ocm role? Yes ? OCM role deletion mode: auto1 I: Successfully deleted the OCM roleCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 삭제 모드를 지정합니다.
자동모드를 사용하여 OpenShift Cluster Manager IAM 역할 및 정책을 자동으로 삭제할 수 있습니다.수동모드에서 ROSA CLI는 역할 및 정책을 삭제하는 데 필요한aws명령을 생성합니다.수동모드를 사용하면aws명령을 수동으로 실행하기 전에 세부 정보를 검토할 수 있습니다.
Red Hat 조직에서 사용자 IAM 역할을 연결 해제하고 역할을 삭제합니다.
AWS 계정의 사용자 IAM 역할을 나열합니다.
rosa list user-roles
$ rosa list user-rolesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Fetching user roles ROLE NAME ROLE ARN LINKED ManagedOpenShift-User-<ocm_user_name>-Role arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role Yes
I: Fetching user roles ROLE NAME ROLE ARN LINKED ManagedOpenShift-User-<ocm_user_name>-Role arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role YesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 IAM 역할이 이전 명령의 출력에 연결된 것으로 표시되면 Red Hat 조직의 역할을 연결 해제합니다.
rosa unlink user-role --role-arn <arn>
$ rosa unlink user-role --role-arn <arn>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- &
lt;arn>을 사용자 IAM 역할의 Amazon 리소스 이름(ARN)으로 바꿉니다. ARN은 이전 명령의 출력에 지정됩니다. 위 예에서 ARN은arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role형식으로 되어 있습니다.
출력 예
I: Unlinking user role ? Unlink the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' role from the current account '<ocm_user_account_id>'? Yes I: Successfully unlinked role ARN 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' from account '<ocm_user_account_id>'
I: Unlinking user role ? Unlink the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' role from the current account '<ocm_user_account_id>'? Yes I: Successfully unlinked role ARN 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' from account '<ocm_user_account_id>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 IAM 역할을 삭제합니다.
rosa delete user-role --role-arn <arn>
$ rosa delete user-role --role-arn <arn>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
I: Deleting user role ? User Role ARN: arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role ? Delete the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' role from the AWS account? Yes ? User role deletion mode: auto I: Successfully deleted the user role
I: Deleting user role ? User Role ARN: arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role ? Delete the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' role from the AWS account? Yes ? User role deletion mode: auto1 I: Successfully deleted the user roleCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 삭제 모드를 지정합니다.
자동모드를 사용하여 사용자 IAM 역할을 자동으로 삭제할 수 있습니다.수동모드에서 ROSA CLI는 역할을 삭제하는 데 필요한aws명령을 생성합니다.수동모드를 사용하면aws명령을 수동으로 실행하기 전에 세부 정보를 검토할 수 있습니다.
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.