Geral

P: O que é o AWS Auto Scaling?

O AWS Auto Scaling é um novo serviço da AWS para ajudar a otimizar o desempenho de aplicativos e reduzir custos de infraestrutura por meio da escalabilidade fácil e segura de vários recursos da AWS. O serviço simplifica a experiência de escalabilidade, permitindo escalar coleções de recursos relacionados usados por um aplicativo com apenas alguns cliques. O AWS Auto Scaling ajuda a configurar políticas de escalabilidade consistentes e congruentes em toda a pilha de infraestrutura usada por um aplicativo. O AWS Auto Scaling escala automaticamente os recursos conforme a necessidade para cumprir a estratégia de escalabilidade selecionada. Assim, você pode manter o desempenho e pagar apenas pelos recursos realmente necessários.

P: Quais os benefícios do AWS Auto Scaling?

O AWS Auto Scaling é uma forma rápida e fácil de otimizar o desempenho e os custos dos aplicativos.

  • Configure rapidamente a escalabilidade: o AWS Auto Scaling oferece uma experiência unificada de escalabilidade para todos os recursos escaláveis usados pelos aplicativos. É possível ver a utilização média de todos os recursos escaláveis e definir rapidamente os níveis pretendidos de utilização para cada grupo de recursos semelhantes em uma interface simples e intuitiva.
  • Tome decisões de escalabilidade com inteligência: o AWS Auto Scaling permite automatizar a forma como recursos diferentes respondem às alterações de demanda. Estratégias de escalabilidade fáceis de compreender permitem priorizar disponibilidade, custos ou um equilíbrio ente os dois. O AWS Auto Scaling cria automaticamente todas as políticas de escalabilidade e define objetivos de acordo com sua preferência.
  • Mantenha automaticamente o desempenho: o AWS Auto Scaling monitora continuamente os recursos subjacentes dos aplicativos para garantir que operem nos níveis de performance desejados. Quando ocorrem picos de demanda, o AWS Auto Scaling aumenta automaticamente a capacidade dos recursos restritos para manter uma alta qualidade de serviço.
  • Estime os custos e evite gastos desnecessários: o AWS Auto Scaling pode ajudar a otimizar as eficiências de utilização e custo do consumo de serviços da AWS. Assim, você paga apenas pelos recursos realmente necessários. Quando a demanda cai, o AWS Auto Scaling remove automaticamente toda a capacidade excessiva de recursos, evitando gastos desnecessários.

P: Quando devo usar o AWS Auto Scaling?

Você deve usar o AWS Auto Scaling para aplicativos que usam um ou mais recursos escaláveis e estão sujeitos a cargas variáveis. Um bom exemplo seria um aplicativo web de comércio eletrônico que recebe tráfego variável durante o dia. O aplicativo segue uma arquitetura padrão de três camadas: o Elastic Load Balancing distribui o tráfego recebido, o Amazon EC2 é a camada de computação e o DynamoDB é a camada de dados. Neste caso, o AWS Auto Scaling escalará um ou mais grupos do EC2 Auto Scaling e tabelas do DynamoDB usados pelo aplicativo para responder à curva de demanda.

P: Como posso começar a usar o AWS Auto Scaling?

O AWS Auto Scaling permite a seleção de aplicativos de acordo com tags de recursos ou com pilhas do AWS CloudFormation. Com apenas alguns cliques, é possível criar um plano de escalabilidade para um aplicativo. Esse plano define como cada um dos recursos usados pelo aplicativo será escalado. Para cada recurso, o AWS Auto Scaling cria uma política de escalabilidade de rastreamento direcionada com a métrica mais popular para esse tipo de recurso e mantém essa métrica em um valor direcionado para a estratégia de escalabilidade selecionada. Para definir os valores das métricas de recursos, você pode optar entre três recomendações de escalabilidade predefinidas que otimizam disponibilidade, otimizam custos ou equilibram esses dois critérios. Ou, se preferir, você pode definir seus próprios valores pretendidos. Além disso, o AWS Auto Scaling define automaticamente os valores mínimo e máximo dos recursos.

Opções de escalabilidade

P: Quais as diferentes formas de escalabilidade de recursos da AWS?

