6.2. Análisis
El ajuste correcto del rendimiento de pila de almacenamiento requiere un entendimiento de cómo fluyen los datos a través del sistema, como también un conocimiento profundo del almacenamiento subyacente y de cómo funciona en cargas de trabajo. También requiere un entendimiento de la carga real que se está ajustando.
Cada vez que despliega un nuevo sistema, es una buena idea perfilar el almacenaje desde la base. Inicie con los LUN o discos crudos, y evalúe su rendimiento mediante E/S directa (E/S que evita la cache de página del kernel). Esta es la prueba más básica que usted puede realizar, y será estándar por lo que mide el rendimiento de E/S en la pila. Inicie con un generador de carga de trabajo (tal como aio-stress) que produce lecturas secuenciales y aleatorias a través de una variedad de tamaños de E/S y profundidades de cola.
La siguiente es una gráfica de la serie de ejecuciones de aio-stress, cada una de las cuales realiza cuatro etapas: escritura secuencial, lectura secuencial, escritura aleatoria, y lectura aleatoria. En este ejemplo, la herramienta está configurada para ejecutarse a través de un rango de tamaños de registros (el eje x) y profundidades de cola (una por gráfica). La profundidad de cola representa el número total de operaciones de E/S en curso en un tiempo determinado.
Figura 6.1. salida aio-stress para hilo 1, archivo 1
Observe cómo la línea de rendimiento tiende a dirigirse hacia la esquina izquierda inferior. Note también que para un determinado tamaño de registro, se puede obtener más rendimiento de almacenamiento al aumentar el número de E/S en curso.
Al ejecutar estas cargas de trabajo sencillas con su almacenamiento, entenderá cómo se realiza su almacenaje bajo carga. Retenga los datos generados por estas pruebas para comparar durante el análisis de cargas de trabajo complejas.
Si va a utilizar el mapeador de dispositivo o MD, añada esa capa a continuación y repita sus pruebas. Si hay una pérdida grande de rendimiento, asegúrese de que sea esperado o que puede explicarse. Por ejemplo, se puede esperar una caída de rendimiento si se ha añadido una capa de RAID de suma de verificación a la pila. Las caídas inesperadas de rendimiento pueden deberse a operaciones de E/S desalineadas . Red Hat Enterprise Linux alinea de forma predeterminada las particiones y metadatos de mapeador de dispositivos de forma óptima. Sin embargo, no todos los tipos de almacenaje reportan su alineación óptima y por lo tanto, pueden requerir un ajuste manual.
Después de añadir el mapeador de dispositivos o capa MD, adicione un sistema de archivos sobre el dispositivo de bloques y pruébelo con él, utilizando aún E/S directa . Compare otra vez los resultados con las pruebas anteriores y verifique si entiende bien las discrepancias. La E/S de escritura directa suele preasignar archivos, por lo tanto verifique si ha preasignado sus archivos antes de probar su rendimiento.
Entre los generadores de carga de trabajo sintética que pueden ser útiles están:
- aio-stress
- iozone
- fio