Systems Manager e automação de operações

Aprenda os recursos principais do Systems Manager: Patch Manager, Run Command, Session Manager e Parameter Store, explicado para iniciantes.

Imagine gerenciar quinhentos servidores. Fazer login em cada um individualmente para aplicar patches de seguranca, instalar software e verificar o status e praticamente impossivel. O AWS Systems Manager (SSM) resolve esse problema com gerenciamento centralizado e automatizado.

 

O que e Systems Manager?

Pense no Systems Manager como o sistema de gerenciamento predial de um grande condominio. O gerente do edificio nao visita cada apartamento individualmente. A partir de uma sala de controle central, ele pode ver o status de cada unidade, lidar com problemas remotamente e agendar manutencao para andares inteiros de uma vez.

Ha dois pre-requisitos antes de poder usar o Systems Manager com qualquer instancia EC2. Primeiro, o SSM Agent deve estar instalado na instancia. A maioria das AMIs oficiais da AWS como Amazon Linux 2 e Windows Server ja vem com ele pre-instalado. AMIs personalizadas criadas por voce precisarao de instalacao manual. Segundo, a instancia EC2 precisa de um role IAM com a politica AmazonSSMManagedInstanceCore anexada. Sem esse role, a instancia nao pode se comunicar com o servico Systems Manager.

Se qualquer um desses pre-requisitos estiver faltando, nenhum dos recursos do Systems Manager funcionara nessa instancia.

 

Patch Manager — Automatizando Patches de Seguranca

Voce tem uma loja online e a equipe de seguranca diz "aplique os ultimos patches de seguranca em todos os servidores ate sexta-feira a meia-noite". Se voce tem duzentos servidores, como faz isso? O Patch Manager cuida disso.

O Patch Manager comeca com Patch Baselines, que sao regras que definem quais patches aprovar automaticamente. A AWS fornece uma baseline padrao que aprova automaticamente patches de seguranca apos sete dias. Voce pode criar baselines personalizadas para aprovar patches especificos imediatamente ou bloquear permanentemente certos patches que nao deseja instalar.

Depois de ter uma patch baseline, voce precisa decidir quando aplicar os patches. E ai que entram as Maintenance Windows. Voce define uma janela de tempo como "todo domingo das 2h as 4h", um momento em que o trafego do seu servico e baixo. Durante essa janela, o Patch Manager aplica automaticamente os patches aprovados nas instancias alvo.

Dica de exame: "Automatizar o patcheamento de EC2 fora do horario comercial" — a resposta e Patch Manager mais Maintenance Window.

 

Run Command — Comandos Remotos Sem SSH

Voce precisa implantar um novo arquivo de configuracao em duzentos servidores. A abordagem tradicional e fazer SSH em cada servidor, executar o comando, repetir. Voce precisa de chaves SSH, abrir a porta 22 nos grupos de seguranca e repetir o processo centenas de vezes. O Run Command elimina tudo isso.

Com o Run Command, voce digita o comando uma vez no console da AWS ou CLI, seleciona suas instancias alvo usando tags ou IDs de instancia, e o comando e executado em todas elas simultaneamente.

Aqui estao as caracteristicas principais. Nenhuma chave SSH e necessaria. Voce nao precisa abrir a porta 22 em nenhum grupo de seguranca. Se suas instancias tiverem tags como Environment=Production e Role=WebServer, voce pode dizer "execute este comando em todas as instancias WebServer de Production" e elas sao selecionadas automaticamente. Os resultados sao salvos no S3 ou CloudWatch Logs automaticamente. O recurso Rate Control permite configurar quantas instancias executam simultaneamente e quantas falhas permitir antes de parar.

Dica de exame: "Executar scripts em centenas de instancias EC2 simultaneamente sem SSH" — a resposta e Run Command.

 

Session Manager — Acesso Seguro a Servidores

A equipe de desenvolvimento precisa fazer login em um servidor de producao para verificar alguns logs. Tradicionalmente isso significa emitir chaves SSH ou rotear atraves de um host bastion. O Session Manager simplifica tudo isso.

O Session Manager permite conectar a uma instancia EC2 sem SSH, RDP, hosts bastion ou regras de grupo de seguranca de entrada. Voce clica no botao "Connect" no console da AWS e um terminal baseado em navegador abre. Voce tambem pode se conectar via AWS CLI.

Do ponto de vista de seguranca, o Session Manager e excepcionalmente robusto. Cada sessao e registrada automaticamente no AWS CloudTrail. Voce sempre tem um registro de quem acessou qual servidor e quando. Se quiser, o conteudo completo de cada sessao, cada comando digitado e cada saida mostrada, pode ser salvo no S3 ou CloudWatch Logs.

Voce controla o acesso atraves de politicas IAM. Voce pode restringir o acesso a instancias especificas, apenas durante certas horas, ou exigir MFA antes de conectar.

Dica de exame: "Equipe de seguranca precisa auditar todos os acessos a servidores" ou "Conectar ao EC2 sem SSH" — a resposta e Session Manager.

 

State Manager — Mantendo Instancias no Estado Desejado

Suponha que um agente de monitoramento critico sempre deve estar em execucao em cada servidor. Mas alguem o para acidentalmente, ou uma implantacao incorreta o remove. O State Manager previne o desvio da configuracao desejada.

O State Manager mantem um "estado desejado" para suas instancias. Voce cria uma Association que diz "essas instancias sempre devem estar nesta configuracao". O State Manager verifica periodicamente cada instancia e se ela desviou do estado desejado, corrige automaticamente.

Um exemplo: "O CloudWatch Agent sempre deve estar instalado e em execucao em todas as instancias EC2". Com essa Association em vigor, se o agente for parado ou desinstalado, o State Manager o reinstala e reinicia automaticamente.

 

Automation — Criando Runbooks de Auto-Recuperacao

As 3 da manha o CPU do seu servidor de producao atinge 100%. Um engenheiro de plantao acorda, faz login, diagnostica o problema e reinicia o servidor, trinta minutos de sono perdido. Com o Automation, todo esse processo pode acontecer sem intervencao humana.

O Automation permite criar Runbooks: fluxos de trabalho com varios passos que executam automaticamente. A AWS fornece Runbooks prontos para tarefas comuns como reiniciar uma instancia EC2, criar uma AMI ou tirar um snapshot do EBS.

Voce tambem pode criar Runbooks personalizados. Por exemplo: "Quando o alarme de CPU disparar, capturar os principais processos no S3, reiniciar a instancia e enviar notificacao de conclusao". Varios passos encadeados em um fluxo de trabalho automatizado.

Para operacoes criticas, voce pode incluir passos de aprovacao. "Antes de reiniciar o banco de dados, exigir aprovacao do lider de operacoes". Isso permite combinar automacao com supervisao humana quando necessario.

Conecte o Automation a alarmes do CloudWatch ou regras do EventBridge e os Runbooks disparam automaticamente quando eventos especificos ocorrem.

Dica de exame: "Reiniciar automaticamente o EC2 quando um alarme do CloudWatch disparar" — a resposta e Automation Runbook mais CloudWatch Alarm.

!4 capacidades do Systems Manager

Parameter Store — Armazenando Configuracoes e Segredos com Seguranca

Sua aplicacao precisa de um endereco de banco de dados, nome de usuario e senha para se conectar. Colocar esses valores diretamente no seu codigo e um grave risco de seguranca. O Parameter Store e o lugar certo para armazena-los.

O Parameter Store tem tres tipos de valor.

String armazena texto simples. Use para valores de configuracao nao sensiveis como enderecos de host de banco de dados ou endpoints de API.

StringList armazena uma lista de valores separados por virgulas. Util para coisas como uma lista de enderecos IP permitidos.

SecureString armazena o valor criptografado usando uma chave KMS. Use para dados sensiveis como senhas de banco de dados, chaves de API e certificados.

Voce pode organizar valores em uma hierarquia: /myapp/prod/db/password da uma estrutura limpa para gerenciar valores em diferentes ambientes. O historico de versoes e rastreado automaticamente.

O Parameter Store e frequentemente comparado ao Secrets Manager. O nivel Standard do Parameter Store e gratuito; o Secrets Manager tem custo mas oferece rotacao automatica de segredos. "Armazenar valores de configuracao criptografados gratuitamente" aponta para Parameter Store SecureString. "Rotar automaticamente uma senha de banco de dados em um cronograma" aponta para Secrets Manager.

Dica de exame: "Armazenar valores de configuracao criptografados sem custo" — a resposta e Parameter Store SecureString.

 

EC2 Image Builder — Automatizando a Criacao de AMIs Douradas

Sua empresa mantem uma imagem padrao de servidor com todas as configuracoes de seguranca, software e politicas ja incorporados. Isso e chamado de "AMI dourada". O EC2 Image Builder automatiza a criacao e atualizacao dessa AMI dourada.

O pipeline funciona assim: selecione uma imagem base (Amazon Linux oficial da AWS, por exemplo), defina qual software instalar e quais configuracoes aplicar, execute uma fase de testes para verificar se a imagem esta correta, depois distribua a imagem testada para uma ou mais regioes.

Voce pode agendar esse pipeline para ser executado automaticamente sempre que um novo patch de seguranca for lancado, mantendo sua AMI dourada sempre atualizada.

 

Inventory — Saber o que esta Instalado

Se voce precisa saber qual software esta instalado em cem servidores e em qual versao, o Systems Manager Inventory coleta essas informacoes automaticamente.

A partir de um unico painel voce pode ver aplicativos instalados, configuracao de rede, status de atualizacoes do Windows e servicos em execucao para cada instancia gerenciada. Isso e util para encontrar rapidamente todos os servidores executando uma versao especifica de software, ou para auditar o uso de licencas em toda a sua frota.

 

Pontos-chave para o exame

"Executar comandos em centenas de servidores simultaneamente sem SSH" -- Run Command

Voltar à lista do blog