Mettre à jour l'agent Connect dans un cluster

Cette page explique comment mettre à jour la version de Connect Agent ou effectuer la rotation de la clé du compte de service de l'agent Connect.

Mises à jour de Connect Agent

Régulièrement, l'agent Connect est mis à jour sans interruption.

Toutefois, vous pouvez également mettre à jour manuellement l'agent Connect vers la dernière version en enregistrant un cluster. gcloud récupère le dernier agent Connect disponible et le réinstalle dans le cluster.

Alterner la clé de compte de service de l'agent Connect

Il est judicieux d'alterner régulièrement les identifiants de longue durée, tels que les clés de compte de service. Pour alterner la clé de compte de service utilisée par l'agent Connect, procédez comme suit :

  1. Préparation :

    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] est l'ID de projet unique de votre projet. Vous pouvez trouver cette information dans la console Google Cloud ou en exécutant gcloud config get-value project.

  2. Créez une clé :

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

  3. Remplacez la clé existante sur l'agent :

    Ainsi, l'agent redémarre avec le nouveau secret et rétablit le tunnel avec de nouveaux identifiants.

    kubectl create secret -n $NAMESPACE generic creds-gcp \
    --from-file=./creds-gcp.json --dry-run -o yaml  | kubectl replace -f  -
    
  4. Vérifiez vos journaux sur le pod de l'agent pour vous assurer qu'il est reconnecté :

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

  5. Supprimez l'ancienne clé :

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

  6. Supprimez la copie locale de la nouvelle clé :

    Nous vous conseillons de ne pas la conserver. Si vous perdez la clé et que vous devez réinstaller l'agent, nous vous recommandons plutôt d'alterner la clé.

    shred creds-gcp.json