4
respostas

[Bug] Erro ao Subir CDK Service

Boa noite,

Estou com o mesmo problema do Matheus: Ao subir as Stacks via comando cdk deploy Service Vpc Cluster, a Vpc e a Cluster sobem normalmente. O problema é que a Service trava conforme a imagem a seguir.Erro Service .

Já tentei mudar as configurações de cpu e memória na classe AluraServiceStack mas o erro permanece. O ChatGPT me deu algumas sugestões, não consegui verificar todas ainda e caso alguma resolva eu aviso aqui.

Seguem as sugestões do ChatGPT:

Quando o deploy do CDK fica preso na etapa "CREATE_IN_PROGRESS" para o serviço ECS (AWS::ECS::Service), pode haver algumas razões para isso. Vou fornecer algumas sugestões de solução de problemas que podem ajudar a resolver esse problema:

  1. Verifique as permissões do IAM: Verifique se a função do IAM usada pelo CDK tem permissões adequadas para criar os recursos necessários para o serviço ECS. A função precisa ter permissões para criar recursos como clusters ECS, serviços ECS, tarefas, grupos de segurança, entre outros. Certifique-se de que a política da função IAM está configurada corretamente.

  2. Verifique as configurações da VPC (Virtual Private Cloud): O CDK precisa de uma VPC configurada para criar serviços do ECS. Verifique se você possui uma VPC configurada e se ela tem sub-redes públicas disponíveis nas zonas de disponibilidade especificadas.

  3. Verifique a imagem do contêiner: Certifique-se de que a imagem do contêiner especificada em ContainerImage.fromRegistry("jacquelineoliveira/ola:1.0") está correta e disponível no repositório. Se a imagem não existir ou não estiver acessível, o serviço ECS pode ficar preso na etapa de criação.

  4. Verifique a conectividade com o repositório: Garanta que a instância do ECS tenha conectividade com o registro do Docker que contém a imagem do contêiner. Se a instância não puder acessar o registro, a criação do serviço pode falhar.

  5. Verifique se há recursos suficientes disponíveis na conta: Às vezes, o CDK pode ficar preso na criação de recursos porque há limites na conta da AWS que estão sendo atingidos. Verifique se você não atingiu nenhum limite de recursos (por exemplo, número máximo de instâncias, tamanho da VPC, etc.).

  6. Registre e verifique eventos do CloudFormation: O CDK utiliza o AWS CloudFormation para criar recursos. Você pode ir para o console do CloudFormation na AWS e verificar a pilha relacionada ao seu aplicativo CDK. Lá, você pode encontrar detalhes sobre os eventos que estão ocorrendo durante a criação dos recursos e possíveis mensagens de erro.

  7. Atualize o CDK e suas dependências: Verifique se você está usando a versão mais recente do CDK e suas dependências. Pode haver problemas conhecidos que foram corrigidos em versões mais recentes.

Depois de verificar esses pontos, tente executar o deploy novamente. Se ainda encontrar problemas, verifique os logs e mensagens de erro para obter informações mais detalhadas sobre a causa do problema.

Fico no aguardo, Obrigado!

4 respostas

Olá Julio!

Entendo que você está enfrentando um problema ao subir o CDK Service e agradeço por compartilhar o erro que está ocorrendo. Pelo que pude analisar, o erro parece estar relacionado ao serviço ECS (AWS::ECS::Service) ficar preso na etapa "CREATE_IN_PROGRESS". Vou te fornecer algumas sugestões de solução de problemas que podem ajudar a resolver esse problema:

  1. Verifique as permissões do IAM: Certifique-se de que a função do IAM usada pelo CDK tem permissões adequadas para criar os recursos necessários para o serviço ECS, como clusters ECS, serviços ECS, tarefas, grupos de segurança, entre outros. Verifique se a política da função IAM está configurada corretamente.

  2. Verifique as configurações da VPC (Virtual Private Cloud): O CDK precisa de uma VPC configurada para criar serviços do ECS. Verifique se você possui uma VPC configurada e se ela tem sub-redes públicas disponíveis nas zonas de disponibilidade especificadas.

  3. Verifique a imagem do contêiner: Certifique-se de que a imagem do contêiner especificada em ContainerImage.fromRegistry("jacquelineoliveira/ola:1.0") está correta e disponível no repositório. Se a imagem não existir ou não estiver acessível, o serviço ECS pode ficar preso na etapa de criação.

  4. Verifique a conectividade com o repositório: Garanta que a instância do ECS tenha conectividade com o registro do Docker que contém a imagem do contêiner. Se a instância não puder acessar o registro, a criação do serviço pode falhar.

  5. Verifique se há recursos suficientes disponíveis na conta: Às vezes, o CDK pode ficar preso na criação de recursos porque há limites na conta da AWS que estão sendo atingidos. Verifique se você não atingiu nenhum limite de recursos, como o número máximo de instâncias ou o tamanho da VPC.

  6. Registre e verifique eventos do CloudFormation: O CDK utiliza o AWS CloudFormation para criar recursos. Você pode ir para o console do CloudFormation na AWS e verificar a pilha relacionada ao seu aplicativo CDK. Lá, você pode encontrar detalhes sobre os eventos que estão ocorrendo durante a criação dos recursos e possíveis mensagens de erro.

  7. Atualize o CDK e suas dependências: Verifique se você está usando a versão mais recente do CDK e suas dependências. Pode haver problemas conhecidos que foram corrigidos em versões mais recentes.

Após verificar esses pontos, tente executar o deploy novamente. Se ainda encontrar problemas, verifique os logs e mensagens de erro para obter informações mais detalhadas sobre a causa do problema.

Espero que essas sugestões possam te ajudar a resolver o problema. Se tiver mais alguma dúvida, estou à disposição!

Espero ter ajudado e bons estudos!

Olá Matheus,

As sugetões que você me deu são iguais as que o ChatGPT me forneceu. O problema ainda continua e na AWS não encontrei detalhes sobre o problema. Segue print do cloud formation:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Apenas para informar, continuei o curso aqui e consegui fazer a parte do RDS mas quando alterei a classe AluraServiceStack para incluir a imagem juliocesarcs/pedidos-ms que eu havia criado em meu docker HUB o mesmo problema acontece.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Então acreditro que seja algo referente a conta do free tier não permitir criar essa istância pois nos vídeos de criação do banco vi que as máquinas eram bem limitadas mas não cheguei a detalhar a fundo.

Resolvi o problema atualizando o cdk executando os seguintes comandos:

  1. msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi /qn
  2. npm install -g aws-cdk

Em seguida executei o deploy da aplicação novamente com o coamndo cdk deploy Service Vpc Cluster.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software