8.10. IAM 역할 문제 해결
8.10.1. ocm-roles 및 user-role IAM 리소스 문제 해결
ROSA(Red Hat OpenShift Service on AWS) CLI, rosa
를 사용하여 클러스터를 생성하려고 할 때 오류가 발생할 수 있습니다.
출력 예
E: Failed to create cluster: The sts_user_role is not linked to account '1oNl'. Please create a user role and link it to the account.
이 오류는 user-role
IAM 역할이 AWS 계정에 연결되어 있지 않음을 의미합니다. 이 오류의 가장 큰 원인은 Red Hat 조직의 다른 사용자가 ocm-role
IAM 역할을 생성했기 때문입니다. 사용자 역할
IAM 역할을 생성해야 합니다.
사용자가 Red Hat 계정에 연결된 ocm-role
IAM 리소스를 설정한 후에는 Red Hat 조직에서 클러스터를 프로비저닝하기 위해 사용자 역할
IAM 역할이 있어야 합니다.
프로세스
다음 명령을 사용하여
ocm-role
및user-role
IAM 역할의 상태를 평가합니다.$ rosa list ocm-role
출력 예
I: Fetching ocm roles ROLE NAME ROLE ARN LINKED ADMIN ManagedOpenShift-OCM-Role-1158 arn:aws:iam::2066:role/ManagedOpenShift-OCM-Role-1158 No No
$ rosa list user-role
출력 예
I: Fetching user roles ROLE NAME ROLE ARN LINKED ManagedOpenShift-User.osdocs-Role arn:aws:iam::2066:role/ManagedOpenShift-User.osdocs-Role Yes
이러한 명령의 결과를 사용하여 누락된 IAM 리소스를 생성하고 연결할 수 있습니다.
8.10.1.1. ocm-role IAM 역할 생성
CLI(명령줄 인터페이스)를 사용하여 ocm-role
IAM 역할을 생성합니다.
사전 요구 사항
- AWS 계정이 있습니다.
- OpenShift Cluster Manager 조직에 Red Hat 조직 관리자 권한이 있습니다.
- AWS 계정 전체 역할을 설치하는 데 필요한 권한이 있습니다.
-
설치 호스트에 최신 Red Hat OpenShift Service on AWS(ROSA) CLI를 설치하고 구성했습니다.
프로세스
기본 권한으로 ocm-role IAM 역할을 생성하려면 다음 명령을 실행합니다.
$ rosa create ocm-role
관리자 권한으로 ocm-role IAM 역할을 생성하려면 다음 명령을 실행합니다.
$ rosa create ocm-role --admin
이 명령을 사용하면 특정 속성을 지정하여 역할을 생성할 수 있습니다. 다음 예제 출력은 선택한 "자동 모드"를 표시하여 ROSA CLI(
rosa
)에서 Operator 역할 및 정책을 생성할 수 있습니다. 자세한 내용은 추가 리소스의 "계정 전체 역할 생성 방법"을 참조하십시오.
출력 예
I: Creating ocm role ? Role prefix: ManagedOpenShift 1 ? Enable admin capabilities for the OCM role (optional): No 2 ? Permissions boundary ARN (optional): 3 ? Role Path (optional): 4 ? Role creation mode: auto 5 I: Creating role using 'arn:aws:iam::<ARN>:user/<UserName>' ? Create the 'ManagedOpenShift-OCM-Role-182' role? Yes 6 I: Created role 'ManagedOpenShift-OCM-Role-182' with ARN 'arn:aws:iam::<ARN>:role/ManagedOpenShift-OCM-Role-182' I: Linking OCM role ? OCM Role ARN: arn:aws:iam::<ARN>:role/ManagedOpenShift-OCM-Role-182 7 ? Link the 'arn:aws:iam::<ARN>:role/ManagedOpenShift-OCM-Role-182' role with organization '<AWS ARN>'? Yes 8 I: Successfully linked role-arn 'arn:aws:iam::<ARN>:role/ManagedOpenShift-OCM-Role-182' with organization account '<AWS ARN>'
- 1
- 생성된 모든 AWS 리소스의 접두사 값입니다. 이 예제에서
Managed OpenShift
는 모든 AWS 리소스 앞에 추가합니다. - 2
- 이 역할에 추가 관리자 권한이 있도록 하려면 선택합니다.참고
--admin
옵션을 사용한 경우 이 프롬프트가 표시되지 않습니다. - 3
- 권한 경계를 설정하는 정책의 Amazon 리소스 이름(ARN)입니다.
- 4
- 사용자 이름에 대한 IAM 경로를 지정합니다.
- 5
- AWS 역할을 생성할 방법을 선택합니다. ROSA CLI는
auto
를 사용하여 역할 및 정책을 생성하고 연결합니다.자동
모드에서는 AWS 역할을 생성하라는 몇 가지 다른 프롬프트가 표시됩니다. - 6
auto
메서드는 접두사를 사용하여 특정ocm-role
을 생성할지 여부를 요청합니다.- 7
- IAM 역할을 OpenShift Cluster Manager와 연결할지 확인합니다.
- 8
- 생성된 역할을 AWS 조직과 연결합니다.
8.10.1.2. 사용자 역할 IAM 역할 생성
CLI(명령줄 인터페이스)를 사용하여 사용자 역할
IAM 역할을 생성할 수 있습니다.
사전 요구 사항
- AWS 계정이 있습니다.
-
설치 호스트에 최신 Red Hat OpenShift Service on AWS(ROSA) CLI를 설치하고 구성했습니다.
프로세스
기본 권한으로
사용자 역할
IAM 역할을 생성하려면 다음 명령을 실행합니다.$ rosa create user-role
이 명령을 사용하면 특정 속성을 지정하여 역할을 생성할 수 있습니다. 다음 예제 출력은 선택한 "자동 모드"를 표시하여 ROSA CLI(
rosa
)를 사용하여 Operator 역할 및 정책을 생성할 수 있습니다. 자세한 내용은 추가 리소스의 "자동 및 수동 배포 모드 이해"를 참조하십시오.
출력 예
I: Creating User role ? Role prefix: ManagedOpenShift 1 ? Permissions boundary ARN (optional): 2 ? Role Path (optional): 3 ? Role creation mode: auto 4 I: Creating ocm user role using 'arn:aws:iam::2066:user' ? Create the 'ManagedOpenShift-User.osdocs-Role' role? Yes 5 I: Created role 'ManagedOpenShift-User.osdocs-Role' with ARN 'arn:aws:iam::2066:role/ManagedOpenShift-User.osdocs-Role' I: Linking User role ? User Role ARN: arn:aws:iam::2066:role/ManagedOpenShift-User.osdocs-Role ? Link the 'arn:aws:iam::2066:role/ManagedOpenShift-User.osdocs-Role' role with account '1AGE'? Yes 6 I: Successfully linked role ARN 'arn:aws:iam::2066:role/ManagedOpenShift-User.osdocs-Role' with account '1AGE'
- 1
- 생성된 모든 AWS 리소스의 접두사 값입니다. 이 예제에서
Managed OpenShift
는 모든 AWS 리소스 앞에 추가합니다. - 2
- 권한 경계를 설정하는 정책의 Amazon 리소스 이름(ARN)입니다.
- 3
- 사용자 이름에 대한 IAM 경로를 지정합니다.
- 4
- AWS 역할을 생성할 방법을 선택합니다. ROSA CLI는
auto
를 사용하여 역할 및 정책을 생성하고 연결합니다.자동
모드에서는 AWS 역할을 생성하라는 몇 가지 다른 프롬프트가 표시됩니다. - 5
auto
메서드는 접두사를 사용하여 특정user-role
을 생성할지 여부를 요청합니다.- 6
- 생성된 역할을 AWS 조직과 연결합니다.
8.10.1.3. AWS 계정 연결
ROSA(Red Hat OpenShift Service on AWS) CLI, rosa
를 사용하여 AWS 계정을 기존 IAM 역할에 연결할 수 있습니다.
사전 요구 사항
- AWS 계정이 있습니다.
- OpenShift Cluster Manager 를 사용하여 클러스터를 생성합니다.
- AWS 계정 전체 역할을 설치하는 데 필요한 권한이 있습니다. 자세한 내용은 이 섹션의 "추가 리소스"를 참조하십시오.
-
설치 호스트에 최신 AWS(
aws
) 및 ROSA(rosa
) CLI를 설치하고 구성했습니다. ocm-role
및user-role
IAM 역할을 생성했지만 아직 AWS 계정에 연결되지 않았습니다. 다음 명령을 실행하여 IAM 역할이 이미 연결되어 있는지 확인할 수 있습니다.$ rosa list ocm-role
$ rosa list user-role
두 역할의
Linked
열에Yes
가 표시되면 이미 해당 역할을 AWS 계정에 연결했습니다.
프로세스
CLI에서 ARM(Amazon Resource Name)을 사용하여
ocm-role
리소스를 Red Hat 조직에 연결합니다.참고rosa link
명령을 실행하려면 Red Hat 조직 관리자 권한이 있어야 합니다.ocm-role
리소스를 AWS 계정과 연결하면 조직의 모든 사용자에게 표시됩니다.$ rosa link ocm-role --role-arn <arn>
출력 예
I: Linking OCM role ? Link the '<AWS ACCOUNT ID>` role with organization '<ORG ID>'? Yes I: Successfully linked role-arn '<AWS ACCOUNT ID>' with organization account '<ORG ID>'
CLI에서 ARM(Amazon Resource Name)을 사용하여 사용자
역할
리소스를 Red Hat 사용자 계정에 연결합니다.$ rosa link user-role --role-arn <arn>
출력 예
I: Linking User role ? Link the 'arn:aws:iam::<ARN>:role/ManagedOpenShift-User-Role-125' role with organization '<AWS ID>'? Yes I: Successfully linked role-arn 'arn:aws:iam::<ARN>:role/ManagedOpenShift-User-Role-125' with organization account '<AWS ID>'
8.10.1.4. 여러 AWS 계정을 Red Hat 조직과 연결
Red Hat 조직과 여러 AWS 계정을 연결할 수 있습니다. 여러 계정을 연결하면 Red Hat 조직의 관련 AWS 계정에서 AWS(ROSA)에서 Red Hat OpenShift Service를 생성할 수 있습니다.
이 기능을 사용하면 여러 AWS 프로필을 지역 바인딩 환경으로 사용하여 다른 AWS 리전에서 클러스터를 생성할 수 있습니다.
사전 요구 사항
- AWS 계정이 있습니다.
- OpenShift Cluster Manager 를 사용하여 클러스터를 생성합니다.
- AWS 계정 전체 역할을 설치하는 데 필요한 권한이 있습니다.
-
설치 호스트에 최신 AWS(
aws
) 및 ROSA(rosa
) CLI를 설치하고 구성했습니다. -
ocm-role
및user-role
IAM 역할을 생성했습니다.
프로세스
추가 AWS 계정을 연결하려면 먼저 로컬 AWS 구성에 프로필을 생성합니다. 그런 다음 추가 AWS 계정에서 ocm-role
, user 및 account 역할을 생성하여 계정을 Red Hat 조직과 연결합니다.
추가 리전에서 역할을 생성하려면
> 매개변수를 지정하고 < rosa create
명령을 실행할 때 --profile <aws-profileaws_profile
>을 추가 계정 프로필 이름으로 교체합니다.
OpenShift Cluster Manager 역할을 생성할 때 AWS 계정 프로필을 지정하려면 다음을 수행합니다.
$ rosa create --profile <aws_profile> ocm-role
사용자 역할을 생성할 때 AWS 계정 프로필을 지정하려면 다음을 수행합니다.
$ rosa create --profile <aws_profile> user-role
계정 역할을 생성할 때 AWS 계정 프로필을 지정하려면 다음을 수행합니다.
$ rosa create --profile <aws_profile> account-roles
프로필을 지정하지 않으면 기본 AWS 프로필이 사용됩니다.