Rota las claves de la cuenta de servicio

Para rotar las claves de la cuenta de servicio en Google Distributed Cloud, actualiza las credenciales de clúster existentes con el comando bmctl. Esta rotación de claves de cuentas de servicio puede ser parte de tus procesos habituales para actualizar credenciales o en respuesta a una posible exposición de las claves. Cuando actualizas las credenciales del clúster, la información nueva se pasa a los clústeres híbridos o de administrador, o se enruta de forma automática a los clústeres de usuario afectados que administra un clúster de administrador.

Credenciales de clúster que se pueden actualizar

Los clústeres de Google Distributed Cloud requieren varias credenciales cuando se crean. Debes establecer las credenciales en la configuración del clúster cuando creas un clúster de administrador, independiente o híbrido. Los clústeres de usuario, como se mencionó antes, son administrados por un clúster de administrador (o un clúster híbrido que actúe como administrador) y reutilizarán las mismas credenciales del clúster de administrador.

Si deseas obtener más información para crear clústeres y diferentes tipos de clústeres, consulta Descripción general de la instalación: elige un modelo de implementación.

Puedes actualizar las siguientes credenciales y sus secretos correspondientes en los clústeres de Google Distributed Cloud con el comando bmctl:

  • Clave privada SSH: Se usa para acceder a los nodos.
  • Clave de Container Registry (anthos-baremetal-gcr): Es la clave de cuenta de servicio que se usa para autenticarse con Container Registry para la extracción de imágenes.
  • Clave de cuenta de servicio del agente de Connect (anthos-baremetal-connect): Es la clave de la cuenta de servicio que usan los Pods del agente de Connect.
  • Conecta la clave de la cuenta de servicio del registro (anthos-baremetal-register): Es la clave de la cuenta de servicio que se usa para autenticarse con el Hub cuando se registra o se cancela el registro de un clúster.
  • Clave de cuenta de servicio de operaciones en la nube (anthos-baremetal-cloud-ops): Es la clave de cuenta de servicio para autenticar con las APIs de observabilidad (registro y supervisión) de Google Cloud.

Actualiza las credenciales con bmctl

Cuando creas clústeres, Google Distributed Cloud crea Secrets de Kubernetes basados en tus claves de credenciales. Si generas claves nuevas, debes actualizar los Secrets correspondientes como se describe en los siguientes pasos. Si el nombre o la ruta de acceso de tus claves cambian, también debes actualizar el archivo de configuración del clúster correspondiente.

  1. Prepara los valores nuevos de las credenciales que deseas actualizar:

    • Puedes generar nuevas claves de cuenta de servicio de Google a través de Google Cloud CLI o la consola de Google Cloud.

    • Genera una clave privada SSH nueva en la estación de trabajo de administrador y asegúrate de que las máquinas del nodo del clúster tengan la clave pública correspondiente.

  2. Actualiza la sección de credenciales del archivo de configuración del clúster con rutas de acceso a las claves nuevas.

  3. Actualiza los Secrets del clúster correspondientes con el comando bmctl update credentials y agrega las marcas adecuadas.

    En el siguiente ejemplo, se actualizan las credenciales para una clave privada SSH nueva:

    bmctl update credentials --kubeconfig ADMIN_KUBECONFIG \
        --cluster CLUSTER_NAME \
        --ssh-private-key-path SSH_KEY_PATH
    

    Reemplaza lo siguiente:

    • ADMIN_KUBECONFIG: Es la ruta de acceso del archivo kubeconfig del clúster de administrador o autoadministrado.

    • CLUSTER_NAME: Es el nombre del clúster para el que deseas actualizar la clave SSH.

    • SSH_KEY_PATH: Es la ruta de acceso del archivo de claves SSH. De forma predeterminada, bmctl verifica los archivos de claves SSH y de claves de la cuenta de servicio especificados en el archivo de configuración del clúster. Si bmctl encuentra un archivo de claves vencido, el comando fallará. Si tienes el archivo de claves válido nuevo en una ubicación diferente a la que se especifica en el archivo de configuración, incluye la marca --ignore-validation-errors para evitar este error.

    Para obtener una lista completa de las marcas que puedes usar con el comando bmctl update credentials, consulta cómo actualizar las credenciales en la referencia del comando bmctl.