Como faço para evitar que minhas chamadas de API do Auto Scaling recebam controle de utilização?

4 minuto de leitura
0

Meu aplicativo recebe erros de "Taxa excedida" ao chamar o Amazon EC2 Auto Scaling, o AWS Auto Scaling ou o AWS Application Auto Scaling.

Breve descrição

As chamadas de API não podem exceder a taxa máxima de solicitações de API permitida por conta e região da AWS. Isso inclui chamadas de API da AWS Command Line Interface (AWS CLI) e do Console de Gerenciamento da AWS. Se as solicitações de API excederem a taxa máxima, você receberá um erro de “Taxa excedida” e outras chamadas de API receberão controle de utilização.

O Amazon EC2 Auto Scaling, o AWS Auto Scaling e o AWS Application Auto Scaling tem seus próprios buckets de controle de utilização de API. Isso significa que todas as chamadas de API do Amazon EC2 Auto Scaling têm um limite de API único e compartilhado. As chamadas de API do Amazon EC2 Auto Scaling não afetam o limite das APIs do AWS Application Auto Scaling.

Para evitar o erro "Taxa excedida" e o controle de utilização, certifique-se de que sua aplicação esteja fazendo somente as chamadas necessárias.

Observação: se você receber erros ao executar comandos da AWS CLI, consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Resolução

Verificar o uso atual da API do Auto Scaling

Para verificar o uso atual da API do Auto Scaling, monitore as estatísticas de uso da AWS nas suas métricas do Amazon CloudWatch para o serviço EC2 Auto Scaling. Use as métricas para monitorar as APIs chamadas do Auto Scaling e identificar horários com um grande número de chamadas de API ou erros de "Taxa excedida". Em seguida, use essas informações para otimizar e reduzir o uso de APIs.

Valide as chamadas "describe"

Chamadas "describe" excessivas contribuem para o total de solicitações de API medido em relação à taxa de solicitações permitida. Verifique se as chamadas "describe" da sua aplicação são todas necessárias e use outras soluções, se possível. Por exemplo, use notificações por push do Amazon EventBridge para enviar notificações quando instâncias mudarem de estado, por exemplo, quando elas iniciam um gancho de ciclo de vida.

As aplicações que verificam o estado do ciclo de vida da instância não fazem uma chamada "describe". Em vez disso, essas aplicações consultam metadados da instância. Recupere informações de etiquetas, incluindo o nome do grupo do Auto Scaling, dos metadados da instância. Você deve usar o modelo de execução para ativar informações sobre etiquetas para a instância.

Verificar chamadas de aplicações de terceiros

Aplicações de terceiros podem fazer chamadas contínuas para o Auto Scaling na AWS. Analise as aplicações de terceiros em busca de chamadas desnecessárias e atualize as configurações dessas aplicações.

Implemente novas tentativas de erro e recuos exponenciais

Tentativas de erro e recuos exponenciais podem ajudar a limitar a taxa de chamadas de API. Cada SDK da AWS implementa lógica de repetição automática e algoritmos de recuo exponencial. Para obter mais informações, consulte Retry behavior.

Evitar expansões de atividade

Evite situações que causem expansões de chamadas de API. Por exemplo, ao iniciar instâncias em um grupo do Amazon EC2 Auto Scaling, não as configure para ativar a proteção contra redução de escala horizontalmente. Ative a opção por padrão para o grupo do Auto Scaling, de forma que todas as instâncias tenham proteção.

Solicitar um aumento da cota de serviço

Para aumentar a cota de serviço, solicite um aumento no console do Support Center. Na seção Aumento do limite de serviço, conclua as seguintes etapas:

  1. Em Tipo de limite, escolha Auto Scaling.
  2. Em Serviço do Auto Scaling, escolha EC2 Auto Scaling.
  3. Em Limite, escolha Controle de utilização de API.
  4. Em Novo valor de limite, escolha N/A.

Inclua as seguintes informações na solicitação:

  • Validação da taxa de chamadas de API e implementação de métodos de retirada de erro ou recuo exponencial
  • Região e cronograma relacionados aos problemas de controle de utilização
  • Fluxo de trabalho completo das APIs do AutoScaling
  • Quando você espera que seu pico de uso de APIs aconteça, por exemplo, durante uma implantação

Para obter mais informações, consulte Como gerenciar minhas cotas de serviços da AWS?

Informações relacionadas

Exponential backoff and jitter

AWS service quotas

AWS OFICIAL
AWS OFICIALAtualizada há um ano