View a markdown version of this page

ROSA CLI를 사용하여 ROSA 클래식 클러스터 생성 - Red Hat OpenShift Service on AWS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

ROSA CLI를 사용하여 ROSA 클래식 클러스터 생성

다음 섹션에서는 AWS STS 및 ROSA CLI를 사용하여 ROSA 클래식을 시작하는 방법을 설명합니다. Terraform을 사용하여 ROSA 클래식 클러스터를 생성하는 단계는 Red Hat 설명서를 참조하세요. ROSA 클러스터 생성을 위한 Terraform 공급자에 대한 자세한 내용은 Terraform 설명서를 참조하세요.

ROSA CLI는 auto 모드 또는 manual 모드를 사용하여를 프로비저닝 ROSA 하는 데 필요한 IAM 리소스를 생성합니다 클러스터. auto 모드는 필요한 IAM 역할 및 정책과 OpenID Connect(OIDC) 공급자를 즉시 생성합니다. manual 모드는 IAM 리소스를 생성하는 데 필요한 AWS CLI 명령을 출력합니다. manual 모드를 사용하면 생성된 AWS CLI 명령을 수동으로 실행하기 전에 검토할 수 있습니다. manual 모드를 사용하면 조직의 다른 관리자나 그룹에 명령을 전달하여 해당 관리자나 그룹이 리소스를 생성하도록 할 수도 있습니다.

시작하는 방법에 대한 자세한 내용은 단원을 참조하십시오시작하기 ROSA.

사전 조건

에 나열된 사전 조건 작업을 완료합니다를 사용하도록 설정 ROSA.

ROSA CLI 및를 사용하여 ROSA 클래식 클러스터 생성 AWS STS

ROSA CLI 및를 클러스터 사용하여 ROSA 클래식을 생성할 수 있습니다 AWS STS.

  1. --mode auto 또는를 사용하여 필요한 IAM 계정 역할 및 정책을 생성합니다--mode manual.

    • rosa create account-roles --classic --mode auto
    • rosa create account-roles --classic --mode manual
      참고

      오프라인 액세스 토큰이 만료된 경우 ROSA CLI는 권한 부여 토큰을 업데이트해야 한다는 오류 메시지를 출력합니다. 문제 해결 단계는 섹션을 참조하세요ROSA CLI 만료된 오프라인 액세스 토큰 문제 해결.

  2. --mode auto 또는를 클러스터 사용하여를 생성합니다--mode manual. auto 모드를 사용하면 클러스터를 더 빠르게 생성할 수 있습니다. manual 모드는 클러스터에 대한 사용자 지정 설정을 지정하라는 메시지를 표시합니다.

    • rosa create cluster --cluster-name <CLUSTER_NAME> --sts --mode auto
      참고

      --mode auto를 지정하면 rosa create cluster 명령이 클러스터별 연산자 IAM 역할과 OIDC 공급자를 자동으로 생성합니다. 운영자는 인증 시 OIDC 공급자를 사용합니다.

      참고

      --mode auto 기본값을 사용하면 안정적인 최신 OpenShift 버전이 설치됩니다.

    • rosa create cluster --cluster-name <CLUSTER_NAME> --sts --mode manual
      중요

      manual 모드에서 etcd 암호화를 활성화하면 약 20%의 성능 오버헤드가 발생합니다. 오버헤드는 etcd 볼륨을 암호화하는 기본 Amazon EBS 암호화 외에도이 두 번째 암호화 계층을 도입한 결과입니다.

      참고

      manual 모드를 실행하여 클러스터를 생성한 후에는 클러스터별 운영자 IAM 역할과 클러스터 운영자가 인증에 사용하는 OpenID Connect 공급자를 수동으로 생성해야 합니다.

  3. 의 상태를 확인합니다 클러스터.

    rosa describe cluster -c <CLUSTER_NAME>
    참고

    프로비저닝 프로세스가 실패하거나 40분 후에도 State 필드가 준비 상태로 변경되지 않는 경우 섹션을 참조하세요문제 해결. 지원 또는 Red Hat 지원팀에 문의하여 지원을 받으려면 섹션을 참조하세요ROSA 지원 받기.

  4. OpenShift 설치 관리자 로그를 확인하여 클러스터 생성 진행 상황을 추적합니다.

    rosa logs install -c <CLUSTER_NAME> --watch

자격 증명 공급자 구성 및 클러스터 액세스 권한 부여

