Ao usar o AWS re:Post, você concorda com os AWS re:Post Termos de uso

Como resolvo erros de grupos de nós gerenciados em um cluster do Amazon EKS?

5 minuto de leitura
0

Tenho problemas com meu grupo de nós gerenciados em meu cluster Amazon Elastic Kubernetes Service (Amazon EKS).

Breve descrição

A seguir estão as causas comuns de erros de grupos de nós gerenciados em um cluster do Amazon EKS:

  • Opções de DHCP incorretas: Você recebe um erro ao registrar um nó no servidor da API
  • Permissões de chave ausentes do AWS Key Management Service (AWS KMS): Você recebe um erro ao iniciar uma instância do Amazon Elastic Compute Cloud (Amazon EC2) em um grupo de Auto Scaling com um volume do Amazon Elastic Block Store (Amazon EBS) criptografado com uma chave do AWS KMS
  • Modelo de inicialização incorreto: Como o modelo de inicialização do EC2 não corresponde à versão que o Amazon EKS criou, seu grupo de nós gerenciados está em status Degradado

Resolução

Verifique suas opções de DHCP

Se você usar uma opção de DHCP incorreta em seu DNS personalizado, poderá receber o seguinte erro:

“Node “ip-x-x-x-x.eu-region.compute.internal” é inválido: metadata.labels: Valor inválido”

Verifique se o nome do host não contém mais de 63 caracteres. Para revisar suas opções de DHCP, consulte Conjuntos de opções de DHCP no Amazon VPC. Especifique seu nome de host para corresponder à região da AWS. Para um servidor AmazonProvidedDNS em us-east-1, especifique ec2.internal. Para um servidor AmazonProvidedDNS em outras regiões, especifique region.compute.internal.

Exemplo de uma opção DHCP definida em us-east-1:

nome de domínio: ec2.internal
domain-name-servers: AmazonProvidedDNS

Exemplo de uma opção DHCP definida em outras regiões:

domain-name: region.compute.internal
domain-name-servers: AmazonProvidedDNS

Exemplo de uma opção DHCP definida a partir de um DNS personalizado:

**domain-name: ** nome DNS personalizado
domain-name-servers: servidor de nomes de domínio

**Observação:**Substitua a região pela sua região, o nome DNS personalizado pelo seu nome DNS e o servidor de nomes de domínio pelo seu servidor de nomes de domínio.

Para obter mais informações, consulte Conceitos do conjunto de opções DHCP. Se seu conjunto de opções de DHCP estiver associado a uma VPC que tenha instâncias com vários sistemas operacionais, é recomendável especificar apenas um nome de domínio.

Configure uma política de chave para sua criptografia de volume do EBS

Se o perfil de serviço do grupo Auto Scaling não tiver permissões, você poderá ver o seguinte erro:

"AccessDeniedException: User: arn:aws:sts::xxxxxxxxxxxx:assumed-role/AWSServiceRoleForAutoScaling/AutoScaling is not authorized to perform: kms:GenerateDataKeyWithoutPlaintext on resource: ARN of KMS key"

Se um nó gerenciado usa um volume do Amazon EBS criptografado por chave do AWS KMS, o perfil de serviço do grupo Auto Scaling não tem acesso a ele.

O perfil de serviço de grupo Auto Scaling deve ter as seguintes permissões para trabalhar com volumes criptografados do EBS:

  • kms:Encrypt
  • kms:Decrypt
  • kms:ReEncrypt*
  • kms:GenerateDataKey*
  • kms:DescribeKey
  • kms:CreateGrant

Para configurar a política de chave KMS correta, consulte Política de chave do AWS KMS necessária para uso com volumes criptografados. Para permitir que mais perfis do IAM funcionem com volumes criptografados do Amazon EBS, modifique as políticas de chave. Para obter mais informações, consulte Permitir que usuários de chaves usem a chave KMS. Para obter mais informações sobre o gerenciamento de acesso a chaves KMS, consulte o AWS Key Management Service.

Atualize a versão do modelo de inicialização

**Observação:**Antes de atualizar seu modelo de inicialização do EC2 a partir do grupo de nós gerenciados, crie uma nova versão. Para obter mais informações, consulte Criar um novo modelo de inicialização usando parâmetros definidos por você.

Se você atualizar manualmente o modelo de execução diretamente do grupo do Auto Scaling, poderá receber o seguinte erro:

"Ec2LaunchTemplateVersionMismatch"

Para atualizar seu modelo de inicialização do EC2 a partir do grupo de nós gerenciados, conclua as etapas a seguir:

  1. Abra o console do EKS.
  2. Selecione o cluster que contém o grupo de nós a ser atualizado.
  3. Selecione a guia Configuração e, em seguida, escolha Compute.
  4. Na página de grupos de nós, em modelos de inicialização, escolha Alterar versão.
  5. Selecione a versão a ser aplicada ao seu grupo de nós. Certifique-se de que a estratégia de atualização esteja definida como Atualização contínua.
  6. Selecione Atualizar.

**Observação:**É uma prática recomendada atualizar o grupo de nós com a nova versão do modelo de inicialização do EC2.

Se você não usou um modelo de inicialização personalizado e recebeu o erro EC2LaunchTemplateVersionMismatch, verifique a versão do seu modelo de inicialização. Seus nós de processamento e o grupo de nós do EKS podem não usar a mesma versão do modelo de inicialização. Para resolver esse problema, acesse o console do Auto Scaling para reverter para a versão que o EKS criou. Para obter mais informações, consulte Erros de grupos de nós gerenciados. Para outras soluções de nós com falha em grupos de nós gerenciados, consulte Como posso fazer com que meus nós de processamento se juntem ao meu cluster Amazon EKS?

AWS OFICIAL
AWS OFICIALAtualizada há 10 meses