Desde o seu lançamento, Estrutura Amazon VPC simplificou tarefas complexas de rede. Como resultado, minha perspectiva sobre como construir e conectar aplicativos modernos e multisserviços mudou. Como meu colega Danilo escreveu em sua postagem anunciando a disponibilidade geral do VPC Lattice:
“Ao usar o VPC Lattice, você pode se concentrar na lógica do seu aplicativo e melhorar a produtividade e a flexibilidade de implantação com suporte consistente para instâncias, contêineres e computação sem servidor.”
Hoje, estamos anunciando o suporte integrado do Amazon VPC Lattice para Amazon Elastic Container Service (Amazon ECS). Com essa nova integração integrada, os serviços do Amazon ECS agora podem ser associados diretamente aos grupos-alvo do VPC Lattice sem a necessidade de balanceadores de carga intermediários.
Aqui está uma rápida olhada em como você pode encontrar a integração do Amazon VPC Lattice ao criar um serviço Amazon ECS:
A integração do Amazon VPC Lattice com o Amazon ECS funciona registrando e cancelando o registro de endereços IP de tarefas do ECS em um serviço como destinos em um grupo de destino do VPC Lattice. À medida que as tarefas do ECS para o serviço são iniciadas, o Amazon ECS registrará automaticamente essas tarefas no grupo de destino do VPC Lattice.
Além disso, se as tarefas do ECS falharem nas verificações de integridade do VPC Lattice, o Amazon ECS substituirá automaticamente as tarefas. Além disso, se alguma tarefa for encerrada ou reduzida, ela será removida do grupo-alvo.
Usando a integração Amazon VPC Lattice
Deixe-me explicar como usar essa nova integração. Na demonstração a seguir, implantarei um servidor de aplicativos simples executado como um serviço ECS e configurarei a integração com o VPC Lattice. Em seguida, testarei o servidor de aplicativos conectando-me ao nome de domínio VPC Lattice sem precisar configurar balanceadores de carga adicionais no Amazon ECS.
Antes de começar essa integração, preciso ter certeza de que o Amazon ECS terá as permissões necessárias para registrar e cancelar o registro de destinos no VPC Lattice. Para saber mais, visite o Função IAM da infraestrutura do Amazon ECS página de documentação.
Para usar a integração com VPC Lattice, preciso definir uma definição de tarefa com pelo menos um contêiner e um mapeamento de porta. Este é um exemplo da minha definição de tarefa.
{
"containerDefinitions": (
{
"identify": "webserver",
"picture": "public.ecr.aws/ecs-sample-image/amazon-ecs-sample:newest",
"cpu": 0,
"portMappings": (
{
"identify": "web-80-tcp",
"containerPort": 80,
"hostPort": 80,
"protocol": "tcp",
"appProtocol": "http"
}
),
...
*redacted for brevity*
}
Em seguida, navego até meu cluster ECS e escolho Criar.
Em seguida, preciso selecionar a definição da tarefa e atribuir o nome do serviço.
Na seção de integração VPC Lattice, eu escolho Ativar estrutura VPC para começar a configurar o grupo de destino para VPC Lattice. Não preciso especificar um balanceador de carga porque usarei o VPC Lattice. Por padrão, o VPC Lattice usará um algoritmo de roteamento round-robin para rotear solicitações para destinos íntegros.
Agora posso começar a definir a integração do meu serviço ECS no VPC Lattice. Primeiro, seleciono a função de infraestrutura do Amazon ECS. Em seguida, preciso selecionar a nuvem privada digital (VPC) onde desejo que meu serviço seja executado. Depois disso, preciso definir o Alvo grupos que receberá tráfego. Depois de configurar o serviço com integração VPC Lattice, crio este serviço.
Depois de alguns minutos, meu serviço ECS está pronto. Eu navego até o serviço e escolho Configuração e rede. Se eu rolar para baixo até o Malha VPC seção, posso ver o grupo de destino VPC Lattice criado.
Para obter mais informações sobre esse grupo de destino, seleciono o nome do grupo de destino, que me redirecionará para a página do grupo de destino do VPC Lattice. Aqui posso ver que o Amazon ECS registrou com êxito o endereço IP da tarefa em execução.
Agora, preciso criar um serviço VPC Lattice e uma rede de serviços. Minha preferência é sempre criar o serviço VPC Lattice e depois associar-se à rede de serviços VPC Lattice posteriormente. Então, vamos fazer isso.
eu escolho Serviços sob o Malha VPC seção e escolha Criar serviço.
Eu preencho todos os detalhes necessários para criar um serviço VPC Lattice e escolho Próximo.
Então, eu adiciono um ouvinte, e para o Encaminhar para o grupo-alvo no Ação padrão do ouvinteseleciono o grupo-alvo recém-criado.
Na próxima página, como criarei a rede de serviço VPC Lattice posteriormente, pulo esta etapa e escolho Próximorevise as configurações e crie o serviço.
Com o serviço VPC Lattice criado, agora é hora de criar redes de serviço VPC Lattice. eu navego para Redes de serviços sob o Malha VPC seção e escolha Criar rede de serviços.
Primeiro, preencho o nome da rede de serviço VPC Lattice.
Então, no Associações de serviço página, seleciono o serviço que criei.
Associo esta rede de serviço à minha VPC e também ao grupo de segurança.
Para a simplicidade desta demonstração, defini Nãoe para o Autenticação tipo. No entanto, eu recomendo fortemente que você leia como você pode usar IAM para gerenciar o acesso ao VPC Lattice. Então, eu escolho Criar rede de serviços.
Nesta fase já temos tudo configurado para esta integração. Minha rede de serviço VPC Lattice agora está associada ao meu serviço VPC Lattice e à minha VPC.
Com tudo configurado, copio o Nome de domínio da minha página de serviço VPC Lattice.
Então, para acessar o serviço, faço login na instância na mesma VPC e chamo o serviço usando o nome de domínio do VPC Lattice.
(ec2-user@ ~)$ curl http://service-a-XYZ.XYZ.vpc-lattice-svcs.XYZ.on.aws
"Howdy there! I am Amazon ECS."
Uma coisa a ser observada é que se você não estiver recebendo tráfego para suas cargas de trabalho do Amazon ECS, verifique os grupos de segurança conforme descrito no Controlar o tráfego no VPC Lattice usando grupos de segurança página de documentação.
Pessoalmente, estou entusiasmado com essa integração porque ela abre diversas possibilidades ao mesmo tempo em que simplifica as arquiteturas de aplicativos e melhora a confiabilidade geral do sistema. Agora isso todos os tipos de computação da AWS são inerentemente compatíveis com VPC Latticeposso unificar serviços em todos os meus clusters ECS, contas AWS e VPCs.
Coisas para saber
Aqui estão alguns pontos importantes a serem observados:
Experimente hoje mesmo esse novo recurso do Amazon VPC Lattice e veja como ele pode agilizar a comunicação de aplicativos de contêiner em execução no Amazon ECS.
Feliz edifício!