Alternar chaves da conta de serviço

Para alternar as chaves da conta de serviço no GKE em Bare Metal, atualize as credenciais do cluster atuais com o comando bmctl. Essa rotação de chave de conta de serviço pode fazer parte dos processos regulares para atualizar credenciais ou em resposta a uma possível exposição das chaves. Quando você atualiza as credenciais do cluster, as novas informações são transmitidas para clusters administrativos ou clusters híbridos ou roteadas automaticamente para os clusters de usuário afetados gerenciados por um cluster de administração.

Credenciais de cluster que podem ser atualizadas

Os clusters do GKE em bare metal requerem várias credenciais quando eles são criados. Você define as credenciais na configuração do cluster ao criar um cluster de administrador, independente ou híbrido. Os clusters de usuário, conforme observado anteriormente, são gerenciados por um cluster de administrador (ou um cluster híbrido atuando como administrador) e reutilizarão as mesmas credenciais do cluster de administrador.

Para mais informações sobre como criar clusters e diferentes tipos de cluster, consulte Visão geral da instalação: como escolher um modelo de implantação.

É possível atualizar as seguintes credenciais e os respectivos secrets nos clusters do GKR em bare metal com o comando bmctl:

  • Chave privada SSH: usada para acesso ao nó.
  • Chave do Container Registry (anthos-baremetal-gcr): chave da conta de serviço usada para autenticação com o Container Registry para extração de imagens.
  • Chave da conta de serviço do agente do Connect (anthos-baremetal-connect): chave da conta de serviço usada pelos pods do agente do Connect.
  • Chave da conta de serviço de registro do Connect (anthos-baremetal-register): chave da conta de serviço usada para autenticação com o Hub ao registrar ou cancelar o registro de um cluster.
  • Chave da conta de serviço de operações do Cloud (anthos-baremetal-cloud-ops): chave da conta de serviço para autenticação com as APIs de observabilidade (geração de registros e monitoramento) do Google Cloud.

Atualizar credenciais com bmctl

Quando você cria clusters, o GKE em Bare Metal cria secrets do Kubernetes com base nas suas chaves de credenciais. Se você gerar novas chaves, será necessário atualizar as chaves secretas correspondentes, conforme descrito nas etapas a seguir. Se o nome ou o caminho para suas chaves mudarem, também será necessário atualizar o arquivo de configuração do cluster correspondente.

  1. Prepare os novos valores das credenciais que você quer atualizar:

    • É possível gerar novas chaves de conta de serviço do Google usando a Google Cloud CLI ou o console do Google Cloud.

    • Gere uma nova chave privada SSH na estação de trabalho de administrador e verifique se as máquinas do nó do cluster têm a chave pública correspondente.

  2. Atualize a seção de credenciais do arquivo de configuração do cluster com os caminhos para as novas chaves.

  3. Atualize os secrets correspondentes do cluster com o comando bmctl update credentials, adicionando as sinalizações adequadas.

    O exemplo a seguir atualiza as credenciais de uma nova chave privada SSH:

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

    Substitua:

    • ADMIN_KUBECONFIG: o caminho do arquivo kubeconfig do cluster de administrador ou autogerenciado.

    • CLUSTER_NAME: o nome do cluster para o qual você está atualizando a chave SSH;

    • SSH_KEY_PATH: o caminho do arquivo de chave SSH. Por padrão, bmctl verifica o SSH e os arquivos de chave da conta de serviço especificados no arquivo de configuração do cluster. Se bmctl encontrar um arquivo de chave expirado, o comando falhará. Se o novo arquivo de chave válido estiver em um local diferente do especificado no arquivo de configuração, inclua a sinalização --ignore-validation-errors para evitar essa falha.

    Para ver uma lista completa das sinalizações que podem ser usadas com o comando bmctl update credentials, consulte update credentials na referência do comando bmctl.