Os clientes da AWS dispõem de várias opções para escalar recursos. O Amazon EC2 Auto Scaling ajuda a garantir que você tenha o número correto de instâncias do Amazon EC2 disponíveis para processar a carga dos aplicativos. O EC2 Auto Scaling também pode detectar uma instância não íntegra, encerrá-la e substituí-la por uma nova instância. O uso do EC2 Auto Scaling melhora a tolerância a falhas, a disponibilidade e o gerenciamento de custos dos aplicativos.

Para escalar outros recursos diferentes do EC2, você pode usar a API do aplicativo Auto Scaling, que permite definir políticas de escalabilidade para escalar automaticamente recursos da AWS ou programar ações de escalabilidade recorrentes ou executadas uma única vez. O Application Auto Scaling pode escalar serviços do Amazon ECS, frotas spot do Amazon EC2, clusters do Amazon EMR, frotas do Amazon AppStream 2.0, capacidade de leitura e gravação para tabelas e índices secundários globais do Amazon DynamoDB, réplicas do Amazon Aurora e variantes de endpoint do Amazon SageMaker.

Para configurar a escalabilidade automática de vários recursos em diversos serviços, use o AWS Auto Scaling para criar um plano de escalabilidade para os recursos subjacentes dos aplicativos. O AWS Auto Scaling também é usado para criar escalabilidade preditiva para recursos do EC2.

P: Quando devo usar o AWS Auto Scaling ou o Amazon EC2 Auto Scaling?

Use o AWS Auto Scaling para gerenciar a escalabilidade de vários recursos em diversos serviços. O AWS Auto Scaling permite definir políticas de escalabilidade dinâmicas para vários grupos do EC2 Auto Scaling ou outros recursos por meio de estratégias de escalabilidade predefinidas. É mais rápido usar o AWS Auto Scaling para configurar políticas de escalabilidade para todos os recursos escaláveis de um aplicativo que gerenciar as políticas de escalabilidade de cada recurso no console dos serviços individuais. Outro benefício é a facilidade, pois o AWS Auto Scaling inclui estratégias de escalabilidade predefinidas que simplificam a definição de políticas de escalabilidade. O AWS Auto Scaling também deve ser usado para criar escalabilidade preditiva para recursos do EC2.

Use o EC2 Auto Scaling somente quando precisar escalar grupos do Amazon EC2 Auto Scaling ou quiser apenas manter a integridade da frota do EC2. Além disso, use o EC2 Auto Scaling se precisar criar ou configurar grupos do Amazon EC2 Auto Scaling ou definir políticas de escalabilidade programas ou de etapas (pois o AWS Auto Scaling oferece suporte apenas a políticas de escalabilidade de rastreamento pretendida).

Os grupos do EC2 Auto Scaling devem ser criados e configurados fora do AWS Auto Scaling, como por meio do console do EC2, da API do Auto Scaling ou do CloudFormation. O AWS Auto Scaling pode ajudar a definir políticas de escalabilidade dinâmica para grupos do EC2 Auto Scaling existentes.

P: Quando devo usar o AWS Auto Scaling ou o Auto Scaling para serviços individuais?

Use o AWS Auto Scaling para gerenciar a escalabilidade de vários recursos em diversos serviços. O AWS Auto Scaling possibilita a escalabilidade unificada de vários recursos e tem uma orientação predefinida que facilita e agiliza a configuração da escalabilidade. Se você preferir, poderá optar por usar os consoles dos serviços individuais, a API do Auto Scaling ou a API do Application Auto Scaling para escalar serviços individuais da AWS. Além disso, use os consoles ou as APIs individuais se quiser definir políticas de escalabilidade de etapas ou escalabilidade programada, pois o AWS Auto Scaling cria apenas políticas de escalabilidade de rastreamento pretendida.

P: O que é escalabilidade preditiva?

Escalabilidade preditiva é um recurso do AWS Auto Scaling que examina padrões históricos de tráfego e os projeta para programar mudanças futuras no número de instâncias do EC2 nos momentos adequados. A escalabilidade preditiva usa modelos de machine learning para prever padrões diários e semanais.

