클러스터 사용자 인증 정보 업데이트

이 페이지에서는 클러스터의 vCenter 및 F5 BIG-IP 사용자 인증 정보를 업데이트하는 방법을 설명합니다.

GKE On-Prem 버전 1.3.1부터 gkectl update credentials vsphere 명령어를 사용하여 vCenter 사용자 인증 정보를 업데이트할 수 있습니다.

GKE On-Prem 버전 1.4.1부터는 gkectl update credentials f5bigip 명령어를 사용하여 F5 BIG-IP 사용자 인증 정보를 업데이트할 수 있습니다.

vSphere 사용자 인증 정보 업데이트

클러스터에 추가할 vCenter 사용자 인증 정보가 이미 있어야 합니다. vCenter 역할 및 사용자 권한에 대해 자세히 알아보기

초기에 각 관리자 및 사용자 클러스터는 이러한 클러스터를 만드는 데 사용한 vCenter 사용자 이름과 비밀번호를 사용하도록 구성됩니다. vCenter 사용자 인증 정보를 업데이트하거나 관리 소유권을 다른 vSphere 사용자 계정으로 전송해야 하는 경우 클러스터의 구성 파일을 업데이트한 후 gkectl update credentials vsphere 명령어를 사용하여 변경사항을 배포하면 됩니다.

다음은 vCenter 사용자 이름 및 비밀번호 구성의 예시입니다.

...
vcenter:
  credentials:
    ...
    username: "vCenter-username@vsphere.local"
    password: "vCenter-user-password"
...

클러스터의 vCenter 사용자 인증 정보를 업데이트하려면 다음 단계를 따르세요.

  1. 관리자 또는 사용자 클러스터를 구성할 기존 vCenter 사용자 인증 정보의 사용자 이름과 비밀번호를 가져옵니다.

  2. 다음 명령어를 실행하여 SSH를 통해 관리자 워크스테이션에 연결합니다.

    ssh -i ~/.ssh/vsphere_workstation ubuntu@[IP_ADDRESS]
    

    여기서 [IP_ADDRESS]는 관리자 워크스테이션의 IP 주소입니다.

  3. 편집기에서 구성 파일을 엽니다.

    이 용도로만 수정하고 사용할 수 있는 사본을 만들어 보세요. 예를 들면 vcenter-creds-config.yaml입니다.

  4. 구성 파일을 수정합니다.

    1. 관리자 클러스터를 업데이트할지 아니면 사용자 클러스터를 업데이트할지에 따라 다음 섹션 중 하나를 삭제하여 구성 파일을 수정해야 합니다.

      • 사용자 클러스터를 업데이트하려면 admincluster 섹션을 삭제합니다.

        구성에서 usercluster 섹션을 그대로 두고 admincluster 섹션의 모든 콘텐츠를 삭제합니다. 예를 들면 다음과 같습니다.

        admincluster:
          vcenter:
            network: ""
          bigip:
            ...
          podiprange: ""

      • 관리자 클러스터를 업데이트하려면 usercluster 섹션을 삭제합니다.

        구성에서 admincluster 섹션을 그대로 두고 usercluster 섹션의 모든 콘텐츠를 삭제합니다. 예를 들면 다음과 같습니다.

        usercluster:
          vcenter:
            network: ""
          bigip:
            ...
          clustername: ""
          masternode:
            ...
          podiprange: ""

    2. vCenter.credentials 아래의 usernamepassword 속성을 업데이트하여 클러스터에 설정할 vCenter 사용자 인증 정보를 포함합니다. 예를 들면 다음과 같습니다.

      gcp:
        whitelistedServiceAccountKeyPath: "my-key-folder/whitelisted-key.json"
      vCenter:
        credentials:
          address: "203.0.113.1"
          username: "vCenter-user-account@vsphere.local"
          password: "user-account-password"
        datacenter: "MY-DATACENTER"
        datastore: "MY-DATASTORE"
        cluster: "MY-CLUSTER"
        ...
  5. gkectl update credentials vsphere 명령어를 실행하여 클러스터에 변경사항을 배포합니다.

    gkectl update credentials vsphere \
    --config [VCENTER_CREDS_CONFIG.YAML] \
    --kubeconfig [CLUSTER_KUBECONFIG] \
    --update-admin-cluster

    각 항목의 의미는 다음과 같습니다.

    • [VCENTER_CREDS_CONFIG.YAML]: 클러스터에 배포할 vCenter 사용자 인증 정보가 포함된 구성 파일을 지정합니다. 예를 들면 vcenter-creds-config.yaml입니다.
    • [CLUSTER_KUBECONFIG]: 업데이트할 관리자 클러스터의 kubeconfig 파일을 지정합니다. 예를 들면 kubeconfig입니다.

      관리자 클러스터의 경우 --update-admin-cluster 플래그도 포함해야 합니다.

    • --update-admin-cluster: 관리자 클러스터에 변경사항을 배포하는 경우 필요한 플래그입니다. 사용자 클러스터에 변경사항을 배포할 때는 이 플래그를 제외합니다.

    결과: 변경된 vCenter 사용자 인증 정보가 서버에 맞게 즉시 검사되고 'vsphere credentials updated successfully'라는 확인 메시지가 터미널에 출력됩니다. 새 사용자 인증 정보로 vCenter Server에 로그인하지 못하면 구성 파일에서 usernamepassword를 수정하고 변경사항을 재배포하면 됩니다.

    예시:

    • 사용자 클러스터 예시: 사용자 클러스터의 vCenter 사용자 인증 정보에 변경사항을 배포하려면 다음을 실행합니다.

      gkectl update credentials vsphere \
      --config vcenter-creds-user-config.yaml --kubeconfig admin-cluster-kubeconfig

      결과:

      validating new credentials against vcenter
      restarted "deployment/clusterapi-controllers" in namespace "testcluster"
      restarted "deployment/kube-controller-manager" in namespace "testcluster"
      restarted "statefulsets/kube-apiserver" in namespace "testcluster"
      vsphere credentials updated successfully.
    • 관리자 클러스터 예시: 관리자 클러스터의 vCenter 사용자 인증 정보에 변경사항을 배포하려면 다음을 실행합니다.

      gkectl update credentials vsphere \
      --config vcenter-creds-admin-config.yaml --kubeconfig admin-cluster-kubeconfig \
      --update-admin-cluster

      결과:

      validating new credentials against vcenter
      restarted "deployment/clusterapi-controllers" in namespace "kube-system"
      vsphere credentials updated successfully.

