O que é o Amazon EC2 Auto Scaling? - Amazon EC2 Auto Scaling

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

O que é o Amazon EC2 Auto Scaling?

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 da sua aplicação. Você cria coleções de instâncias EC2, chamadas de grupos de Auto Scaling. Você pode especificar o número mínimo de instâncias em cada grupo do Auto Scaling, e o Amazon EC2 Auto Scaling garante que seu grupo nunca seja menor que esse tamanho. Você pode especificar o número máximo de instâncias em cada grupo do Auto Scaling, e o Amazon EC2 Auto Scaling garante que seu grupo nunca seja maior que esse tamanho. Se você especificar a capacidade desejada, quando você criar o grupo ou em qualquer momento depois disso, o Amazon EC2 Auto Scaling garante que seu grupo tenha essa quantidade de instâncias. Se você especificar políticas de escalabilidade, o Amazon EC2 Auto Scaling poderá iniciar ou terminar instâncias à medida que a demanda da aplicação aumentar ou diminuir.

Por exemplo, o seguinte grupo do Auto Scaling tem um tamanho mínimo de uma instância, uma capacidade desejada de duas instâncias e um tamanho máximo de quatro instâncias. As políticas de escalabilidade que você define ajustam o número de instâncias, em seu número mínimo e máximo de instâncias, com base nos critérios que você especifica.


			Uma ilustração de um grupo básico do Auto Scaling.

Características do Amazon EC2 Auto Scaling

Com o Amazon EC2 Auto Scaling, suas instâncias do EC2 são organizadas em grupos de Auto Scaling para que possam ser tratadas como uma unidade lógica para fins de escalabilidade e gerenciamento. Os grupos do Auto Scaling usam modelos de execução (ou configurações de execução) como modelos de configuração para suas instâncias do EC2.

A seguir estão os principais recursos do Amazon EC2 Auto Scaling:

Monitorando a integridade das instâncias em execução

O Amazon EC2 Auto Scaling monitora automaticamente a saúde e a disponibilidade de suas instâncias usando verificações de saúde do EC2 e substitui instâncias encerradas ou prejudicadas para manter a capacidade desejada.

Verificações de integridade personalizadas

Além das verificações de saúde integradas, você pode definir verificações de saúde personalizadas específicas do seu aplicativo para verificar se ele está respondendo conforme o esperado. Se uma instância falhar na verificação de integridade personalizada, ela será substituída automaticamente para manter a capacidade desejada.

Equilibrando a capacidade em todas as zonas de disponibilidade

Você pode especificar várias zonas de disponibilidade para seu grupo de Auto Scaling, e o Amazon EC2 Auto Scaling equilibra suas instâncias uniformemente entre as zonas de disponibilidade à medida que o grupo se expande. Isso fornece alta disponibilidade e resiliência, protegendo seus aplicativos contra falhas em um único local.

Vários tipos de instâncias e várias opções de compra

Em um único grupo de Auto Scaling, você pode lançar vários tipos de instância e opções de compra (instâncias spot e sob demanda), permitindo otimizar os custos por meio do uso da instância spot. Você também pode aproveitar os descontos da Instância Reservada e do Savings Plan usando-os em conjunto com as Instâncias sob demanda do grupo.

Substituição automatizada de instâncias spot

Se o seu grupo inclui instâncias spot, o Amazon EC2 Auto Scaling pode solicitar automaticamente a substituição da capacidade spot se suas instâncias spot forem interrompidas. Por meio do rebalanceamento de capacidade, o Amazon EC2 Auto Scaling também pode monitorar e substituir proativamente suas instâncias spot que correm um risco elevado de interrupção.

Balanceamento de carga

Você pode usar o balanceamento de carga e as verificações de integridade do Elastic Load Balancing para garantir uma distribuição uniforme do tráfego do aplicativo para suas instâncias íntegras. Sempre que as instâncias são iniciadas ou encerradas, o Amazon EC2 Auto Scaling registra e cancela automaticamente o registro das instâncias do balanceador de carga.

Escalabilidade