Auto Scaling aprimorado com escalabilidade preditiva proporciona um provisionamento de capacidade mais rápido, mais simples e mais preciso, gerando custos mais baixos e aplicativos com maior capacidade de resposta. Ao prever as variações de tráfego, a escalabilidade preditiva fornece instâncias do EC2 antes da variação do tráfego, tornando o Auto Scaling mais rápido e mais preciso.

P: Com que serviços posso usar escalabilidade preditiva?

Neste momento, a escalabilidade preditiva só gera programas para instâncias do EC2.

P: Como posso usar a escalabilidade preditiva com monitoramento de limites?

A escalabilidade preditiva funciona juntamente com o monitoramento de limites para tornar as variações de capacidade do EC2 mais responsivas ao seu tráfego de aplicativos recebidos. Enquanto a escalabilidade preditiva define a capacidade mínima do seu aplicativo com base no tráfego previsto, o monitoramento de limites altera a capacidade real com base no tráfego real no momento. O monitoramento de limites funciona para rastrear os níveis de utilização de capacidade desejados em condições de tráfego variáveis e lida com picos de tráfego e outras flutuações imprevistas. O escalonamento preditivo e o monitoramento de limites são configurados em conjunto por um usuário para gerar um plano de escalabilidade.

P: O que é um plano de escalabilidade?

Plano de escalabilidade é um conjunto de instruções de escalabilidade para vários recursos da AWS. Um plano de escalabilidade é configurado inicialmente pela seleção de todos os recursos de EC2 subjacentes ao seu aplicativo no AWS Auto Scaling. Em seguida, é selecionada a métrica de utilização de recursos que você gostaria de rastrear, como a utilização da CPU, e definir o valor a ser rastreado, por exemplo, 50%. Finalmente, é selecionada a métrica do CloudWatch que representa o fluxo do seu tráfego de entrada. Talvez você deva definir esse parâmetro caso não o tenha feito antes.

A métrica de utilização de recursos e a métrica de tráfego recebido são os principais parâmetros do plano de escalabilidade. A métrica de tráfego recebido é usada pela escalabilidade preditiva para gerar previsões de tráfego. Com base nessas previsões, a escalabilidade preditiva programa as futuras ações de escalabilidade para configurar a capacidade mínima. A escalabilidade dinâmica usa a métrica de utilização de recursos e seu valor previsto para alterar de forma dinâmica a capacidade do EC2 para seu aplicativo ao longo do tempo à medida que o tráfego varia.

P: É possível configurar um plano de escalabilidade sem escalabilidade preditiva?

Sim, é possível configurar um plano de escalabilidade somente com escalabilidade dinâmica sem habilitar a escalabilidade preditiva. Por outro lado, é possível habilitar somente a escalabilidade preditiva sem configurar a escalabilidade dinâmica.

P: Qual o período de dados históricos necessários para que a escalabilidade preditiva gere o plano de escalabilidade?

A escalabilidade preditiva necessita de até duas semanas de dados históricos, mas pode gerar um programa de escalabilidade preditiva com dados referentes a um dia.

P: Para que período futuro a escalabilidade preditiva prevê o tráfego?

A cada 24 horas, a escalabilidade preditiva prevê o tráfego para as próximas 48 horas e programa variações de capacidade para estas 48 horas.

P: É possível configurar a escalabilidade preditiva para fornecer instâncias antes de um pico real no tráfego?

Sim, é possível configurar tempo de buffer opcionalmente para fornecer instâncias em alguma ocasião antes de uma variação de tráfego prevista. Isso é útil para aplicativos cujas instâncias do EC2 necessitam de algum tempo para «aquecimento» antes de estarem prontos para servir ao tráfego do aplicativo.

P: Qual o custo da escalabilidade preditiva?

Da mesma maneira que outros recursos do Auto Scaling, a escalabilidade preditiva é de uso gratuito. Você paga pelos recursos usados para a execução dos aplicativos.

P: Qual a diferença entre o AWS Auto Scaling e os recursos de escalabilidade dos serviços individuais?

A tabela a seguir oferece uma comparação entre as opções de escalabilidade da AWS.

  AWS