ROSA 에는 기본 제공 OAuth 서버가 포함되어 있습니다. 클러스터 를 생성한 후에는 자격 증명 공급자를 사용하도록 OAuth를 구성해야 합니다. 그런 다음 구성된 ID 공급자에 사용자를 추가하여 클러스터액세스 권한을 부여할 수 있습니다. 필요에 따라 이러한 사용자에게 cluster-admin 또는 dedicated-admin 권한을 부여할 수 있습니다.

ROSA 클러스터에 맞게 다양한 ID 제공자 유형을 구성할 수 있습니다 . 지원되는 유형으로는 GitHub, GitHub Enterprise, GitLab, Google, LDAP, OpenID Connect, HTPasswd ID 공급자 등이 있습니다.

중요

HTPasswd ID 공급자는 한 명의 정적 관리자 사용자를 생성할 수 있도록 하기 위한 용도로만 포함됩니다. HTPassWD는 ROSA범용 ID 공급자로는 지원되지 않습니다.

다음 절차는 GitHub ID 공급자를 예로 구성합니다. 지원되는 각 ID 제공자 유형을 구성하는 방법에 대한 지침은 AWS STS ID 제공자 구성을 참조하세요.

  1. github.com으로 이동하여 GitHub 계정에 로그인합니다.

  2. 의 자격 증명 프로비저닝에 사용할 GitHub 조직이 없는 경우 조직을 클러스터생성합니다. 자세한 내용을 알아보려면 GitHub의 설명서의 단계를 참조하세요.

  3. ROSA CLI의 대화형 모드를 사용하여 클러스터의 자격 증명 공급자를 구성합니다.

    rosa create idp --cluster=<CLUSTER_NAME> --interactive
  4. 출력의 구성 프롬프트에 따라 GitHub 조직의 멤버에 대한 클러스터 액세스를 제한합니다.

    I: Interactive mode enabled. Any optional fields can be left empty and a default will be selected. ? Type of identity provider: github ? Identity provider name: github-1 ? Restrict to members of: organizations ? GitHub organizations: <GITHUB_ORG_NAME> ? To use GitHub as an identity provider, you must first register the application: - Open the following URL: https://github.com/organizations/<GITHUB_ORG_NAME>/settings/applications/new?oauth_application%5Bcallback_url%5D=https%3A%2F%2Foauth-openshift.apps.<CLUSTER_NAME>/<RANDOM_STRING>.p1.openshiftapps.com%2Foauth2callback%2Fgithub-1&oauth_application%5Bname%5D=<CLUSTER_NAME>&oauth_application%5Burl%5D=https%3A%2F%2Fconsole-openshift-console.apps.<CLUSTER_NAME>/<RANDOM_STRING>.p1.openshiftapps.com - Click on 'Register application' ...
  5. 출력에서 URL을 열고 <GITHUB_ORG_NAME>를 GitHub 조직의 이름으로 대체합니다.

  6. GitHub 웹 페이지에서 애플리케이션 등록을 선택하여 GitHub 조직에 새 OAuth 애플리케이션을 등록합니다.

  7. GitHub OAuth 페이지의 정보를 사용해 다음 명령어를 실행하여 나머지 rosa create idp 대화형 프롬프트를 채웁니다. <GITHUB_CLIENT_ID><GITHUB_CLIENT_SECRET>를 GitHub OAuth 애플리케이션의 보안 인증 정보로 교체합니다.

    ... ? Client ID: <GITHUB_CLIENT_ID> ? Client Secret: [? for help] <GITHUB_CLIENT_SECRET> ? GitHub Enterprise Hostname (optional): ? Mapping method: claim I: Configuring IDP for cluster '<CLUSTER_NAME>' I: Identity Provider 'github-1' has been created. It will take up to 1 minute for this configuration to be enabled. To add cluster administrators, see 'rosa grant user --help'. To login into the console, open https://console-openshift-console.apps.<CLUSTER_NAME>.<RANDOM_STRING>.p1.openshiftapps.com and click on github-1.
    참고

    ID 공급자 구성이 활성화되는 데 약 2분 정도 걸릴 수 있습니다. cluster-admin 사용자를 구성한 경우 oc get pods -n openshift-authentication --watch를 실행하여 업데이트된 구성으로 OAuth 포드가 재배포되는 것을 관찰할 수 있습니다.

  8. ID 공급자가 올바르게 구성되었는지 확인합니다.

    rosa list idps --cluster=<CLUSTER_NAME>

