¿Cómo garantizar que las solicitudes de E/S hayan vuelto a su velocidad normal?

¿Cómo garantizar que las solicitudes de E/S hayan vuelto a su velocidad normal?

EnServicios web de Amazonestoy usando unt2.small EC2Por ejemplo, como un VPS que sirve algunos sitios web en una pila LAMP (PHP). Me acaban de cobrar una factura que casi triplica mi factura habitual. veo que miEl uso de solicitudes de E/S fue extraordinariamente alto. Inicié sesión en el servidor y noté que el disco estaba lleno. Eliminé un montón de archivos y registros no críticos y el disco (EBS) ahora tiene <60% de su capacidad, pero me gustaría verificar dos cosas.

  1. ¿Cómo puedo saber si la gran cantidad de solicitudes de E/S se debió a que el disco se llenó?
  2. ¿Cómo puedo saber si todavía estoy procesando solicitudes de E/S?

No tenía el específico de AWSVigilancia de la nubeEl servicio de monitoreo está habilitado, por lo que probablemente no obtendré una respuesta al número 1, pero agradecería cualquier consejo.

° 2, utilicé los dos métodos mencionados enesta publicación de blogpara determinar mi tasa de E/S, y parece que es muy, muy alta. Aquí hay algunas estadísticas del servidor:

$ iostat
Linux 3.13.0-45-generic (dysphoria)     2015-10-08      _x86_64_        (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.74    0.01    0.69   16.83    0.43   79.30

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
xvda            170.08     10039.29        32.52  843300857    2731428
xvdf              0.01         0.02         0.00       1308          0

$ cat /proc/diskstats
   1       0 ram0 0 0 0 0 0 0 0 0 0 0 0
   1       1 ram1 0 0 0 0 0 0 0 0 0 0 0
   1       2 ram2 0 0 0 0 0 0 0 0 0 0 0
   1       3 ram3 0 0 0 0 0 0 0 0 0 0 0
   1       4 ram4 0 0 0 0 0 0 0 0 0 0 0
   1       5 ram5 0 0 0 0 0 0 0 0 0 0 0
   1       6 ram6 0 0 0 0 0 0 0 0 0 0 0
   1       7 ram7 0 0 0 0 0 0 0 0 0 0 0
   1       8 ram8 0 0 0 0 0 0 0 0 0 0 0
   1       9 ram9 0 0 0 0 0 0 0 0 0 0 0
   1      10 ram10 0 0 0 0 0 0 0 0 0 0 0
   1      11 ram11 0 0 0 0 0 0 0 0 0 0 0
   1      12 ram12 0 0 0 0 0 0 0 0 0 0 0
   1      13 ram13 0 0 0 0 0 0 0 0 0 0 0
   1      14 ram14 0 0 0 0 0 0 0 0 0 0 0
   1      15 ram15 0 0 0 0 0 0 0 0 0 0 0
   7       0 loop0 0 0 0 0 0 0 0 0 0 0 0
   7       1 loop1 0 0 0 0 0 0 0 0 0 0 0
   7       2 loop2 0 0 0 0 0 0 0 0 0 0 0
   7       3 loop3 0 0 0 0 0 0 0 0 0 0 0
   7       4 loop4 0 0 0 0 0 0 0 0 0 0 0
   7       5 loop5 0 0 0 0 0 0 0 0 0 0 0
   7       6 loop6 0 0 0 0 0 0 0 0 0 0 0
   7       7 loop7 0 0 0 0 0 0 0 0 0 0 0
 202       0 xvda 14198708 1225 1686588426 26715600 87579 51756 5461696 11290600 0 16654328 38003076
 202       1 xvda1 14198527 1203 1686586802 26715376 87579 51756 5461696 11290600 0 16654236 38002848
 202      80 xvdf 447 6 2616 288 0 0 0 0 0 288 288

$ free -m
             total       used       free     shared    buffers     cached
Mem:          2000       1910         89          6          6       1216
-/+ buffers/cache:        688       1312
Swap:            0          0          0

Aunque la información anterior se tomó poco después del inicio, el iostatinforme muestra un TPS inicial en el rango de 50 a 80 incluso después de que el sistema haya estado funcionando durante varias horas. El servidor presta servicio a unos 20 sitios, de los cuales sólo tres reciben más de unas pocas visitas al día. Estos son del orden de unos pocos cientos de visitantes por día.El servidor y los sitios han permanecido en esta configuración durante años sin problemas.Sólo recientemente la E/S ha comenzado a aumentar, sin el correspondiente cambio en el código, la configuración del servidor o la carga del sitio web.

Tenga en cuenta que esta pregunta se formuló originalmente elel foro oficial de servicios web de Amazonsin embargo, nadie parecía haber podido ayudar allí. Quizás la pregunta sea demasiado general para ese foro.

Respuesta1

Hay información importante en la página de manual de iostat que, si no se comprende, puede provocar una mala interpretación de los datos presentados.

El primer informe generado por el comando iostat proporciona estadísticas sobre el tiempo transcurrido desde que se inició el sistema. Cada informe posterior cubre el tiempo transcurrido desde el informe anterior. Todas las estadísticas se informan cada vez que se ejecuta el comando iostat.

Entonces, su iostat simple anterior informa los valores recopilados desde que se inició el sistema.

Es más normal ejecutar iostst con un intervalo y descartar el primer conjunto de estadísticas, por ejemplo.

iostat 5

esto informará las estadísticas relevantes cada 5 segundos.

Una vez que recopile los datos correctos podrá comprender mejor la situación.


Échale un vistazo alencimadominio. En particular, ejecutarlo con privilegios y seleccionar dhabilitará las estadísticas de io del disco por subproceso.

información relacionada