3.10. 클라우드 공급자 인증 정보 교체 또는 제거

OpenShift Container Platform을 설치한 후 일부 조직에서는 초기 설치 중에 사용된 클라우드 공급자 인증 정보를 교체하거나 제거해야 합니다.

클러스터가 새 인증 정보를 사용할 수 있도록 하려면 CCO(Cloud Credential Operator)에서 클라우드 공급자 인증 정보를 관리하는 데 사용하는 시크릿을 업데이트해야 합니다.

3.10.1. 클라우드 공급자 인증 정보를 수동으로 교체

어떠한 이유로 클라우드 공급자 인증 정보가 변경되면 CCO(Cloud Credential Operator)에서 클라우드 공급자 인증 정보를 관리하기 위해 사용하는 시크릿을 수동으로 업데이트해야 합니다.

클라우드 인증 정보를 교체하는 프로세스는 CCO가 사용하도록 구성된 모드에 따라 달라집니다. Mint 모드를 사용하는 클러스터의 인증 정보를 교체한 후 삭제된 인증 정보를 통해 생성된 구성 요소 인증 정보를 수동으로 제거해야 합니다.

사전 요구 사항

  • 클러스터는 다음을 사용하는 CCO 모드로 클라우드 인증 정보 교체를 수동으로 지원하는 플랫폼에 설치됩니다.

    • Mint 모드의 경우 AWS(Amazon Web Services), Azure 및 GCP(Google Cloud Platform)가 지원됩니다.
    • Passthrough 모드의 경우 AWS, Azure, GCP, RHOSP(Red Hat OpenStack Platform), RHV(Red Hat Virtualization) 및 VMware vSphere가 지원됩니다.
  • OpenShift Container Platform 버전 4.6.18 이상을 사용하고 있습니다.
  • 클라우드 공급자와 인터페이스에 사용되는 인증 정보를 변경했습니다.
  • 새 인증 정보에는 클러스터에서 사용할 수 있도록 구성된 모드 CCO에 대한 충분한 권한이 있습니다.

절차

  1. 웹 콘솔의 Administrator 모드에서 WorkloadsSecrets로 이동합니다.
  2. Secrets 페이지의 표에서 클라우드 공급자의 루트 시크릿을 찾습니다.

    플랫폼시크릿 이름

    AWS

    aws-creds

    Azure

    azure-credentials

    GCP

    gcp-credentials

    RHOSP

    openstack-credentials

    RHV

    ovirt-credentials

    vSphere

    vsphere-creds

  3. 시크릿과 동일한 행에서 옵션 메뉴 kebab 를 클릭하고 시크릿 편집을 선택합니다.
  4. Value 필드의 내용을 기록합니다. 이 정보를 사용하여 인증서를 업데이트한 후 값이 다른지 확인할 수 있습니다.
  5. 클라우드 공급자에 대한 새로운 인증 정보를 사용하여 Value 필드의 텍스트를 업데이트한 다음 저장을 클릭합니다.
  6. 클러스터의 CCO가 Mint 모드를 사용하도록 구성된 경우 개별 CredentialsRequest 오브젝트에서 참조하는 각 구성 요소 시크릿을 삭제합니다.

    1. cluster-admin 역할의 사용자로 OpenShift Container Platform CLI에 로그인합니다.
    2. 참조되는 모든 구성 요소 시크릿의 이름과 네임스페이스를 가져옵니다.

      $ oc -n openshift-cloud-credential-operator get CredentialsRequest -o json | jq -r '.items[] | select (.spec.providerSpec.kind=="<provider_spec>") | .spec.secretRef'

      여기서 <provider_spec> 은 클라우드 공급자의 해당 값입니다.

      플랫폼<provider_spec>

      AWS

      AWSProviderSpec

      Azure

      AzureProviderSpec

      GCP

      GCPProviderSpec

      AWS의 부분 예제 출력

      {
        "name": "ebs-cloud-credentials",
        "namespace": "openshift-cluster-csi-drivers"
      }
      {
        "name": "cloud-credential-operator-iam-ro-creds",
        "namespace": "openshift-cloud-credential-operator"
      }
      ...

    3. 참조된 각 구성 요소 시크릿을 삭제합니다.

      $ oc delete secret <secret_name> -n <secret_namespace>

      여기서 <secret_name>은 시크릿의 이름이며 <secret_namespace>는 시크릿이 포함된 네임스페이스입니다.

      AWS 시크릿 삭제 예

      $ oc delete secret ebs-cloud-credentials -n openshift-cluster-csi-drivers

      공급자 콘솔에서 인증 정보를 수동으로 삭제할 필요가 없습니다. 참조된 구성 요소 시크릿을 삭제하면 CCO가 플랫폼에서 기존 인증 정보를 삭제하고 새 인증서를 생성합니다.

  7. 인증 정보가 변경되었는지 확인하려면 다음을 수행하십시오.

    1. 웹 콘솔의 Administrator 모드에서 WorkloadsSecrets로 이동합니다.
    2. Value 필드의 내용이 이전에 기록된 정보와 다른지 확인합니다.