View a markdown version of this page

Ambiente computacional INVÁLIDO - AWS Batch

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á.

Ambiente computacional INVÁLIDO

É possível que você tenha configurado incorretamente um ambiente de computação gerenciado. Se você fez isso, o ambiente de computação entrará em um estado INVALID e não poderá aceitar trabalhos para colocação. As seções a seguir descrevem as possíveis causas e como solucionar problemas com base na causa.

Sem suporte Kubernetes version

Talvez você veja uma mensagem de erro semelhante à seguinte ao usar a operação de CreateComputeEnvironment API ou a operação de UpdateComputeEnvironment API para criar ou atualizar um ambiente de computação. Esse problema ocorre se você especificar uma versão Kubernetes não suportada em EC2Configuration.

At least one imageKubernetesVersion in EC2Configuration is not supported.

Para resolver esse problema, exclua o ambiente de computação e recrie-o com uma versão Kubernetes compatível.

Você pode realizar uma pequena atualização de versão no seu cluster Amazon EKS. Por exemplo, você pode atualizar o cluster de 1.xx para, 1.yy mesmo que a versão secundária não seja compatível.

No entanto, o status do ambiente de computação pode mudar para INVALID depois de uma atualização de versão principal. Por exemplo, se você realizar uma atualização de versão principal de 1.xx para 2.yy. Se a versão principal não for suportada pelo AWS Batch, você verá uma mensagem de erro semelhante à seguinte.

reason=CLIENT_ERROR - ... EKS Cluster version [2.yy] is unsupported

Para resolver esse problema, especifique uma versão Kubernetes compatível ao usar uma operação de API para criar ou atualizar um ambiente computacional.

AWS Batch no Amazon EKS atualmente oferece suporte às seguintes Kubernetes versões:

  • 1.36

  • 1.35

  • 1.34

  • 1.33

  • 1.32

  • 1.31

  • 1.30

O perfil da instância não existe

Se o perfil de instância especificado não existir, o status do AWS Batch ambiente computacional do Amazon EKS será alterado paraINVALID. Você vê um erro definido no parâmetro statusReason semelhante ao seguinte.

CLIENT_ERROR - Instance profile arn:aws:iam::...:instance-profile/<name> does not exist

Para resolver esse problema, especifique ou crie um perfil de instância em funcionamento. Para obter mais informações, consulte função do IAM do nó do Amazon EKS no Guia do usuário do Amazon EKS.

Inválido Kubernetes namespace

Se AWS Batch no Amazon EKS não for possível validar o namespace para o ambiente de computação, o status do ambiente de computação será alterado para. INVALID Por exemplo, esse problema pode ocorrer se o namespace não existir.

Você vê uma mensagem de erro definida no parâmetro statusReason semelhante à seguinte.

CLIENT_ERROR - Unable to validate Kubernetes Namespace

Esse problema pode ocorrer se qualquer uma das seguintes situações for verdadeira:

  • A string do namespace Kubernetes na chamada CreateComputeEnvironment não existe. Para obter mais informações, consulte CreateComputeEnvironment.

  • As permissões de controle de Role-Based acesso (RBAC) necessárias para gerenciar o namespace não estão configuradas corretamente.

  • AWS Batch não tem acesso ao endpoint do servidor da Kubernetes API Amazon EKS.

Para resolver esse problema, consulte Verifique se o aws-auth ConfigMap está configurado corretamente. Para obter mais informações, consulte Conceitos básicos de AWS Batch no Amazon EKS.

A configuração da entrada de acesso do Amazon EKS está incompleta

Se você AWS Batch criou uma entrada de acesso do Amazon EKS no cluster, mas não conseguiu concluir a associação da política de acesso que a torna utilizável, o status do ambiente computacional muda para. INVALID Para resolver esse problema, conceda as permissões ausentes do Amazon EKS e repita a operação.

O statusReason parâmetro contém uma mensagem de erro semelhante à seguinte.

CLIENT_ERROR - Access Entry setup incomplete on cluster [my-cluster]. Retry by calling UpdateComputeEnvironment.

Esse estado pode ocorrer se AWS Batch não for possível associar a política de acesso à nova entrada de acesso. AWS Batch em seguida, não foi possível excluir a entrada de acesso para reverter. A causa comum é a identidade do IAM que CreateComputeEnvironment ligou ou UpdateComputeEnvironment não tem permissão para ligar eks:AssociateAccessPolicyeks:DeleteAccessEntry, ou ambas. Se somente a associação de políticas falhar, AWS Batch remova a entrada de acesso e a solicitação falhará com um erro em vez de sair do ambiente INVALID computacional.

Verifique se sua identidade do IAM chama CreateComputeEnvironment e UpdateComputeEnvironment tem permissão para chamar todas as ações do Amazon EKS AWS Batch usadas para gerenciar uma entrada de acesso. As duas primeiras ações leem o estado do cluster e as ações restantes gerenciam a própria entrada de acesso.

  • eks:DescribeCluster

  • eks:DescribeAccessEntry

  • eks:CreateAccessEntry

  • eks:AssociateAccessPolicy

  • eks:DeleteAccessEntry

Depois de atualizar as permissões da identidade, chame UpdateComputeEnvironment o ambiente computacional para repetir a operação. Para obter mais informações sobre as permissões AWS Batch necessárias, consultePermissões obrigatórias.

Ambiente de computação gerenciado

Suponha que você exclua um cluster do Amazon EKS antes de excluir o anexo AWS Batch no ambiente computacional do Amazon EKS. Em seguida, o status do ambiente computacional é alterado para INVALID. Nesse cenário, o ambiente computacional não funcionará adequadamente se você recriar o cluster Amazon EKS com o mesmo nome.

Para resolver esse problema, exclua e recrie o ambiente computacional AWS Batch no Amazon EKS.

Os nós não se juntam ao cluster Amazon EKS

AWS Batch no Amazon EKS reduz a escala de um ambiente computacional se ele determinar que nem todos os nós se juntaram ao cluster do Amazon EKS. Quando o AWS Batch Amazon EKS reduz a escala do ambiente de computação, o status do ambiente de computação é alterado para. INVALID

nota

AWS Batch não altera o status do ambiente de computação imediatamente para que você possa depurar o problema.

Você vê uma mensagem de erro definida no parâmetro statusReason semelhante às seguintes:

Your compute environment has been INVALIDATED and scaled down because none of the instances joined the underlying ECS Cluster. Common issues preventing instances joining are the following: VPC/Subnet configuration preventing communication to ECS, incorrect Instance Profile policy preventing authorization to ECS, or customized AMI or LaunchTemplate configurations affecting ECS agent.

Your compute environment has been INVALIDATED and scaled down because none of the nodes joined the underlying Amazon EKS Cluster. Common issues preventing nodes joining are the following: networking configuration preventing communication to Amazon EKS Cluster, incorrect Amazon EKS Instance Profile or Kubernetes RBAC policy preventing authorization to Amazon EKS Cluster, customized AMI or LaunchTemplate configurations affecting Amazon EKS/Kubernetes node bootstrap.

Ao usar uma AMI padrão do Amazon EKS, as causas mais comuns desse problema são as seguintes: