Trilha SysOps AWS
O objetivo desta trilha é apresentar as soluções de um conjunto de ferramentas AWS que visa auxliar a administração e gerenciamento de seu ambiente computacional.
É muito comum ainda existir ambiente com instâncias EC2, atrás de um Load Balancer hospendando um microserviço, seja ambiente Windows ou Linux. Com a crescente adoção das arquiteturas baseadas em microserviços a migração para este tipo de cenário se torna cada vez mais complexo no sentido de administração. Na arquitetura antiga com monolítico, tínhamos um servidor onde toda a aplicação era hospedada e um segundo que chamamos de a camada de banco de dados. Os problemas eram fáceis de identificar, geralmente estavam no servidor de aplicação ou no banco de dados. Agora o problema pode se espalhar em qualquer um dos recursos computacionais distribuídos, as vezes sincronos outras assíncronos. Manter um ambiente saudável com as atualizações de segurança e de motor de sistema em dia têm se tornado o pesadelo dos administradores de sistema. Os processos de automação visam auxiliar essa dor, existem algumas ferramentas que auxiliam na criação de processos de automação, iremos abordar essas ferramentas dentro do ambiente AWS.
Estou falando do AWS Systems Manager que é uma suíte de ferramentas de gerenciamento, administração e automação de recursos e aplicações dentro da sua conta.
Na prática
A primeira vez que acessá-lo você deve se deparar com uma tela como esta, totalmente vazia aguardando as configurações iniciais.
Vou iniciar nossa base com as instâncias EC2, eu considero as EC2 os recursos que mais necessitam de gerenciamento e visibilidade, vamos então utilizar o recurso Fleet Manager.
Para que seja possível visualizar suas instâncias em Fleet Manager são necessários dois requisitos:
- SSM client instalado;
- Uma “role” com permissão para o ssm acessar a instância;
SSM é o identificador de Systems Manager, você verá muito esse nome pela AWS.
Vamos iniciar pela criação da role que é mais complexo.
- Primeiro acesse IAM > Roles e clique no botão “Create role”;
- Selecione o tipo de serviço AWS Service e mais abaixo em “Common use cases” selecione EC2 por fim clique em Next;
- Agora precisamos definir a política que fará parte desta role, pesquise por “AmazonSSMManagedInstanceCore”, seleciona a police e clique em “Next”;
- Na última tela defina o nome da sua role, meu caso defini como “EC2-SSM-Role”, anote o nome que você definiu vamos precisar nos próximos passos, por fim clique em “Create role”;
Pronto! Temos nossa role configurada.
No nosso exemplo vamos utilizar uma instância do tipo Amazon Linux 2, pois esse AMI já vêm com SSM Client instalado por padrão, caso você utilize outra AMI você terá que baixar o cliente referente a sua versão de SO e instalar, deixo aqui o link para baixar os clientes conforme sua necesidade.
Caso você ainda não possua, crie uma instância do tipo t2.micro, com AMI Amazon Linux 2, se você não lembrar como criar uma instância segue o link.
Segue minha instância Amazon Linux 2 do tipo t2 micro ligada e em modo “running”.
Reparem na aba “Security” que essa instância não possui uma role associada a ela, este é o segundo item faltante para que a instância esteja disponível no Fleet Manager. Vale a pena lembrar o primeiro item é o SSM Client que no meu caso já está instalado por ser uma Amazon Linux 2.
Então agora siga os seguintes passos:
- Clique no botão Actions;
- Security;
- Modify IAM Role;
Selecione agora o nome daquela role que foi criada nos passos acima, (lembra que eu avisei para anotarem?) em seguida clique no botão “Update IAM role”. A partir de agora se você voltar na aba “Security” deve estar o nome da sua role associada a instância.
Para garantir que o serviço suba com as novas permissões faça um reboot da sua instância, aguarde alguns segundos para instância inicializar por completo e acesse novamente Systems Manager > Fleet Manager.
Pronto! Sua instância estará disponível para começar a ser gerenciada.
Porem reparar que o Id da instância equivale ao Node Id que o Fleet Manager referencia.
Pessoal vou parando por aqui para o post não ficar grande, sigam esses passos e continuem praticando criando outras instâncias do tipo t2.micro até estar familiarizado com esse processo.
Em breve darei sequência em outras ferramentas que compõem o Systems Manager.