Configurar credenciais preparadas para um cluster de administrador

Neste documento, mostramos como configurar credenciais preparadas para um cluster de administrador no Google Distributed Cloud.

Depois que as credenciais forem preparadas, é possível usar um Secret para armazenar as credenciais do seu cluster de administrador nele mesmo. Isso melhora a segurança, porque você não precisa manter senhas e chaves da conta de serviço na estação de trabalho do administrador.

Informações gerais do procedimento

  1. Preencha um arquivo de configuração de secrets.

  2. No arquivo de configuração do cluster de administrador, defina "Enabled" como "true".

  3. Execute gkectl prepare

  4. Crie o cluster de administrador.

Preencher o arquivo de configuração de secrets

Gerar um modelo para um arquivo de configuração de secrets:

gkectl create-config secrets

O comando anterior gera um arquivo chamado secrets.yaml. É possível mudar o nome e o local desse arquivo, se quiser.

Para se familiarizar com o arquivo de configuração, leia o documento Arquivo de configuração de secrets . Mantenha esse documento aberto em outra guia ou janela.

Confira um exemplo de arquivo de configuração de Secrets. Um único grupo de secrets tem valores para credenciais do vCenter e quatro chaves de conta de serviço:

apiVersion: v1
kind: ClusterSecrets
secretGroups:
- secrets
  vCenter:
    username: "my-vcenter-account"
      password: "U$icUKEW#INE"
    componentAccessServiceAccount:
      serviceAccountKeyPath: "my-key-folder/component-access-key.json"
    registerServiceAccount:
      serviceAccountKeyPath: "my-key-folder/connect-register-key.json"
    stackdriverServiceAccount:
      serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
    cloudAuditLoggingServiceAccount:
      serviceAccountKeyPath: "my-key-folder/audit-log-key.json"

Arquivo de configuração do cluster de administrador

Crie um arquivo de configuração do cluster de administrador conforme descrito em Criar um cluster de administrador.

No arquivo de configuração do cluster de administradorpreparedSecrets.enabled, defina como true:

preparedsecrets:
  enabled: true

No arquivo de configuração do cluster de usuário, não especifique valores para os campos a seguir. Esses campos não são necessários porque o Google Distributed Cloud vai receber credenciais e chaves dos secrets preparados.

  • vCenter.credentials.fileRef.path
  • componentAccessServiceAccountKeyPath
  • loadBalancer.f5BigIP.credentials.fileRef.path
  • gkeConnect.registerServiceAccountKeyPath
  • stackdriver.serviceAccountKeyPath
  • cloudAuditLogging.serviceAccountKeyPath
  • privateRegistry.credentials.fileRef.path

Inicializar o ambiente

Importe imagens do SO para o vSphere e envie as imagens de contêiner para um registro particular, caso tenha sido especificado:

gkectl prepare --config ADMIN_CLUSTER_CONFIG --secret-config SECRETS_CONFIG

Substitua:

  • ADMIN_CLUSTER_CONFIG: o caminho do arquivo de configuração do cluster de administrador

  • SECRETS_CONFIG: o caminho do arquivo de configuração do Secrets

Criar o cluster de administrador

Crie o cluster de administrador:

gkectl create admin --config ADMIN_CLUSTER_CONFIG --secret-config SECRETS_CONFIG

Substitua:

  • ADMIN_CLUSTER_CONFIG: o caminho do arquivo de configuração do cluster de administrador

  • SECRETS_CONFIG: o caminho do arquivo de configuração do Secrets

Alternar credenciais

Para alternar as credenciais, você precisa de um arquivo de configuração de secrets. Há duas abordagens possíveis:

  • Execute gkectl create-config secrets para gerar um novo arquivo de configuração de secrets. Preencha o arquivo com as novas chaves da conta de serviço.

  • Gere um arquivo de configuração de secrets do cluster de administrador. Em seguida, substitua as chaves da conta de serviço selecionadas por novas.

    Para gerar um arquivo de configuração de secrets a partir do cluster de administrador:

    gkectl get-config admin --export-secrets-config \
      --bundle-path BUNDLE \
      --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    Substitua:

    • BUNDLE: o caminho do arquivo de pacote do Google Distributed Cloud

    • ADMIN_CLUSTER_KUBECONFIG: o caminho do arquivo kubeconfig do cluster de administrador

Alterne as credenciais:

gkectl update credentials CREDENTIAL_TYPE \
    --config ADMIN_CLUSTER_CONFIG \
    --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
    --secret-config SECRETS_CONFIG \
    --admin-cluster

Substitua:

  • CREDENTIAL_TYPE: um dos seguintes: vsphere, f5bigip, privateregistry, componentaccess, register, stackdriver, cloudauditlogging.

  • ADMIN_CLUSTER_CONFIG: é o caminho do arquivo de configuração do cluster de administrador

  • ADMIN_CLUSTER_KUBECONFIG: o caminho do arquivo kubeconfig do cluster de administrador

  • SECRETS_CONFIG: o caminho do arquivo de configuração dos Secrets.

Atualizar

Para atualizar um cluster de administrador que usa credenciais preparadas, em muitos casos é possível seguir as instruções conforme escrito em Como atualizar um cluster.

No entanto, se você quiser ativar o Cloud Logging e o Cloud Monitoring ou os registros de auditoria do Cloud como parte da atualização, siga estas etapas:

  1. Gere um arquivo de configuração de Secrets.

  2. No arquivo de configuração de secrets, informe valores para stackdriverServiceAccount.serviceAccountKeyPath e cloudAuditLoggingServiceAccount.serviceAccountKeyPath ou ambos.

  3. Atualize o cluster:

    gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
      --config ADMIN_CLUSTER_CONFIG \
      --secret-config SECRETS_CONFIG