Analizzatore I/O
In questo documento esamineremo un'utilità dei Lab di VMware che ci servirà per testare il nostro sistema di archiviazione, sotto un virtual appliance chiamato VMware IO Analyzer. Questo semplice appliance ci mostrerà dei grafici sulle prestazioni a livello di VM e di host, utilizzerà per questo Iometer & esxtop,
Scaricheremo l'appliance dal sito web di Laboratori VMware, verrà in formato OVF e lo importeremo con il client VMware nella nostra infrastruttura virtuale.
Una volta distribuito l'appliance, prima di accenderlo, potremo creare un disco rigido aggiuntivo che sarà dove faremo i test, indicheremo che il disco sia prerempito con 'Thick Provision Eager Zeroed'’ e lo posizioneremo nel datastore dove vogliamo fare i test. Cancelleremo inoltre quello da 100Mb che porta,
Accendiamo l'appliance virtuale, entriamo nella sua console e selezioniamo l'opzione di “Configura rete” per configurare i parametri di rete,
Configureremo un indirizzamento IP statico o dinamico.
Una volta avviata una sessione potremo da un altro computer collegarci con un browser.
Dovremo aggiungere gli host nei quali abbiamo gli appliance di IO Analyzer per eseguire il benchmark sulla nostra SAN, Tutto questo da “TEST IOMETER”
Successivamente selezioneremo ogni host, ogni vapp di IO Analyzer, un Workload da testare e l'indirizzo IP del vapp. Introdurremo varie VM contro datastores diversi/uguali per verificare il comportamento della(s) cabina(s). Indicheremo un minimo di 120 secondi, consigliabile tra 5 e 10 verbale.
Potremo salvare queste configurazioni per caricarle successivamente, vengono fornite varie template di esempio, in questo caso utilizzerò quella di 'Exchange_2007.icf', In aggiunta a quanto segue:
– Sostituzione 2003 – 4k block 80% Random – 60% Leggi
– Sostituzione 2007 – 8k block 80% Random – 55% Leggi
– SQL Server – 16k block 100% Random -66% Leggi
– Oracle OLTP – 8k block 88% Random – 72% Leggi
– Oracle DW – 32k block 20% Random – 90% Leggi
– Max IOPS 4k block 0% Random – 100% Leggi
– Max TP – 32k block 0 % Random – 100% Leggi
* Se non otteniamo risultati e riceviamo un errore 'InvalidEsxtopCsvFile'’ potrebbe essere che non abbiamo connessione agli host o che abbiamo qualche carattere speciale nella password di root (si risolverebbe inserendo il carattere ” prima del simbolo).
Durante il processo di stress vedremo come nelle VM di IO Analyzer si caricherà Iometer in modo automatizzato, potremo andare alla scheda “Results Display” per vedere il processo prima di aspettare i report 🙂
Una volta trascorso il tempo, andremo alla scheda “RESULTS” & sceglieremo il report. Questa immagine è di un ambiente 'laboratorio'’ molto povero, in cui abbiamo scansionato unicamente da un vapp un disco in un datastore.
Osserveremo delle statistiche a livello di guest (vista dell'appliance di Iometer) e a livello di host (esxtop). A livello di guest:
– IOPS: Número de operaciones de E/S por segundo.
– ReadIOPS: Número de operaciones de lectura por segundo.
– WriteIOPS: Número de operaciones de escritura por segundo.
– MBPS: Throughput total por segundo.
– ReadMBPS: Throughput de lectura por segundo.
– WriteMBPS: Throughput de escritura por segundo.
A nivel de host:
– CMD’s: Número de operaciones de E/S por segundo.
– READS/s: Número de operaciones de lectura por segundo.
– WRITES/s: Número de operaciones de escritura por segundo.
– MBREADS/s: Throughput de lectura por segundo.
– MBWRITES/s: Throughput de escritura por segundo.
– DAVG/cmd (msec): La latencia entre las HBA y los discos.
– KAVG/cmd (msec): Latencia creada por el vmkernel (debería ser cercana a 0.00 ms).
– GAVG/cmd (sec): Latencia total vista por el guest (DAVG + KAVG)
– QAVG/cmd (sec): La latencia media de la cola.
Datos como referencia:
– Discos de 7200 Rpm (SATA) tra 75 – 100 IOPS.
– Discos de 10K rpm (SATA) tra 125 – 150 IOPS.
– Discos de 10K rpm (SAS) busta 140 IOPS.
– Discos de 15K rpm (SAS) tra 175 – 210 IOPS.
– Discos SSD desde 6000 IOPS!!!
Esta otra imagen, con algo mayor rendimiento ya que es un entorno de ‘producción’, veremos el escaneo combinado de dos machines sobre dos datastores distintos ubicados en dos cabinas distinas, nos serviría como comparativa clara.
Se vogliamo, podremos grabar el comportamiento de una de nuestras machines con un proceso manual en el que exportaremos nuestra carga actual para luego importarlo en IO Analyzer. Para ello nos apoyaremos en el comando 'vscsiStats’ para ottenere las estadísticas de la MV, si ejecutamos 'vscsiStats -l’ nos listará todas las MVs de este host con sus worldGroupID (GID) y sus discos virtuales (handleID). Con 'vscsiStats -s -t -w GID -i handleID’ comenzaremos a recolectar la información de la carga en dicho vHD para posteriormente reproducirlo. Guardaremos en un archivo la traza con 'logchannellogger vscsiStats-traceChannel /tmp/stats.log’
Pararemos el proceso con ‘CTR + X’ cuando tengamos suficiente información, además pararemos el proceso de recolección con ‘vscsiStats -x -w GID -i handleID’.
Con ‘vscsiStats -e /tmp/stats.log > /tmp/stats.csv’ convertiremos los resultados en un fichero CSV.
Lo primero será subir las trazas desde “TRACE UPLOAD”, indicarle un nombre & descrizione, le daremos la ruta completa del fichero en formato CSV además del nombre del host que lo tiene & el password de root. “Caricare”,
Seleccionaremos como antes un host, la vapp de IOAnalyzer y la traza recién generada, indicaremos el disco donde realizará el análisis, la velocidad de ejecución (0.5x, 1.0x, 2.0x…) & Diamo “Correre”,
E questo è tutto, veremos el resultado de unos análisis previamente ejecutados en otra MV que hemos trasladado a esta para probar un nuevo almacenamiento, and so on…






















