사용자에게에 대한 액세스 권한 부여 클러스터

구성된 자격 증명 공급자에 추가하여 사용자에게에 대한 액세스 권한을 부여할 수 클러스터 있습니다.

다음 절차는 클러스터에 ID를 프로비저닝하도록 구성된 GitHub 조직에 사용자를 추가합니다.

  1. github.com으로 이동하여 GitHub 계정에 로그인합니다.

  2. GitHub 조직에 클러스터 액세스해야 하는 사용자를 초대합니다. 자세한 내용은 GitHub 설명서에서 조직에 가입하도록 사용자 초대하기를 참조하세요.

cluster-admin 권한 구성

  1. 다음 명령을 실행하여 cluster-admin 권한을 부여합니다. <IDP_USER_NAME><CLUSTER_NAME>을 사용자 및 클러스터 이름으로 바꿉니다.

    rosa grant user cluster-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. 사용자가 cluster-admins 그룹 구성원으로 등록되어 있는지 확인합니다.

    rosa list users --cluster=<CLUSTER_NAME>

dedicated-admin 권한 구성

  1. 다음 명령을 사용하여 dedicated-admin 권한을 부여합니다. 다음 명령을 실행하여 <IDP_USER_NAME><CLUSTER_NAME>를 사용자 및 클러스터 이름으로 바꿉니다.

    rosa grant user dedicated-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. 사용자가 cluster-admins 그룹 구성원으로 등록되어 있는지 확인합니다.

    rosa list users --cluster=<CLUSTER_NAME>

Red Hat Hybrid Cloud 콘솔을 클러스터 통해에 액세스

클러스터 관리자 사용자를 생성하거나 구성된 자격 증명 공급자에 사용자를 추가한 후 Red Hat Hybrid Cloud 콘솔을 클러스터 통해에 로그인할 수 있습니다.

  1. 다음 명령을 클러스터 사용하여의 콘솔 URL을 가져옵니다. 를의 이름으로 <CLUSTER_NAME> 바꿉니다 클러스터.

    rosa describe cluster -c <CLUSTER_NAME> | grep Console
  2. 출력에서 콘솔 URL로 이동하여 로그인합니다.

    • cluster-admin 사용자를 생성한 경우 제공된 보안 인증 정보를 사용하여 로그인합니다.

    • 에 대한 자격 증명 공급자를 구성한 경우 로그인... 대화 상자에서 자격 클러스터증명 공급자 이름을 선택하고 공급자가 제시한 권한 부여 요청을 완료합니다.

개발자 카탈로그에서 애플리케이션 배포

Red Hat 하이브리드 클라우드 콘솔에서 개발자 카탈로그 테스트 애플리케이션을 배포하고 경로를 통해 공개할 수 있습니다.

  1. Red Hat 하이브리드 클라우드 콘솔로 이동하여 앱을 배포할 클러스터를 선택합니다.

  2. 클러스터 페이지에서 콘솔 열기를 선택합니다.

  3. 관리자 시점에서 > 프로젝트 > 프로젝트 생성을 선택합니다.

  4. 프로젝트 이름을 입력하고 선택적으로 표시 이름설명을 추가합니다.

  5. 프로젝트를 생성하려면 생성을 선택합니다.

  6. 개발자 시점으로 전환하고 +추가를 선택합니다. 선택한 프로젝트가 방금 만든 프로젝트인지 확인합니다.

  7. 개발자 카탈로그 대화 상자에서 모든 서비스를 선택합니다.

  8. 개발자 카탈로그 페이지의 메뉴에서 언어 > JavaScript를 선택합니다.

  9. Node.js를 선택한 다음 애플리케이션 생성을 선택하여 Source-to-Image 애플리케이션 생성 페이지를 엽니다.

    참고

    Node.js 옵션을 표시하려면 모든 필터 지우기를 선택해야 할 수도 있습니다.

  10. Git 섹션에서 샘플 사용해보기를 선택합니다.

  11. 이름 필드에 고유한 이름을 추가합니다.

  12. 생성(Create)을 선택합니다.

    참고

    새 애플리케이션을 배포하는 데 몇 분 정도 걸립니다.

  13. 배포가 완료되면 애플리케이션 경로 URL을 선택합니다.

    브라우저의 새 탭이 열리고 다음과 비슷한 메시지가 표시됩니다.

    Welcome to your Node.js application on OpenShift
  14. (선택 사항) 애플리케이션을 삭제하고 리소스를 정리합니다.

    1. 관리자 시점에서 > 프로젝트를 선택합니다.

    2. 프로젝트의 작업 메뉴를 열고 프로젝트 삭제를 선택합니다.

