Questo sito web utilizza cookie tecnici e, previo Suo consenso, cookie di profilazione, nostri e di terze parti. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsente all'uso dei cookie. Leggi la nostra Cookie Policy per esteso.OK

I tool giusti di storage benchmarking in Linux per il business

pittogramma Zerouno

TechTarget Tech InDepth

I tool giusti di storage benchmarking in Linux per il business

14 Feb 2018

di Riccardo Cervelli - Fonte TechTarget

Esistono numerosi tool in grado di testare le performance I/O sugli Os del pinguino. Ogni organizzazione dovrebbe scegliere quelli più adatti al tipo di prestazioni più richieste dalle proprie attività IT. Agli amministratori si consiglia di adottare un mix di diversi strumenti

Sono cinque i tool di I/O (input/output) benchmarking dei dispositivi di storage (hard disk drive e SSD, solid state disk) che emergono, come i maggiormente popolari fra gli amministratori, quando si tratta dell’ambiente operativo Linux.

Hdparm è un programma già incluso nella maggior parte delle distribuzioni Linux mainstream che si richiama e si gestisce dall’interfaccia terminale. Hdparm viene spesso utilizzato per ottimizzare le performance di HDD e lettori di CD/DVD all’interno di un sistema Linux in quanto consente di inviare direttamente comandi all’interfaccia ATA di questi dispositivi. Fra questi comandi, alcuni consentono di svolgere misurazioni molto semplici delle prestazioni I/O. A seconda delle opzioni inserite dopo il nome del programma nell’interfaccia a riga di comando del terminale (CLI, command-line interface) è possibile misurare le prestazioni del disco includendo, oppure escludendo (bypassandola in modo trasparente) la disk cache; ovvero quel blocco di memoria volatile che i vendor integrano nell’hardware dei dischi per velocizzare le attività di lettura e scrittura trattenendovi piccole quantità di dati che devono ancora essere scritte o che sono appena state richieste una prima volta, oppure che sono posizionate in blocchi vicini a quelle dei dati in fase di utilizzo e quindi potrebbero essere successivamente ricercate. Hdparm è molto facile da utilizzare, ma allo stesso tempo i risultati possono essere influenzati da diversi fattori. In particolare è molto sensibile al file system utilizzato e alla variazione di altri aspetti software di alto-livello: tutti elementi che possono dare luogo a risultati diversi fra una misurazione e l’altra anche in tempi ravvicinati, motivo per cui gli amministratori tendono a effettuare più misure e poi a calcolare delle medie. Un altro tool di gestione dello storage disponibile da CLI che viene utilizzato spesso dagli amministratori Linux per misurare anche l’I/O a fronte di accessi ai dati di tipo sequenziale (cioè secondo una sequenza ordinata predeterminata, al contrario degli accessi in modalità random) è il comando Linux dd, abbreviazione di data duplicator.

storage benchmarking per Linux
Uno screenshot di Hdparm – Fonte: Wikimedia Commons

Tool progettati per il benchmarking

Segnaliamo quindi tre tool dedicati allo storage benchmarking e che risultano fra i più popolari in ambiente Linux.

Quello che è forse il più versatile e utilizzato per testare le prestazioni di HDD e SSD è Flexible I/O Tester (FIO). Il tool consente agli amministratori di eseguire test sequenziali di tipo read/write (lettura/scrittura) variando le dimensioni dei blocchi di I/O (block size) e le lunghezze delle serie (code) di comandi inviati in una singola volta (queue depth).

Un’altra utility apprezzata per lo storage benchmarking in Linux è Sysbench. Si tratta di una suite general purpose, che permette di testare le performance in tre aree: processore (CPU), database (OLTP, online transaction processing, per esempio con MySql) e file I/O (fileio). Il test fileio è quello che aiuta a controllare la performance I/O di un disco attraverso test sequenziali/random read/write effettuati simulando variazioni di I/O block size, synchronous e asynchronous I/O e altri comportamenti del disco. Dato che il test fileio di Sysbench è più semplificato rispetto a quello con FIO, alcuni amministratori suggeriscono di utilizzare entrambe le utility.

Ecco quindi il tool command-line IOzone, che supporta un’ampia varietà di test write, read, backwards read (lettura all’indietro, per esempio dalla fine all’inizio di un file), e incluse funzioni/chiamate di sistema (meccanismi utilizzati a livello applicativo, ovvero scritti nel codice, per richiedere servizi specifici a livello di kernel dal sistema operativo in uso sul computer) come fwrite, fread, pread, pwritev e preadv. Gli amministratori possono specificare le dimensioni dei file e dei blocchi prima di testare.

Tool diversi per esigenze differenti

La lista dei tool utilizzabili per eseguire test di storage benchmarking in ambiente Linux di cui sopra non è assolutamente esaustiva, ma include gli strumenti più diffusi nelle “cassette degli attrezzi” degli amministratori storage e database. Per completezza, va ricordato che oltre a quelli preintegrati nelle distribuzioni di Linux (o scaricabili dai principali repository di software open source), e utilizzabili da riga di comando, possono essere presi in considerazione anche quelli inclusi nelle soluzioni di IT systems management specifiche per un determinato ambiente operativo o per ambienti eterogenei.

Ad ogni modo non va mai dimenticato che nessun tool è nato uguale all’altro. Alcuni tool si concentrano sulle performance I/O relative a determinati attributi, di disk I/O quali la lettura, la scrittura, l’accesso random, l’accesso sequenziale, la latenza, il throughput (concetto diverso dalla larghezza di banda, o capacità trasmissiva, perché indica l’effettivo utilizzo di questa capacità dei link), le dimensioni di blocchi I/O e vari mix di questi aspetti. Altri strumenti, invece, sembrano fare un passo indietro rispetto all’hardware del disco, e focalizzarsi di più sul file system del disco oppure su come elevati traffici storage interagiscono con la RAM di sistema (caching). In definitiva, prima di scegliere e poi imbarcarsi in lunghe sessioni di testing di storage performance (al fine, per esempio, di scegliere nuovi disk drive o disk array da acquistare) è consigliabile stabilire delle priorità di prove in funzione delle applicazioni e degli utenti che lo storage dovrà supportare. Per chi gestisce server utilizzati per il video streaming, possono essere più rilevanti i test sulle performance di lettura sequenziale, mentre, a fronte di ambienti general purpose, assumono più importanza le prove di letture e scritture random.

Gli esperti, infine, consigliano di utilizzare contemporaneamente strumenti differenti per ogni singolo test. Più i risultati ottenuti con diversi tool sono coerenti e più i benchmark sono affidabili e ci permettono di effettuare investimenti in storage con maggiore tranquillità.

Riccardo Cervelli - Fonte TechTarget

57 anni, giornalista freelance divulgatore tecnico-scientifico, nell’ambito dell’Ict tratta soprattutto di temi legati alle infrastrutture (server, storage, networking), ai sistemi operativi commerciali e open source, alla cybersecurity e alla Unified Communications and Collaboration e all’Internet of Things

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

LinkedIn

Twitter

Whatsapp

Facebook

Link

Articolo 1 di 4