Por que estou enfrentando uma alta espera de E/S, maior comprimento da fila e aumento na latência com meu volume do Amazon EBS?

5 minuto de leitura
0

Estou enfrentando uma alta espera de E/S, maior comprimento da fila e aumento na latência com meu volume do Amazon Elastic Block Store (Amazon EBS). Por que isso está ocorrendo?

Breve descrição

Para volumes do Amazon EBS, um maior comprimento da fila e uma alta espera de E/S indicam que há uma latência na conclusão da operação de E/S.

Os motivos mais comuns para o aumento da latência são os seguintes:

  • O volume do EBS está atingindo o limite de throughput ou IOPS.
  • O limite de throughput ou IOPS da instância do Amazon Elastic Compute Cloud (Amazon EC2) foi atingido.
  • Está ocorrendo microbursting.
  • O volume é restaurado a partir de um snapshot e está sendo inicializado.
  • Há um problema com os subsistemas de armazenamento subjacentes do volume.

Resolução

O volume está atingindo seu throughput ou IOPS

Os volumes do EBS têm limites de throughput e IOPS de acordo com seu tipo e tamanho. Também é possível provisionar esses limites para os tipos de volume gp3, io1 e io2. Caso esteja atingindo seus limites, poderá haver latência. Para determinar seus limites de throughput e IOPS, consulte How can I calculate the maximum IOPS and throughput for an Amazon EBS volume? (Como posso calcular o máximo de IOPS e throughput para um volume do Amazon EBS?) Então, é possível usar as métricas do CloudWatch para verificar se os volumes do EBS da instância do EC2 estão atingindo os limites de throughput ou IOPS.

Caso esteja atingindo seu limite de throughput ou IOPs com frequência, considere alterar o tipo ou tamanho do volume para um que atenda às necessidades do seu aplicativo. É uma prática recomendada comparar seus volumes do EBS com sua workload em um ambiente de teste para determinar quais tipos de volume funcionam melhor para você.

O limite de throughput ou IOPS da instância foi atingido

As instâncias otimizadas para EBS têm um throughput e IOPS agregado máximo que pode ser alcançado em todos os volumes do EBS conectados à instância. É possível ver uma alta espera de E/S e aumento de latência, mas seu volume não está atingindo seus limites de throughput ou IOPS. Se isso estiver acontecendo, verifique se o throughput ou IOPS do volume está atingindo o limite de throughput ou IOPS da instância.

Por exemplo, há um volume gp3 de 1 TiB com 16.000 IOPS provisionadas e 700 MiB/s de throughput anexado a uma instância t3.medium. Uma instância t3.medium pode atingir uma performance máxima de 260,57 MiB/s de throughput e 11.800 IOPS agregados em todos os volumes conectados a ela. A instância consegue isso por apenas 30 minutos em um período de 24 horas. Então, o desempenho é reduzido para uma linha de base de 43,43 MiB/s de throughput e 2.000 IOPS agregados em todos os volumes conectados. Embora seu único volume possa sustentar até 700 MiB/s e 16.000 IOPS, a instância não consegue atingir essa performance.

Se as necessidades de performance do aplicativo excederem os recursos da instância, considere mudar o tipo de instância para uma que possa sustentar suas necessidades de workload. Para visualizar uma lista com os tipos de instância disponíveis com seus respectivos limites de throughput e IOPS do Amazon EBS, consulte as especificações de instâncias otimizadas para EBS.

Está ocorrendo microbursting

Microbursting acontece quando um volume explode com IOPS ou throughput alto por períodos significativamente mais curtos do que o período de coleta. O microbursting não é refletido nas métricas do Amazon CloudWatch, e é possível perdê-lo caso não esteja sendo monitorado. Para determinar se o problema é o microbursting, consulte How can I identify if my EBS volume is micro-bursting and prevent this from happening? (Como identificar se meu volume do EBS está sofrendo microbursting e evitar que isso aconteça?)

O volume é restaurado a partir de um snapshot e está sendo inicializado

Quando um volume é restaurado a partir de um snapshot, seus dados são extraídos do Amazon Simple Storage Service (Amazon S3) e gravados no volume. Esse processo é chamado de inicialização. A inicialização pode causar maior latência nas operações de E/S na primeira vez em que cada bloco de dados é acessado.

Para reduzir o impacto da inicialização na performance do volume, é possível forçar a inicialização do volume lendo os blocos do volume. Também é possível ativar a restauração rápida de snapshots do Amazon EBS para que o volume seja totalmente inicializado na criação.

Há um problema com os subsistemas de armazenamento subjacentes do volume

Caso tenha tentado todas as etapas de solução de problemas anteriores e ainda houver alta latência, entre em contato com o AWS Support.


Informações relacionadas

How can I use CloudWatch metrics to calculate the average throughput and average number of IOPS my EBS volume is providing? (Como posso usar as métricas do CloudWatch para calcular o throughput médio e o número médio de IOPS que meu volume do EBS está fornecendo?)

Addressing I/O latency when restoring Amazon EBS volumes from EBS snapshots (Tratamento da latência de E/S ao restaurar volumes do Amazon EBS a partir de snapshots do EBS)

AWS OFICIAL
AWS OFICIALAtualizada há um ano