Vous consultez la documentation d'une version précédente de GKE On-Prem. Consultez la documentation la plus récente.

Mettre à jour l'agent Connect à l'aide d'un registre privé

Cette rubrique explique comment mettre à jour l'agent Connect si vous utilisez un registre Docker privé. Pour plus d'informations sur Connect, consultez la documentation du produit.

Aperçu

Si vous choisissez d'enregistrer un cluster d'utilisateurs avec Google Cloud Console, un déploiement Kubernetes appelé agent Connect est créé dans le cluster. L'agent Connect établit une connexion chiffrée longue durée entre le cluster et Cloud Console.

Parfois, Google met à jour l'agent Connect. Si vous utilisez un registre privé avec votre cluster, suivez ces instructions pour mettre à jour l'agent Connect.

Extraire l'image Connect mise à jour

Extrayez l'image Connect Agent de gcr.io et transférez-la dans votre registre :

docker pull gcr.io/gkeconnect/gkeconnect-gce:release
docker tag gcr.io/gkeconnect/gkeconnect-gce:release \
    [PRIVATE_REGISTRY_HOST]/gkeconnect/gkeconnect-gce:release
docker push [PRIVATE_REGISTRY_HOST]/gkeconnect/gkeconnect-gce:release

[PRIVATE_REGISTRY_HOST] est le nom d'hôte ou l'adresse IP de votre registre Docker privé.

Mettre à jour l'enregistrement du cluster utilisateur

Mettez à jour l'enregistrement de votre cluster d'utilisateur vers Cloud Console :

gcloud alpha container hub register-cluster [USER_CLUSTER_NAME] \
  --context=[CLUSTER_CONTEXT] \
  --service-account-key-file=[CONNECT_SA_KEY_FILE] \
  --kubeconfig-file=[KUBECONFIG_PATH] \
  --docker-image=[DOCKER_IMAGE] \
  --docker-credential-file=[DOCKER_CONFIG_PATH] \
  --project=[PROJECT_ID]

où :

  • [USER_CLUSTER_NAME] est le nom d'un cluster d'utilisateur enregistré, tel qu'il apparaît dans Cloud Console.
  • [CLUSTER_CONTEXT] correspond au contexte du cluster tel qu'il apparaît dans le fichier "kubeconfig". Pour obtenir cette valeur, exécutez kubectl config current-context.
  • [CONNECT_SA_KEY_FILE] est le chemin d'accès au fichier de clé JSON du compte de service de connexion.
  • [KUBECONFIG_PATH] est le chemin d'accès au fichier kubeconfig du cluster d'utilisateur.
  • [DOCKER_IMAGE] est le chemin d'accès à l'image taguée dans le registre privé (par exemple, example.com/gkeconnect/gkeconnect-gce:release).
  • [DOCKER_CONFIG_PATH] est un chemin d'accès à un fichier de configuration Docker JSON.

    Le fichier config.json que vous avez utilisé dans les commandes docker de la section précédente docker ci-dessus peut comporter des identifiants inutiles supplémentaires. Vous préférez peut-être récupérer les identifiants de votre cluster, ce qui garantit de ne pas ajouter par inadvertance des identifiants supplémentaires à votre cluster :

    kubectl get secret regcred \
    -o jsonpath='{.data.\.dockerconfigjson}' -n gke-connect | \
    base64 -d \  # On BSD systems (like macOS), use base64 -D
    >private_registry_config.json
    

    Transmettez le chemin d'accès au fichier créé en tant que valeur de l'indicateur --docker-credential-file, à la place de [DOCKER_CONFIG_PATH] ci-dessus.

  • [PROJECT_ID] correspond à l'ID du projet dans lequel le cluster d'utilisateur est enregistré. Pour savoir comment répertorier tous les projets de votre organisation, reportez-vous à la page Répertorier des projets.