Ir para o conteúdo

Como posso saber se minha instância do Amazon EC2 atinge suas cotas do Amazon EBS?

6 minuto de leitura
0

Quero saber se minha instância do Amazon Elastic Compute Cloud (Amazon EC2) excede suas cotas do Amazon Elastic Block Store (Amazon EBS).

Breve descrição

Se sua instância do EC2 exceder suas cotas do Amazon EBS, você poderá encontrar problemas com o desempenho do volume do EBS.

Os seguintes fatores afetam o desempenho do volume do EBS:

  • Cotas de desempenho do Amazon EBS em nível de instância e volume
  • Operações de entrada e saída por segundo (IOPS) (IOPS) e cotas de throughput
  • Microexpansão com breves momentos de cotas excedidas que o monitoramento padrão não detecta

Resolução

Certifique-se de obedecer às cotas de desempenho

Observação: Para evitar problemas de desempenho, certifique-se de que os drivers de dispositivo de sua instância estejam atualizados.

O desempenho de uma instância no Amazon EBS deve obedecer a duas cotas separadas que funcionam juntas. As cotas em nível de instância definem o throughput agregado máximo e a IOPS em todos os volumes anexados. As cotas em nível de volume definem as IOPS provisionadas e o throughput para cada volume. Sua configuração obedece à cota que for menor. Para obter mais informações, consulte Tipos de instâncias otimizadas para Amazon EBS.

Para alcançar o desempenho máximo do Amazon EBS, os volumes anexados à instância devem oferecer desempenho combinado igual ou superior ao desempenho máximo da instância.

Analise a largura de banda de seu tipo de instância para entender suas cotas de IOPS e throughput. A IOPS geralmente afeta workloads com muitos arquivos pequenos. O throughput geralmente afeta workloads com grandes operações sequenciais de leitura/gravação. Para calcular o throughput, multiplique a IOPS pelo tamanho do bloco.

Monitore o desempenho do Amazon EBS com o CloudWatch

Use o Amazon CloudWatch para monitorar o desempenho em nível de instância e volume.

**Monitore métricas agregadas em nível de instância **

Observação: as seguintes métricas em nível de instância estão disponíveis somente para instâncias criadas no AWS Nitro System. As métricas a seguir não podem ser usadas para instâncias bare metal.

Verifique as seguintes métricas do CloudWatch no namespace EC2 na dimensão Métricas por instância:

  • Verifique EBSReadBytes e EBSWriteBytes para monitorar o uso agregado do throughput.
  • Verifique EBSReadOps e EBSWriteOps para monitorar o uso agregado de IOPS.
  • Verifique o EBSIOBalance% para monitorar o equilíbrio de expansão de IOPS no nível da instância.
  • Verifique EBSByteBalance% para monitorar o equilíbrio de expansão do throughput em nível de instância.
  • Marque InstanceEBSIOPSExceededCheck para identificar se a instância excedeu sua cota máxima de IOPS agregada.
  • Marque InstanceEBSThroughputExceededCheck para identificar se a instância excedeu sua cota máxima de throughput agregado.

Monitore o desempenho individual do volume

Verifique as seguintes métricas do CloudWatch no namespace do EBS na dimensão Métricas por volume:

  • Verifique VolumeReadOps e VolumeWriteOps para rastrear o número de operações de leitura e gravação.
  • Marque VolumeReadBytes e VolumeWriteBytes para rastrear a quantidade de dados que o volume lê e grava.
  • Verifique VolumeQueueLength para ver o número de solicitações de E/S pendentes.
    Observação: essa métrica mostra se o volume está ocupado com E/S pendentes. Se esse valor for alto, a IOPS está na cota de desempenho ou próximo a ela.
  • Verifique VolumeThroughputExceededCheck para identificar se seu volume excedeu a cota de throughput.
  • Verifique VolumeIOPSExceededCheck para identificar se seu volume excedeu a cota de IOPS.

Execute diagnósticos detalhados

Para cálculos métricos detalhados de IOPS e do throughput da instância do EC2 e de cada volume anexado, use o runbook AWSSupport-CalculateEBSPerformanceMetrics.

Configure notificações automatizadas para quando os volumes excederem as cotas de desempenho

Crie um alarme do CloudWatch para alertá-lo quando VolumeThroughputExceededCheck ou VolumeIOPSExceededCheck for maior que 0. Além disso, crie um alarme para notificá-lo quando EBSIOBalance% ou EBSByteBalance% for menor que 20%. Para obter mais informações sobre as métricas, consulte Métricas para instâncias Nitro.

Identifique e solucione gargalos de desempenho

Resolva gargalos no nível da instância

Para identificar se seu problema está no nível da instância, verifique os seguintes problemas:

  • InstanceEBSIOPSExceededCheck ou InstanceEBSThroughputExceededCheck mostram valores diferentes de zero.
  • Os valores combinados para EBSReadBytes e EBSWriteBytes estão próximos ou no máximo das cotas de largura de banda da instância.
  • O valor de EBSIOBalance% ou EBSByteBalance% é baixo.
    Observação: Em geral, esse problema ocorre quando o saldo de crédito máximo está esgotado.
  • O valor de VolumeQueueLength é baixo em volumes que ainda apresentam problemas de desempenho.

Para resolver problemas no nível da instância, mude para um tipo de instância maior com maior throughput e IOPS do Amazon EBS. Use tipos de instância otimizados para EBS para fornecer largura de banda dedicada à E/S para o Amazon EBS.

Resolva gargalos em nível de volume

Para identificar se o problema está no nível do volume, verifique se VolumeQueueLength está consistentemente acima de 1. Além disso, verifique se VolumeThroughputExceededCheck ou VolumeIOPSExceededCheck frequentemente mostram valores diferentes de zero.

Para resolver problemas no nível do volume, modifique o volume do EBS e aumente os valores de IOPS e Throughput.

Importante: Para evitar atrasos desnecessários devido aos requisitos de modificação de volume do EBS, faça todas as alterações necessárias em uma única solicitação de modificação. Essa solicitação pode incluir alterações no IOPS, no throughput, no tamanho e no tipo de volume.

Se você tem uma workload com arquivos pequenos que usa alto IOPS, é uma prática recomendada aumentar a IOPS do seu volume. Ou compacte os arquivos antes de copiá-los.

Para instâncias do Windows, execute o seguinte comando para melhorar o desempenho das cópias de arquivos:

robocopy source-folder destination-folder /MT:n

Observação: Substitua a pasta de origem pelo nome da pasta de origem, a pasta de destino pelo nome da pasta de destino e n pelo número de segmentos. Para mais informações, consulte robocopy no site da Microsoft.

Detecte microexpansões

A microexpansão ocorre quando seu volume do EBS excede suas cotas de IOPS ou de throughput configuradas por um curto período.

Os problemas a seguir podem mostrar que sua instância sofre microexpansão:

  • Aplicativo com alta latência
  • Métricas do CloudWatch que mostram que o desempenho está dentro de suas cotas
  • Problemas de desempenho que ocorrem de forma intermitente

Para solucionar este problema, consulte Como faço para identificar se meu volume do EBS está sofrendo microexpansão e, em seguida, garantir que isso não afete o desempenho?

Informações relacionadas

Como soluciono problemas de desempenho de volume do EBS na minha instância do EC2?

Tipos de volume do Amazon EBS

Compare os volumes do Amazon EBS