사용자의 cluster-admin 권한 취소

  1. 다음 명령을 사용하여 cluster-admin 권한을 취소합니다. <IDP_USER_NAME><CLUSTER_NAME>를 사용자 및 클러스터 이름으로 바꿉니다.

    rosa revoke user cluster-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. 사용자가 cluster-admins 그룹 구성원으로 등록되어 있지 않은지 확인합니다.

    rosa list users --cluster=<CLUSTER_NAME>

사용자의 dedicated-admin 권한 취소

  1. 다음 명령을 사용하여 dedicated-admin 권한을 취소합니다. <IDP_USER_NAME><CLUSTER_NAME>를 사용자 및 클러스터 이름으로 바꿉니다.

    rosa revoke user dedicated-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. 사용자가 dedicated-admins 그룹 구성원으로 등록되어 있지 않은지 확인합니다.

    rosa list users --cluster=<CLUSTER_NAME>

에 대한 사용자 액세스 취소 클러스터

구성된 자격 증명 공급자에서 자격 증명 공급자를 제거하여 자격 증명 공급자 사용자의 클러스터 액세스를 취소할 수 있습니다.

클러스터에 다양한 ID 공급자 유형을 구성할 수 있습니다. 다음 절차는 GitHub 조직의 멤버에 대한 클러스터 액세스를 취소합니다.

  1. github.com으로 이동하여 GitHub 계정에 로그인합니다.

  2. GitHub 조직에서 사용자를 제거합니다. 자세한 내용은 GitHub 설명서에서 조직에서 사용자 제거하기를 참조하세요.

클러스터 및 AWS STS 리소스 삭제

ROSA CLI를 사용하여 AWS Security Token Service ()를 사용하는 클러스터 를 삭제할 수 있습니다AWS STS. ROSA CLI를 사용하여에서 생성한 IAM 역할 및 OIDC 공급자를 삭제할 수도 있습니다 ROSA. 에서 생성한 IAM 정책을 삭제하려면 IAM 콘솔을 사용할 ROSA수 있습니다.

중요

IAM 에서 생성한 역할 및 정책은 동일한 계정의 다른 ROSA 클러스터에서 사용할 ROSA 수 있습니다.

  1. 를 삭제 클러스터 하고 로그를 확인합니다. <CLUSTER_NAME>을 클러스터이름 또는 ID로 바꿉니다.

    rosa delete cluster --cluster=<CLUSTER_NAME> --watch
    중요

    IAM 역할, 정책 및 OIDC 공급자 클러스터 를 제거하기 전에가 완전히 삭제될 때까지 기다려야 합니다. 설치 관리자가 생성한 리소스를 삭제하려면 계정 IAM 역할이 필요합니다. OpenShift 운영자가 생성한 리소스를 정리하려면 운영자 IAM 역할이 필요합니다. 운영자는 인증 시 OIDC 공급자를 사용합니다.

  2. 다음 명령을 실행하여 클러스터 운영자가 인증에 사용하는 OIDC 공급자를 삭제합니다.

    rosa delete oidc-provider -c <CLUSTER_ID> --mode auto
  3. 클러스터별 연산자 IAM 역할을 삭제합니다.

    rosa delete operator-roles -c <CLUSTER_ID> --mode auto
  4. 다음 명령을 사용하여 계정 IAM 역할을 삭제합니다. <PREFIX>를 삭제할 계정 IAM 역할의 접두사로 바꿉니다. 계정 IAM 역할을 생성할 때 사용자 지정 접두사를 지정한 경우 기본 ManagedOpenShift 접두사를 지정합니다.

    rosa delete account-roles --prefix <PREFIX> --mode auto
  5. 에서 생성한 IAM 정책을 삭제합니다 ROSA.

    1. IAM 콘솔에 로그인합니다.

    2. 왼쪽 메뉴의 액세스 관리에서 정책을 선택합니다.

    3. 삭제하려는 정책을 선택하고 작업 > 삭제를 선택합니다.

    4. 정책 이름을 입력하고 삭제를 선택합니다.

    5. 이 단계를 반복하여 클러스터에 대한 IAM 정책을 각각 삭제합니다.