O Amazon EC2 Auto Scaling também fornece várias maneiras de escalar seus grupos de Auto Scaling. O uso do escalonamento automático permite que você mantenha a disponibilidade dos aplicativos e reduza os custos adicionando capacidade para lidar com picos de carga e removendo a capacidade quando a demanda é menor. Você também pode ajustar manualmente o tamanho do seu grupo de Auto Scaling conforme necessário.

Atualização de instância

O recurso de atualização de instâncias fornece um mecanismo para atualizar instâncias de forma contínua quando você atualiza sua AMI ou modelo de execução. Você também pode usar uma abordagem em fases, conhecida como implantação canária, para testar uma nova AMI ou modelo de execução em um pequeno conjunto de instâncias antes de implementá-la para todo o grupo.

Ganchos do ciclo de vida

Ganchos de ciclo de vida são úteis para definir ações personalizadas que são invocadas quando novas instâncias são iniciadas ou antes que as instâncias sejam encerradas. Esse recurso é particularmente útil para criar arquiteturas orientadas por eventos, mas também ajuda a gerenciar instâncias em seu ciclo de vida.

Support para cargas de trabalho com estado

Os ganchos de ciclo de vida também oferecem um mecanismo para persistir o estado no desligamento. Para garantir a continuidade de aplicativos com estado, você também pode usar proteção escalável ou políticas de encerramento personalizadas para evitar que instâncias com processos de longa execução sejam encerradas mais cedo.

Para obter mais informações sobre os benefícios do Amazon EC2 Auto Scaling consulte Benefícios do Amazon EC2 Auto Scaling.

Preços do Amazon EC2 Auto Scaling

Não há taxas adicionais com o Amazon EC2 Auto Scaling, então é fácil testá-lo e ver como ele pode beneficiar sua arquitetura. AWS Você paga somente pelos AWS recursos (por exemplo, instâncias do EC2, volumes do EBS e CloudWatch alarmes) que você usa.

Conceitos básicos

Para começar, conclua o tutorial Criar seu primeiro grupo de Auto Scaling para criar um grupo de Auto Scaling e ver como ele responde quando uma instância desse grupo é encerrada.

Trabalhar com grupos do Auto Scaling

Você pode criar, acessar e gerenciar seus grupos do Auto Scaling usando qualquer uma das seguintes interfaces:

  • AWS Management Console – fornece uma interface da Web que você pode usar para acessar os grupos do Auto Scaling. Se você se inscreveu em um Conta da AWS, você pode acessar seus grupos de Auto Scaling fazendo login no AWS Management Console, usando a caixa de pesquisa na barra de navegação para pesquisar grupos de Auto Scaling e, em seguida, escolhendo grupos de Auto Scaling.

  • AWS Command Line Interface (AWS CLI) — Fornece comandos para um amplo conjunto de Serviços da AWS e é compatível com Windows, macOS e Linux. Para começar, consulte o Preparar-se para usar a AWS CLI. Para obter mais informações, consulte escalabilidade automática na Referência de comandos da AWS CLI .

  • AWS Tools for Windows PowerShell— Fornece comandos para um amplo conjunto de AWS produtos para quem cria scripts no PowerShell ambiente. Para começar a usar, consulte o Guia do usuário do AWS Tools for Windows PowerShell. Para obter mais informações, consulte Referência de Cmdlets do AWS Tools for PowerShell.

  • AWS SDKs — Fornece operações de API específicas para cada idioma e cuida de muitos detalhes da conexão, como calcular assinaturas, lidar com novas tentativas de solicitação e lidar com erros. Para obter mais informações, consulte AWS SDKs.

  • API de consulta: fornece ações de API de baixo nível que são chamadas usando solicitações HTTPS. Usar a API de consulta é a maneira mais direta de acessar a Serviços da AWS. No entanto, ela exige que a aplicação trate detalhes de baixo nível, como gerar o hash para assinar a solicitação e tratar erros. Para obter mais informações, consulte a Referência da API do Amazon EC2 Auto Scaling.

  • AWS CloudFormation— Suporta a criação de grupos de Auto Scaling usando CloudFormation modelos. Para ter mais informações, consulte Criar um grupo do Auto Scaling com AWS CloudFormation.

Para se conectar programaticamente a um AWS service (Serviço da AWS), você usa um endpoint. .