사용자 클러스터의 F5 BIG-IP 사용자 인증 정보 업데이트

F5 웹 인터페이스에서 F5 BIG-IP 사용자 인증 정보를 업데이트합니다.

관리자 워크스테이션 1.4.1 이상에 SSH를 통해 연결합니다.

관리자 워크스테이션에서 다음 단계를 따라 사용자 클러스터의 F5 BIG-IP 사용자 인증 정보를 업데이트합니다.

  1. 사용자 클러스터 구성 파일의 사본을 만듭니다. 사본의 이름을 user-f5-creds.yaml로 지정합니다. 예를 들면 다음과 같습니다.

    cp user-cluster.yaml user-f5-creds.yaml
    
  2. user-f5-creds.yaml에서 F5 사용자 인증 정보를 업데이트합니다. 예를 들면 다음과 같습니다.

    apiVersion: v1
    kind: UserCluster
    ...
     f5BigIP:
       ...
       credentials:
         username: "new-user"
         password: "new-password"
    
  3. 사용자 클러스터의 F5 BIG-IP 사용자 인증 정보를 업데이트합니다.

    gkectl update credentials f5bigip --config user-f5-config.yaml \
       --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

관리자 클러스터의 F5 BIG-IP 사용자 인증 정보 업데이트

F5 웹 인터페이스에서 F5 BIG-IP 사용자 인증 정보를 업데이트합니다.

관리자 워크스테이션 1.4.1 이상에 SSH를 통해 연결합니다.

관리자 워크스테이션에서 다음 단계를 따라 관리자 클러스터의 F5 BIG-IP 사용자 인증 정보를 업데이트합니다.

  1. 관리자 클러스터 구성 파일의 사본을 만듭니다. 사본의 이름을 admin-f5-creds.yaml로 지정합니다. 예를 들면 다음과 같습니다.

    cp admin-cluster.yaml admin-f5-creds.yaml
    
  2. admin-f5-creds.yaml에서 F5 사용자 인증 정보를 업데이트합니다. 예를 들면 다음과 같습니다.

    apiVersion: v1
    kind: AdminCluster
    ...
     f5BigIP:
       ...
       credentials:
         username: "new-user"
         password: "new-password"
    
  3. 관리자 클러스터의 F5 BIG-IP 사용자 인증 정보를 업데이트합니다.

    gkectl update credentials f5bigip --config admin-f5-config.yaml \
       --kubeconfig ADMIN_CLUSTER_KUBECONFIG --admin-cluster