2.2.2. 수동으로 IAM 생성

Cloud Credential Operator (CCO)는 클라우드 아이덴티티 및 액세스 관리 (IAM) API에 연결할 수 없는 환경에서 설치하기 전에 수동 모드로 전환할 수 있습니다. 또는 관리자가 클러스터 kube-system 네임 스페이스에 관리자 수준의 인증 정보 시크릿을 저장하지 않도록 합니다.

프로세스

  1. 설치 프로그램이 포함된 디렉터리로 변경하고 install-config.yaml 파일을 생성합니다.

    $ openshift-install create install-config --dir <installation_directory>
  2. install-config.yaml 구성 파일을 편집하여 credentialsMode 매개 변수가 Manual로 설정되도록 합니다.

    install-config.yaml 설정 파일 예

    apiVersion: v1
    baseDomain: cluster1.example.com
    credentialsMode: Manual 1
    compute:
    - architecture: amd64
      hyperthreading: Enabled
    ...

    1
    이 행은 credentialsMode 매개변수를 Manual로 설정하기 위해 추가됩니다.
  3. 매니페스트를 생성하려면 설치 프로그램이 포함된 디렉터리에서 다음 명령을 실행합니다.

    $ openshift-install create manifests --dir <installation_directory> 1
    1
    <installation_directory>는 설치 프로그램이 생성하는 파일을 저장할 디렉터리 이름을 지정합니다.
  4. 로컬 클라우드 인증 정보를 사용하여 생성된 admin 인증 정보 시크릿을 제거합니다. 이렇게 제거하면 admin 인증 정보가 클러스터에 저장되지 않습니다.

    $ rm mycluster/openshift/99_cloud-creds-secret.yaml
  5. 설치 프로그램이 포함된 디렉터리에서 openshift-install 바이너리가 다음을 사용하도록 빌드된 OpenShift Container Platform 릴리스 이미지에 대한 세부 정보를 가져옵니다.

    $ openshift-install version

    출력 예

    release image quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64

  6. 배포중인 클라우드를 대상으로하는이 릴리스 이미지에서 모든 CredentialsRequest 개체를 찾습니다.

    $ oc adm release extract quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64 --credentials-requests --cloud=aws

    이로 인해 각 요청에 대한 세부 정보가 표시됩니다.

    샘플 CredentialsRequest 개체

    apiVersion: cloudcredential.openshift.io/v1
    kind: CredentialsRequest
    metadata:
      name: cloud-credential-operator-iam-ro
      namespace: openshift-cloud-credential-operator
    spec:
      secretRef:
        name: cloud-credential-operator-iam-ro-creds
        namespace: openshift-cloud-credential-operator
      providerSpec:
        apiVersion: cloudcredential.openshift.io/v1
        kind: AWSProviderSpec
        statementEntries:
        - effect: Allow
          action:
          - iam:GetUser
          - iam:GetUserPolicy
          - iam:ListAccessKeys
          resource: "*"

  7. 이전에 생성한 openshift-install 매니페스트 디렉토리에 시크릿 YAML 파일을 만듭니다. 시크릿은 각 credentialsRequestspec.secretRef에 정의된 네임 스페이스 및 시크릿 이름을 사용하여 저장해야 합니다. 시크릿 데이터의 형식은 클라우드 공급자마다 다릅니다.
  8. 설치 프로그램이 포함된 디렉터리에서 클러스터 생성을 진행합니다.

    $ openshift-install create cluster --dir <installation_directory>
    중요

    수동으로 유지 관리되는 인증 정보를 사용하는 클러스터를 업그레이드하기 전에 CCO가 업그레이드 가능한 상태인지 확인해야 합니다. 자세한 내용은 클라우드 공급자에 대한 설치 콘텐츠의 인증 정보가 수동으로 유지 관리되는 클러스터 업그레이드 섹션을 참조하십시오.