Actualiza el agente de Connect mediante un registro privado

En este tema, se explica cómo actualizar el agente de Connect si usas un registro privado de Docker. Para obtener información sobre Connect, consulta la documentación del producto.

Resumen

Si eliges registrar un clúster de usuario con Google Cloud Console, se crea una implementación de Kubernetes llamada agente de Connect. El agente de Connect establece una conexión encriptada de larga duración entre el clúster y Cloud Console.

A veces, Google actualiza el agente de Connect. Si usas un registro privado con tu clúster, sigue estas instrucciones para actualizar el agente de Connect.

Imagen actualizada del agente de Connect

Extrae la imagen del agente de Connect de gcr.io y envíala a tu registro:

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

En el ejemplo anterior, [PRIVATE_REGISTRY_HOST] es el nombre de host o la dirección IP de tu registro privado de Docker.

Actualiza el registro de clústeres del usuario

Actualiza el registro de tu clúster de usuario a Cloud Console:

gcloud container hub memberships register[USER_CLUSTER_NAME] \
  --context=[CLUSTER_CONTEXT] \
  --service-account-key-file=[CONNECT_SA_KEY_FILE] \
  --kubeconfig=[KUBECONFIG_PATH] \
  --docker-registry=[PRIVATE_REGISTRY_HOST] \
  --docker-credential-file=[DOCKER_CONFIG_PATH] \
  --project=[PROJECT_ID]

Donde:

  • [USER_CLUSTER_NAME] es el nombre de un clúster de usuarios registrado, como aparece en Cloud Console.
  • [CLUSTER_CONTEXT] es el contexto del clúster tal como aparece en el archivo kubeconfig. Para obtener este valor, ejecuta kubectl config current-context.
  • [CONNECT_SA_KEY_FILE] es la ruta al archivo de claves JSON de la cuenta de servicio de conexión.
  • [KUBECONFIG_PATH] es la ruta al kubeconfig del clúster de usuarios.
  • [DOCKER_CONFIG_PATH] es la ruta de acceso a un archivo configuración de Docker de JSON.

    El archivo config.json que usaste en los comandos docker de la sección anterior docker podría tener credenciales innecesarias adicionales. Es posible que prefieras recuperar credenciales de tu clúster, lo que garantiza que no coloques credenciales adicionales a tu clúster de forma involuntaria:

    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
    

    Pasa la ruta del archivo creado como el valor de la marca --docker-credential-file, en lugar de [DOCKER_CONFIG_PATH] anterior.

  • [PROJECT_ID] es el ID del proyecto del proyecto en el que está registrado el clúster de usuario. Para obtener más información sobre cómo enumerar todos los proyectos de tu organización, consulta Crea una lista de proyectos.