Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo descreve o recurso de dimensionamento automático no Azure Monitor e seus benefícios.
O dimensionamento automático suporta muitos tipos de recursos. Para obter mais informações sobre recursos suportados, consulte Recursos suportados por Autoscale.
Nota
Os conjuntos de disponibilidade são um recurso de dimensionamento mais antigo para máquinas virtuais com suporte limitado. Recomendamos migrar para os Conjuntos de Escala de Máquina Virtual do Azure para obter um suporte de dimensionamento automático mais rápido e confiável.
O que é autoscale
O dimensionamento automático é um serviço que você pode usar para adicionar e remover recursos automaticamente de acordo com a carga em seu aplicativo.
Quando seu aplicativo enfrenta uma carga maior, o dimensionamento automático adiciona recursos para lidar com o aumento da carga. Quando a carga é baixa, o dimensionamento automático reduz o número de recursos, o que reduz os custos. Você pode dimensionar seu aplicativo com base em métricas como uso da CPU, comprimento da fila e memória disponível. Você também pode dimensionar com base em uma agenda. Métricas e cronogramas são definidos em regras. As regras incluem um nível mínimo de recursos que você precisa para executar seu aplicativo e um nível máximo de recursos que não serão excedidos.
Por exemplo, dimensione seu aplicativo adicionando VMs quando o uso médio da CPU por VM estiver acima de 70%. Reduza-o removendo VMs quando o uso da CPU cair para 40%.
Quando as condições nas regras são atendidas, uma ou mais ações de dimensionamento automático são acionadas, adicionando ou removendo VMs. Você também pode executar outras ações, como enviar e-mails, notificações ou webhooks para acionar processos em outros sistemas.
Dimensionamento horizontal versus vertical
O autoscale ajusta automaticamente o tamanho aumentando e diminuindo, ou horizontalmente. Dimensionar horizontalmente é aumentar ou diminuir o número de instâncias de recursos. Por exemplo, para um conjunto de escalonamento de máquinas virtuais, escalonar para fora implica adicionar mais máquinas virtuais. Dimensionar significa remover máquinas virtuais. O dimensionamento horizontal é flexível em uma situação de nuvem porque você pode usá-lo para executar um grande número de VMs para lidar com a carga.
O dimensionamento automático não suporta dimensionamento vertical. Por outro lado, o dimensionamento para cima e para baixo, ou o dimensionamento vertical, mantém constante o mesmo número de instâncias de recursos, mas dá-lhes mais capacidade em termos de memória, velocidade da CPU, espaço em disco e rede. O dimensionamento vertical é limitado pela disponibilidade de hardware maior, que eventualmente atinge um limite superior. A disponibilidade do tamanho do hardware varia no Azure por região. O dimensionamento vertical também pode exigir uma reinicialização da VM durante o processo de dimensionamento.
Quando as condições nas regras são atendidas, uma ou mais ações de dimensionamento automático são acionadas, adicionando ou removendo VMs. Você também pode executar outras ações, como enviar e-mails, notificações ou webhooks para acionar processos em outros sistemas.
Dimensionamento automático preditivo
O dimensionamento automático preditivo usa aprendizado de máquina para ajudar a gerenciar e dimensionar conjuntos de dimensionamento de máquinas virtuais com padrões cíclicos de carga de trabalho. Ele prevê a carga geral da CPU no conjunto de dimensionamento da máquina virtual, com base nos padrões históricos de uso da CPU. O conjunto de escalas pode então ser expandido atempadamente para atender à demanda prevista.
Configuração de dimensionamento automático
Pode configurar a escala automática através de:
- Portal do Azure
- PowerShell
- Interface de linha de comando (CLI) entre plataformas
- API REST do Azure Monitor
Métricas de recursos
Os recursos geram métricas que são usadas em regras de dimensionamento automático para acionar eventos de escala. Os conjuntos de dimensionamento de máquinas virtuais usam dados de telemetria de agentes de diagnóstico do Azure para gerar métricas. A telemetria para o recurso Aplicativos Web do Serviço de Aplicativo do Azure e dos Serviços de Nuvem do Azure vem diretamente da infraestrutura do Azure. Algumas métricas comumente usadas incluem uso de CPU, uso de memória, contagem de threads, comprimento da fila e uso de disco. Para obter uma lista de métricas disponíveis, consulte Autoscale Common Metrics.
Métricas personalizadas
Use suas próprias métricas personalizadas que seu aplicativo gera. Configure seu aplicativo para enviar métricas para o Application Insights para que você possa usar essas métricas para decidir quando dimensionar.
Hora
Configure regras baseadas na agenda para acionar eventos de escalonamento. Use regras baseadas na agenda quando vir padrões de tempo na sua carga e quiser dimensionar antes que ocorra uma alteração prevista na carga.
Regras
As regras definem as condições necessárias para acionar um evento de escala, a direção do dimensionamento e a quantidade a ser dimensionada. Combine várias regras usando métricas diferentes, como uso da CPU e comprimento da fila. Defina até 10 regras por perfil.
As regras podem ser:
- Baseado em métrica: aciona com base em um valor métrico, por exemplo, quando o uso da CPU está acima de 50%.
- Temporizado: Gatilho com base num horário, por exemplo, todos os sábados às 8 horas.
O dimensionamento automático aumenta a escala se qualquer das regras for atendida. A escala automática só é dimensionada se todas as regras forem cumpridas. Em termos de operadores lógicos, o operador OR é usado para dimensionamento com várias regras. O operador AND é usado para dimensionamento com várias regras.
Ações e automação
As regras podem desencadear uma ou mais ações. As ações incluem:
- Dimensionar: aumentar ou reduzir recursos.
- E-mail: envie um e-mail para os administradores de assinatura, coadministradores e/ou qualquer outro endereço de e-mail.
-
Webhooks: chame webhooks para acionar várias ações complexas dentro ou fora do Azure. No Azure, você pode:
- Iniciar um runbook de Automação do Azure.
- Chame uma função do Azure.
- Acione um aplicativo lógico do Azure.
Definições do dimensionamento automático
As configurações de dimensionamento automático incluem condições de escala que definem regras, limites, agendas e notificações. Defina uma ou mais condições de escala nas configurações e uma configuração de notificação.
O dimensionamento automático usa a seguinte terminologia e estrutura.
IU | JSON/CLI | Descrição |
---|---|---|
Condições da escala | perfis | Uma coleção de regras, limites de instância e agendas com base em uma métrica ou tempo. Você pode definir uma ou mais condições de escala ou perfis. Defina até 20 perfis por configuração de escala automática. |
Regras | regras | Um conjunto de condições com base em tempo ou métricas que dispara uma ação de escala. Você pode definir uma ou mais regras para ações de redução e expansão. Defina até um total de 10 regras por perfil. |
Limites de instância | capacidade | Cada condição ou perfil de escala define o número padrão, máximo e mínimo de instâncias que podem ser executadas sob esse perfil. |
Agenda | recorrência | Indica quando a escala automática coloca esta condição ou perfil de escala em vigor. Você pode ter várias condições de escala, que permitem lidar com requisitos diferentes e sobrepostos. Por exemplo, você pode ter diferentes condições de escala para diferentes horas do dia ou dias da semana. |
Notificar | notificação | Define as notificações a serem enviadas quando ocorrer um evento de dimensionamento automático. O dimensionamento automático pode notificar um ou mais endereços de e-mail ou fazer uma chamada usando um ou mais webhooks. Você pode configurar vários webhooks no JSON, mas apenas um na interface do usuário. |
A lista completa de campos configuráveis e descrições está disponível na API REST do Autoscale.
Para exemplos de código, consulte:
- Tutorial: Escalar automaticamente um conjunto de dimensionamento de máquinas virtuais com a CLI do Azure
- Tutorial: Escalar automaticamente um conjunto de escalamento de máquinas virtuais com o PowerShell
Serviços suportados para redimensionamento automático
O autoscale suporta os seguintes serviços.
Próximos passos
Para saber mais sobre o dimensionamento automático, consulte os seguintes recursos:
- Métricas comuns de dimensionamento automático do Azure Monitor
- Use ações de dimensionamento automático para enviar notificações de alerta por e-mail e webhook
- Tutorial: Escalar automaticamente um conjunto de dimensionamento de máquinas virtuais com a CLI do Azure
- Tutorial: Escalonar automaticamente um conjunto de escalonamento de máquinas virtuais com o Azure PowerShell
- Referência de CLI para Autoscale
- Definição de recursos do modelo do ARM
- Referência do PowerShell Az.Monitor
- Referência da API REST: Configurações de dimensionamento automático