As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Gire um segredo de cluster em AWS PEÇAS
Alterne o segredo do seu cluster para cumprir os requisitos de segurança e resolver possíveis comprometimentos. Esse processo exige colocar seu cluster em modo de manutenção.
nota
Por padrão, o AWS PCS criptografa o segredo do cluster com um Chave gerenciada pela AWS. Se, em vez disso, você a criptografar com uma chave gerenciada pelo cliente, certifique-se de que a política de chaves conceda à função vinculada ao serviço do AWS PCS acesso à chave. Caso contrário, o AWS PCS não poderá alternar o segredo. Para obter mais informações, consulte Use uma chave gerenciada pelo cliente para criptografar o segredo do cluster.
Pré-requisitos
-
Função do IAM com
secretsmanager:RotateSecretpermissão -
Cluster em
ACTIVEnossoUPDATE_FAILEDestado
Procedimento
-
Notifique os usuários do cluster sobre a próxima janela de manutenção.
-
Coloque o cluster em modo de manutenção escalando todos os grupos de nós de computação para 0 de capacidade.
-
Use a UpdateComputeNodeGroup API para definir o mínimo InstanceCount e o máximo como 0 InstanceCount para todos os grupos de nós de computação.
-
Espere até que todos os nós parem.
-
(Opcional) Elimine as filas do agendador com comandos Slurm antes de encerrar a capacidade de lidar com tarefas sem problemas.
nota
A rotação não exige nenhuma instância em execução. Se as instâncias ainda estiverem em execução quando você iniciar a rotação, a rotação falhará com o seguinte erro:
All instances must be terminated before you rotate a secret. Set the minimum instance count to 0 to terminate active instances.
nota
Um grupo de nós de computação pode reportar
ACTIVEenquanto as instâncias ainda estão sendo encerradas durante a redução de escala. Ele também pode relatarACTIVEantes que qualquer instância exista durante o aumento de escala. O dimensionamento pode levar vários minutos, até cerca de 30 minutos. Enquanto um grupo de nós de computação estiverUPDATING,get-compute-node-groupretorna os valores de escalabilidade de pré-atualização e o AWS PCS recusa novas solicitações de atualização até que a atualização seja concluída. Não trateACTIVEcomo confirmação de que existem instâncias. -
-
Inicie a rotação por meio do Secrets Manager.
-
Método de console:
-
Navegue até o Secrets Manager, selecione o segredo do cluster e escolha Rotate secret.
-
-
Método de API:
-
Use a
rotate-secretAPI Secrets Manager.
-
-
-
Confirme se a rotação foi bem-sucedida.
nota
A
rotate-secretchamada retorna HTTP 200 mesmo se a rotação falhar posteriormente. O resultado chega mais tarde, como umRotationSucceededeventoRotationFailedou evento separado. A resposta 200 confirma apenas que o AWS PCS aceitou a solicitação, não que a rotação foi bem-sucedida.-
Execute
describe-secrete confirme se o rótuloAWSCURRENTde teste foi movido para a nova versão e estalastRotatedDatefoi atualizada. -
Como alternativa, aguarde um
RotationSucceededevento na AWS CloudTrail.
nota
Use
describe-secretem vez delist-secret-version-idsinspecionar versões.list-secret-version-idspode omitir aAWSPENDINGversão mesmo quando você especifica--include-deprecated. -
-
Após a rotação bem-sucedida, restaure a capacidade do cluster.
-
Use a UpdateComputeNodeGroup API para redefinir os grupos de nós para a min/max capacidade desejada.
-
Para nós de AWS PCS-managed login: nenhuma ação adicional é necessária.
-
Para nós de login BYO:
-
Conecte-se aos nós de login.
-
Atualize
/etc/slurm/slurm.keycom o novo segredo do Secrets Manager. -
Reinicie o Slurm Auth e o Cred Kiosk Daemon (sackd).
-
-
Recupere de uma versão pendente perdida
Uma rotação com falha pode encalhar uma versão na etiqueta AWSPENDING de teste e bloquear rotações posteriores com o seguinte erro:
A previous rotation isn't complete. That rotation will be reattempted.
O cancel-rotate-secret comando sozinho não remove o rótulo AWSPENDING de teste e é definido RotationEnabled como. false Para limpar a versão bloqueada, remova o rótulo AWSPENDING de teste da versão pendente:
aws secretsmanager update-secret-version-stage \ --secret-idsecret-arn\ --version-stage AWSPENDING \ --remove-from-version-idpending-version-id
Verifique a rotação
Para confirmar se o controlador Slurm está acessível e se os nós estão íntegros, use e. scontrol ping scontrol show nodes Não use sinfo para verificar um cluster que não tem filas, porque não sinfo mostra nada nesse caso e não é uma verificação válida.
Para confirmar que os nós usam a chave atual, compare o SHA-256 hash do AWSCURRENT segredo decodificado em base64 com o hash dos nós: /etc/slurm/slurm.key
sha256sum /etc/slurm/slurm.key
Compare também o hash do nó com a AWSPREVIOUS versão para provar que os nós não estão em uma chave obsoleta. Recomendamos que você compare hashes em vez de imprimir material de chave.