Auto Scaling
Amazon EC2
Auto Scaling
Auto Scaling
para outros serviços
Recursos que você pode escalar Grupos do EC2 Auto Scaling
Frotas spot do EC2
Serviços do ECS
Capacidade provisionada do DynamoDB para tabelas e GSIs
Réplicas do Aurora
Grupos do EC2 Auto Scaling Frotas spot do EC2
Serviços do ECS
Capacidade provisionada do DynamoDB para tabelas e GSIs
Réplicas do Aurora
Clusters do EMR
Frota do Appstream 2.0
Variantes de endpoint do SageMaker
Método de escalabilidade Escalabilidade de todos os aplicativos usando uma interface unificada
Um grupo de Auto Scaling por vez Um recurso por vez
Escalabilidade preditiva Sim (somente EC2) Não Não
Descoberta automática de todos os
recursos escaláveis de um aplicativo
Sim Não Não
Capacidade de escalar vários recursos em vários serviços com uma interface unificada Sim Não
Não
Orientação e recomendações
para definir políticas de escalabilidade
Sim Não Não
Capacidade de criar e configurar
grupos de Auto Scaling
Não Sim
Não aplicável
Capacidade de usar o Auto Scaling apenas
para o gerenciamento da frota do EC2  
Não Sim Não aplicável
Definir políticas inteligentes e auto-otimizáveis
de rastreamento de escalabilidade pretendida*
Sim Sim Sim
Configurar ações de escalabilidade programadas Não Sim Sim
Configurar políticas de escalabilidade de etapas Não Sim
Sim
Definir uma política de escalabilidade com métricas e limites diferentes para cada recurso Não Sim Sim

* Recomendado em vez de políticas de escalabilidade de etapas

Recursos

P: O que pode ser escalado com o AWS Auto Scaling?

Você pode usar o AWS Auto Scaling para configurar a escalabilidade para os seguintes recursos do aplicativo por meio de uma única interface unificada:

P: Como o AWS Auto Scaling faz recomendações de escalabilidade?

O AWS Auto Scaling baseia as recomendações de escalabilidade nas métricas e limites de escalabilidade mais comuns usados para Auto Scaling. Além disso, o serviço recomenda limites seguros de escalabilidade por meio de recomendações de tamanhos mínimo e máximo para os recursos. Dessa forma, você pode começar a usar rapidamente e ajustar a estratégia de escalabilidade ao longo do tempo.

P: Como faço para selecionar uma pilha de aplicativos no AWS Auto Scaling?

Você pode selecionar uma pilha do AWS CloudFormation ou selecionar recursos de acordo com tags de recursos comuns. No momento, não é possível descobrir serviços do ECS usando tags.

P: Como o AWS Auto Scaling descobre quais recursos podem ser escalados?

O AWS Auto Scaling verifica a pilha selecionada do AWS CloudFormation ou os recursos com as tags especificadas para identificar os tipos de recurso da AWS compatíveis que podem ser escalados. No momento, não é possível descobrir serviços do ECS usando tags.

Disponibilidade e definição de preço

P: Em quais regiões o AWS Auto Scaling está disponível?

O AWS Auto Scaling está disponível na Ásia-Pacífico (Mumbai), Ásia-Pacífico (Tóquio), Ásia-Pacífico (Seul), Ásia-Pacífico (Sydney), Canadá (Central), Oeste dos EUA (Norte da Califórnia), Europa (Londres), Europa (Frankfurt), Europa (Paris), Europa (Milão), Leste dos EUA (Virgínia), Leste dos EUA (Ohio), Oeste dos EUA (Oregon), Europa (Irlanda) e Ásia-Pacífico (Cingapura).  

P: Quanto custa o AWS Auto Scaling?

De forma semelhante ao Auto Scaling de recursos individuais da AWS, o uso do AWS Auto Scaling é gratuito. O AWS Auto Scaling é habilitado pelo Amazon CloudWatch. Portanto, são cobradas taxas de serviço para o CloudWatch e para os recursos do aplicativo (como instâncias do Amazon EC2, load balancers do Elastic Load Balancing, etc.).

Saiba mais sobre a definição de preço do AWS Auto Scaling

Acesse a página de definição de preço
Pronto para começar?
Cadastrar-se
Tem outras dúvidas?
Entre em contato conosco