Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking

Noi di 1cloud.ru abbiamo preparato una selezione di strumenti e script per valutare le prestazioni di CPU, storage e memoria su macchine Linux: Iometer, DD, vpsbench, HammerDB e 7-Zip.

Altre nostre selezioni di benchmark:

Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking
Foto — Bureau of Land Management Alaska — CC BY

Iometer

Questo è un benchmark per valutare le prestazioni dei sistemi di archiviazione e di rete. È adatto per funzionare sia con un singolo server che con un intero cluster. Iometer è stato presentato dagli ingegneri Intel nel 1998. Nel 2001, la corporation ha trasferito il codice sorgente all'organizzazione non profit Open Source Development Labs (OSDL) con licenza Intel Open Source License. Dal 2003, il supporto per lo strumento è gestito da un gruppo di appassionati: il progetto è registrato su SourceForge.net.

Iometer è composto da un generatore di carico dynamo e da un'interfaccia grafica. Tuttavia, quest'ultima è disponibile solo per Windows. Per quanto riguarda il generatore, consente di simulare un carico di applicazioni esterne: per questo vengono creati modelli di test specifici.

I benchmark mostrano: la larghezza di banda, le operazioni al secondo, la latenza e il carico della CPU. Vengono calcolati non solo i valori medi, ma anche i valori min/max.

Nonostante l'ultima versione stabile dello strumento sia stata rilasciata nel 2014, è ancora utilizzata in Broadcom e Dell. Tuttavia, l'età del sistema si fa sentire. Innanzitutto, la sua interfaccia è obsoleta e non è stata aggiornata dal 1998. In secondo luogo, lo strumento talvolta fornisce risultati non del tutto coerenti su array all-flash.

vpsbench

Un semplice script per valutare le prestazioni VPS. È distribuito con licenza MIT. Ecco un esempio del suo funzionamento, fornito nel repository ufficiale su GitHub:

$ bash <(wget --no-check-certificate -O - https://raw.github.com/mgutz/vpsbench/master/vpsbench)

CPU model:  Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
Number of cores: 4
CPU frequency:  3417.879 MHz
Total amount of RAM: 3265 MB
Total amount of swap: 1021 MB
System uptime:   8:41,
I/O speed:  427 MB/s
Bzip 25MB: 4.66s
Download 100MB file: 1.64MB/s

L'utilità mostra il numero di core, la frequenza della CPU e le dimensioni della memoria utilizzata. Per valutare le prestazioni dei dischi, vpsbench esegue lettura/scrittura sequenziale e casuale. Nonostante l'utilità sia piuttosto datata (l'ultimo aggiornamento su GitHub risale a circa quattro anni fa), è utilizzata da utilizza molti provider cloud e aziende IT.

HammerDB

Uno dei benchmark più popolari open source per testare il carico delle basi di dati. Il supporto per lo strumento è gestito da un'organizzazione non profit TPC — Transaction Processing Performance Council. Il suo obiettivo è sviluppare standard per i benchmark dei database.

HammerDB crea uno schema di test del database, lo riempie di dati e simula il carico di più utenti virtuali. I carichi possono includere operazioni sia transazionali che analitiche. Supporta: Oracle Database, SQL Server, IBM Db2, MySQL, MariaDB, PostgreSQL e Redis.

Attorno a HammerDB si è formata una vasta comunità. L'utilità è utilizzata da aziende in 180 paesi del mondo. Tra queste: Intel, Dell, Lenovo, Red Hat e molte altri. Se desideri esplorare le funzionalità dell'utilità da solo, puoi iniziare con guide ufficiali.

Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking
Foto — lost places — CC BY

7-Zip

Questo compressore ha un benchmark integrato per testare la velocità dei processori durante la compressione di un numero specifico di file. È inoltre adatto per controllare la RAM per eventuali errori. Per i test viene utilizzato l'algoritmo LZMA (Lempel–Ziv–Markov chain Algorithm). Si basa su uno schema di compressione dei dati basato su dizionario.Ad esempio, per eseguire un benchmark con un singolo thread e un dizionario di 64 megabyte, basta usare il comando:

7z b -mmt1 -md26

Il risultato verrà fornito dal programma in formato MIPS (milioni di istruzioni al secondo), il che può essere considerato un difetto. Questo parametro è adatto per confrontare le prestazioni di processori della stessa architettura, ma nel caso di architetture diverse la sua applicabilità è limitata.

DD

Uno strumento da riga di comando che converte e copia file. Tuttavia, può essere utilizzato per condurre semplici test I/O su storage. Si avvia praticamente su qualsiasi sistema GNU/Linux.

Sulla pagina wiki è riportato il comando per valutare le prestazioni del disco durante la scrittura sequenziale di blocchi da 1024 byte:

dd if=/dev/zero bs=1024 count=1000000 of=file_1GB
dd if=file_1GB of=/dev/null bs=1024

Va inoltre notato che DD può essere utilizzato come semplice benchmark CPU. Tuttavia, per questo sarà necessario un programma aggiuntivo che richiede calcoli intensivi. Ad esempio, un'utilità per calcolare i valori delle somme di controllo md5sum.

dd if=/dev/zero bs=1M count=1024 | md5sum

Il comando sopra mostrerà quanto velocemente (MB/s) il sistema elaborerà una lunga sequenza numerica. Anche se gli esperti affermano che questo comando è adatto solo per una stima grossolana delle prestazioni. È anche importante ricordare che DD permette di eseguire operazioni a basso livello sui dischi rigidi. Pertanto, è necessario utilizzare l'utilità con cautela per non perdere parte dei dati (il nome DD viene talvolta scherzosamente interpretato come 'disk destroyer').

Di cosa parliamo nei nostri blog e nei social media:

Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking Ricerca: Linux è ancora il sistema operativo più popolare nel cloud
Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking In Open Invention Network ci sono più di tremila licenziatari: cosa significa questo per il software open source?

Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking Come proteggere un sistema Linux: 10 consigli
Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking Minimizzazione dei rischi: come non perdere i tuoi dati

Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking Libri per chi già si occupa di amministrazione di sistemi o sta solo progettando di iniziare
Come valutare le prestazioni di un server Linux: strumenti open source per il benchmarking Zone di dominio insolite per il tuo progetto

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster