Dentre as diversas vantagens da computação em nuvem, uma das principais é o provisionamento sob demanda. O cliente provisiona recursos, como servidores e armazenamento, somente quando são necessários e paga apenas pelo que utiliza.
Nesse post vamos falar do serviço da AWS que realiza essa tarefa de maneira automática, o Auto Scaling.
O que é AWS Auto Scaling?
O Auto Scaling é o serviço da AWS que realiza o ajuste automático do provisionamento da infraestrutura em função da demanda de tráfego.
Com ele é possível adicionar a capacidade de computação necessária para processar determinada carga no aplicativo e, em seguida, remover quando não for mais necessária; tudo de forma automática. Isso ajuda a otimizar o desempenho dos aplicativos e reduzir custos de infraestrutura.
Recursos do AWS Auto Scaling
O AWS Auto Scaling pode ser empregado das seguintes formas:
- Grupos do EC2 Auto Scaling: contém um conjunto de instâncias do EC2 para fins de gerenciamento e escalabilidade automática. A partir de um grupo, é possível ativar ou encerrar instâncias à medida que a demanda do aplicativo aumenta ou diminui. Para ajudar nesse processo disponibilizamos um projeto open source para ativar e desativar automaticamente as instâncias conectadas aos grupos do EC2 Auto Scaling com base nos dias da semana e no horário de trabalho.
- EC2 Spot Fleets: executa ou encerra instâncias de uma solicitação de spot fleet em resposta a uma política de escalabilidade ou pode substituir automaticamente instâncias que são interrompidas em decorrência preço ou capacidade.
- Amazon ECS: permite controlar o dimensionamento das cargas de trabalho do ECS e gerenciar o encerramento de instâncias EC2 registradas nos clusters. Isso ajuda a manter a disponibilidade das cargas de trabalho com custos operacionais mais baixos.
- Amazon DynamoDB: permite que uma tabela ou um índice secundário global do DynamoDB aumente ou diminua a capacidade provisionada de leitura e gravação para lidar com picos ou quedas repentinos no tráfego.
- Amazon Aurora: ajusta dinamicamente o número de réplicas de leitura do Aurora provisionadas para um cluster a fim de lidar com alterações repentinas em conexões ativas ou de carga de trabalho.
Benefícios do AWS Auto Scaling
- Redução de custos: o AWS Auto Scaling permite pagar apenas pelos recursos que são realmente necessários. Quando a demanda cai, o Auto Scaling remove automaticamente toda a capacidade excessiva de recursos, assim evita gastos desnecessários.
- Escalabilidade automática: o Auto Scaling cria de forma automática políticas de escalabilidade para definir a forma que os recursos respondem às alterações de demanda. Assim é possível priorizar disponibilidade, custos ou um balanço entre os dois.
- Escalabilidade personalizada: o Auto Scaling permite analisar o uso médio de todos os recursos e definir rapidamente os níveis pretendidos de uso para cada grupo de recursos semelhantes.
- Desempenho contínuo: a partir do monitoramento do Auto Scaling é possível manter a operação dos aplicativos nos níveis de performance desejados, já que quando ocorrem picos de demanda o Auto Scaling aumenta automaticamente a capacidade dos recursos para manter a alta qualidade de serviço.
Monitoramento no AWS Auto Scaling
Um aspecto importante para o desempenho apropriado do Auto Scaling é o monitoramento e análise da utilização dos serviços.
Algumas das ferramentas que a AWS fornece para monitorar o Auto Scaling e executar ações automáticas quando apropriado são:
- Alarmes do Amazon CloudWatch: A partir do monitoramento automático do CloudWatch é possível configurar alarmes com notificações SNS que serão enviadas por email, quando algum limite for atingido ou quando alguma anomalia for detectada.
- CloudTrail: O CloudTrail captura chamadas de API para o Auto Scaling e outros eventos realizados na conta AWS. Com ele é possível analisar arquivos de log de um bucket S3 em específico e outros detalhes como qual usuário executou tal ação, quais recursos foram acionados ou quando determinado evento ocorreu.
- CloudWatch Logs: Permite monitorar, armazenar e acessar os arquivos de log de instâncias do EC2, CloudTrail, Route 53 e de outras fontes. O CloudWatch Logs monitora informações nos arquivos de log e envia notificações quando determinados limites forem atingidos.
Conte com o CleanCloud Inspect
Utilizar os recursos de forma pouco eficiente pode gerar custos desnecessários e o impacto pode ser muito grande na conta.
Por isso, conheça o CleanCloud Inspect e aproveite recomendações diárias e automáticas para reduzir custos da nuvem AWS.
Teste gratuitamente por 7 dias e pague apenas uma fração do que pode economizar.