Rota claves de cuenta de servicio

En esta página, se describe cómo rotar las claves de tu cuenta de servicio con gkectl para los registros de Cloud Audit Logging, la medición de uso y los componentes de Stackdriver en los clústeres de Anthos alojados en VMware (GKE On-Prem).

Para rotar las claves de tu cuenta de servicio, sigue estos pasos:

  1. Crea un directorio para almacenar una copia de seguridad de los secretos actuales:

    mkdir backup
  2. Ten en cuenta la siguiente información para el componente pertinente:

    Registros de auditoría de Cloud

    Clúster Secret Espacio de nombres
    Administrador admin-cluster-creds kube-system
    Administrador user-cluster-creds CLUSTER_NAME-gke-onprem-mgmt
    Admin kube-apiserver CLUSTER_NAME

    Medición de uso

    Clúster Secret Espacio de nombres
    Administrador user-cluster-creds CLUSTER_NAME-gke-onprem-mgmt
    Usuario usage-metering-bigquery-service-account-key kube-system

    Stackdriver

    Clúster Secret Espacio de nombres
    Administrador admin-cluster-creds kube-system
    Administrador user-cluster-creds CLUSTER_NAME-gke-onprem-mgmt
    Usuario google-cloud-credentials kube-system
    Usuario stackdriver-service-account-key knative-serving
  3. Crea una copia de seguridad de cada secreto con el siguiente comando:

    kubectl get secret SECRET --namespace NAMESPACE \
        --kubeconfig KUBECONFIG -o json > backup/SECRET-NAMESPACE.json

    Reemplaza lo siguiente:

    • NAMESPACE: es el espacio de nombres en el que se encuentra el secreto. Por ejemplo, kube-system
    • KUBECONFIG: es la ruta al archivo kubeconfig para el clúster de administrador o del usuario.
    • SECRET: nombre del Secret. Por ejemplo, admin-cluster-creds

    Por ejemplo, ejecuta los siguientes comandos para el componente de registros de auditoría de Cloud:

    kubectl get secret admin-cluster-creds --namespace kube-system \
            --kubeconfig KUBECONFIG -o json > backup/admin-cluster-creds-kube-system.json
    
    kubectl get secret user-cluster-creds --namespace NAMESPACE \
            --kubeconfig KUBECONFIG -o json > backup/user-cluster-creds-NAMESPACE.json
    
    kubectl get secret kube-apiserver --namespace NAMESPACE \
            --kubeconfig KUBECONFIG -o json > backup/kube-apiserver-NAMESPACE.json
  4. Para crear un nuevo archivo de claves de cuenta de servicio, ejecuta el siguiente comando:

    gcloud iam service-accounts keys create NEW_KEY_FILE --iam-account IAM_ACCOUNT

    Reemplaza lo siguiente:

  5. En los archivos de configuración correspondientes para el clúster de administrador y los clústeres de usuario, busca la sección cloudauditlogging, usagemetering o stackdriver.

  6. Reemplaza el campo serviceAccountKeyPath por el NEW_KEY_FILE que creaste antes.

  7. Guarda los cambios que hiciste con los siguientes comandos:

    gkectl update credentials COMPONENT --admin-cluster --kubeconfig
      ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG
    
    gkectl update credentials COMPONENT --kubeconfig
       KUBECONFIG --config USER_CLUSTER_CONFIG

    Reemplaza lo siguiente:

    • COMPONENT: uno de cloudauditlogging, usagemetering o stackdriver.
    • ADMIN_CLUSTER_KUBECONFIG: es la ruta al archivo kubeconfig para el clúster de administrador.
    • ADMIN_CLUSTER_CONFIG: es la ruta al archivo de configuración del clúster de administrador.
    • USER_CLUSTER_CONFIG: es la ruta de acceso al archivo de configuración del clúster de usuario.