클러스터에서 Connect Agent 업데이트

이 페이지에서는 Connect Agent 버전을 업데이트하거나 Connect Agent Service 계정 키를 순환하는 방법을 설명합니다.

Connect Agent 업데이트

주기적으로 Connect Agent는 중단 없는 방식으로 자동 업데이트됩니다.

하지만 클러스터를 등록하여 Connect Agent를 최신 버전으로 수동으로 업데이트할 수도 있습니다. gcloud는 사용 가능한 최신 Connect Agent를 가져와서 클러스터에 다시 설치합니다.

Connect Agent 서비스 계정 키 순환

서비스 계정 키와 같은 장기 사용자 인증 정보를 정기적으로 순환하는 것이 좋습니다. Connect Agent에서 사용하는 서비스 계정 키를 순환하려면 다음 단계를 수행합니다.

  1. 준비하기:

    PROJECT=[PROJECT_ID]
    NAMESPACE=$(kubectl get ns -o jsonpath={.items..metadata.name} -l hub.gke.io/project)
    SERVICE_ACCOUNT=$(kubectl get secrets -n $NAMESPACE creds-gcp \
    -o jsonpath='{.data.creds-gcp\.json}' |  base64 -d | grep client_email \
    | awk '{print $2}' | tr -d '",')
    OLD_KEY_ID=$(kubectl get secrets -n $NAMESPACE creds-gcp \
    -o jsonpath='{.data.creds-gcp\.json}' |  base64 -d | grep private_key_id \
    | awk '{print $2}' | tr -d '",')
    

    여기서 [PROJECT_ID]는 프로젝트의 고유 프로젝트 ID입니다. Cloud Console에서 또는 gcloud config get-value project를 실행하여 확인할 수 있습니다.

  2. 새 키 만들기

    gcloud iam service-accounts keys create --iam-account=$SERVICE_ACCOUNT creds-gcp.json
    

  3. 에이전트의 기존 키를 덮어씁니다.

    그러면 에이전트가 새 보안 비밀로 다시 시작되고 새 사용자 인증 정보로 터널을 다시 설정합니다.

    kubectl create secret -n $NAMESPACE generic creds-gcp \
    --from-file=./creds-gcp.json --dry-run -o yaml  | kubectl replace -f  -
    
  4. 에이전트의 pod에서 로그를 확인하여 다시 연결되었는지 확인합니다.

    kubectl logs -n $NAMESPACE -l app=gke-connect-agent
    

  5. 이전 키를 삭제합니다.

    gcloud iam service-accounts keys delete --iam-account=$SERVICE_ACCOUNT $OLD_KEY_ID
    

  6. 새 키의 로컬 복사본을 삭제합니다.

    키를 보관하지 않는 것이 좋습니다. 키를 분실하여 에이전트를 다시 설치해야 하는 경우 대신 키를 순환하는 것이 좋습니다.

    shred creds-gcp.json