Quando o tráfego da sua aplicação oscila, manter um número fixo de instâncias resulta em desperdício de recursos durante períodos de baixa demanda ou em degradação de desempenho durante picos de acesso. O dimensionamento automático no Enterprise Distributed Application Service (EDAS) monitora métricas no nível da instância e adiciona ou remove instâncias automaticamente para atender à demanda, mantendo os tempos de resposta estáveis e minimizando custos com recursos ociosos. Baseado na tecnologia de gerenciamento de picos de tráfego que o Alibaba Group utiliza durante o Double 11, o EDAS oferece dimensionamento automático em questão de segundos.
Como funciona o dimensionamento automático
O dimensionamento automático aplica-se a aplicações implantadas em ECS Clusters. O EDAS avalia as métricas abaixo uma vez por minuto e aciona eventos de scale-out ou scale-in quando os limiares são ultrapassados por um período contínuo.
|
Métrica |
O que mede |
Formato do valor |
|
CPU |
Utilização de CPU da instância |
Porcentagem |
|
RT |
Tempo de resposta por solicitação |
Milissegundos |
|
Load |
Carga do sistema na instância |
Inteiro positivo |
Comportamento de dimensionamento:
Ambientes de instância única -- O dimensionamento automático garante que uma instância permaneça em execução.
Ambientes com múltiplas instâncias -- O EDAS adiciona ou remove instâncias com base nas regras de dimensionamento e nos valores de métrica configurados.
Configure regras separadas para scale-out e scale-in. Cada regra especifica quais métricas monitorar, por quanto tempo um limiar deve ser ultrapassado antes da execução da ação e quantas instâncias adicionar ou remover.
Ao configurar regras de scale-in e scale-out simultaneamente, certifique-se de que os valores de métrica das regras de scale-in não sejam maiores que os valores das regras de scale-out. Caso contrário, ocorrerá um erro ao clicar em Save.
Durante um scale-in, as instâncias criadas a partir de recursos elásticos são liberadas primeiro.
Configure regras de dimensionamento automático
Os passos a seguir detalham a configuração da regra de scale-out. Configure as regras de scale-in da mesma maneira, utilizando valores de limiar inferiores.
Faça logon no console do EDAS.
No painel de navegação à esquerda, escolha Application Management > Applications.
Na barra de navegação superior, selecione a região onde sua aplicação está localizada. Na parte superior da página Applications, selecione o namespace de microsserviços na lista suspensa Microservices Namespace e clique em no nome da aplicação.
No painel de navegação à esquerda da página de detalhes da aplicação, clique em Auto Scaling.
No canto superior direito da seção Scale-out Rule, ative a chave para habilitar a regra.
Configure os parâmetros da regra descritos nas tabelas a seguir e clique em Save no canto inferior esquerdo da página Auto Scaling.
Métricas e condições de acionamento
Defina limiares para CPU, RT e Load em Trigger Metrics e escolha quando acionar o dimensionamento.
|
Parâmetro |
Descrição |
|
Trigger Conditions |
Selecione Any One of the Metrics para acionar o dimensionamento quando qualquer métrica individual ultrapassar seu limiar, ou All Metrics para acionar apenas quando todas as métricas ultrapassarem seus limiares simultaneamente. |
|
Last for More Than |
Duração (em minutos) que o valor médio da métrica deve exceder o limiar antes do acionamento do dimensionamento. O EDAS avalia as métricas uma vez por minuto. Defina uma duração menor para serviços sensíveis à latência e maior para cargas de trabalho que toleram picos breves. |
Origem da aplicação
Selecione a origem das novas instâncias durante um scale-out.
|
Opção |
Comportamento |
|
Existing Resources |
Utiliza instâncias ECS ociosas no cluster. Se houver menos instâncias ociosas disponíveis do que o necessário, o EDAS executa o scale-out com a quantidade disponível. |
|
Elastic Resources |
Adquire novas instâncias ECS com base em especificações existentes ou em um modelo de inicialização e as adiciona ao cluster. Configure os parâmetros de recursos elásticos na tabela abaixo. |
|
Existing Resources First |
Prioriza o uso de instâncias ociosas. Se as instâncias ociosas forem insuficientes, adquire instâncias adicionais automaticamente. |
Parâmetros de recursos elásticos
Quando Elastic Resources ou Existing Resources First for selecionado como origem da aplicação, configure os seguintes parâmetros:
|
Parâmetro |
Descrição |
|
|
Creation Method |
Purchase Based on Existing Instance Specifications: Adquire instâncias correspondentes a uma especificação existente no cluster. Purchase Based on Instance Launch Template: Adquire instâncias com base em um modelo de inicialização criado no console do ECS. |
|
|
Template Host ou Launch Template |
Aparece conforme o método de criação selecionado. Selecione um conjunto de especificações de instância existente (para Template Host) ou um modelo de inicialização (para Launch Template). |
|
|
Password |
Obrigatório ao selecionar Purchase Based on Existing Instance Specifications. Selecione um par de chaves de logon para as novas instâncias. |
|
|
Terms of Service |
Selecione Elastic Compute Service Terms of Service | Terms of Service for Images**Elastic Compute Service Terms of Service |
Terms of Service for Images** para prosseguir. |
Limites de instância
|
Parâmetro |
Descrição |
|
Number of Instances to Add for Each Scale-Out |
Quantidade de instâncias adicionadas cada vez que um scale-out é acionado. |
|
Maximum Number of Instances in Group |
Limite superior do total de instâncias. Nenhum scale-out será acionado após atingir este limite. Defina este valor com base no seu orçamento de recursos. |
Verifique resultados do dimensionamento automático
Após o acionamento de um scale-out ou scale-in, confirme se a regra surtiu efeito:
Verifique a contagem de instâncias -- Abra a página de basic information da sua aplicação. Confirme se o número de instâncias em execução aumentou (scale-out) ou diminuiu (scale-in) conforme esperado.
-
Consulte o registro de alterações -- No painel de navegação à esquerda da página de detalhes da aplicação, clique em Change Records. Procure um registro com os seguintes valores:
Campo
Valor esperado
Change type
Scale Out ou Scale in Application
Source
auto_scale
Clique em View na coluna Actions para visualizar todos os detalhes da alteração.
Se a contagem de instâncias não mudar após a duração configurada, verifique se os limiares de métrica e os valores de Last for More Than correspondem à sua carga de trabalho real. Confirme também se há instâncias ociosas suficientes disponíveis para o scale-out.