Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi

W ostatni raz Mówiliśmy o narzędziach z otwartym kodem źródłowym do oceny wydajności procesorów i pamięci. Dziś omawiamy benchmarki dla systemów plików i systemów przechowywania danych na Linuxie — Interbench, Fio, Hdparm, S oraz Bonnie.

Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi
Zdjęcie — Daniele Levis Pelusi Czym tak naprawdę jest problem

Fio

Fio (skrót od Flexible I/O Tester) generuje strumienie wejścia/wyjścia z dysku, aby ocenić wydajność systemu plików Linux. Narzędzie można uruchomić również na Windows — należy zainstalować interfejs wiersza poleceń. Cygwin.Instrukcja konfiguracji znajduje się w repozytorium fio na GitHubie..

Autorem fio jest Jens Axboe (Jens Axboe), odpowiedzialny za podsystem IO w Linuxie i twórca narzędzia blktrace do śledzenia operacji wejścia/wyjścia. Stworzył fio, ponieważ miał dość ręcznego pisania programów do testowania specyficznych obciążeń.

Narzędzie obliczy IOPS i przepustowość systemu, a także pozwoli ocenić głębokość kolejki operacji wejścia/wyjścia. Użytkownik pracuje z specjalnymi plikami (rozszerzenie .fio), w których definiuje ustawienia i warunki testu. Opcji testów jest kilka, na przykład istnieją losowe zapisy, odczyty i nadpisania. Oto przykład zawartość pliku dla pierwszego przypadku:

[global]
	name=fio-rand-read
	filename=fio-rand-read
	rw=randread
	bs=4K
	direct=0
	numjobs=1
	time_based=1
	runtime=900

Dziś fio jest używane przez duże firmy — narzędzie działa w SUSE, Nutanix. i IBM.

Hdparm

Narzędzie stworzył kanadyjski programista Mark Lord w 2005 roku. Do dziś jest wspierane przez autora i jest częścią wielu popularnych dystrybucji. Główne zastosowanie hdparm — konfiguracja parametrów urządzeń magazynujących. Ale narzędzie można można używać do przeprowadzania prostych benchmarków, na przykład mierzenia prędkości odczytu. W tym celu należy wpisać w konsoli polecenie:

$ sudo hdparm -t /dev/sdb

System wygeneruje podobną odpowiedź:

Czas odczytu z buforowanej pamięci dysku: 242 MB w 3.01 sekundy = 80.30 MB/s.

Jeśli chodzi o konfigurację urządzeń, hdparm pozwala zmieniać objętość pamięci podręcznej, modyfikować parametry trybu uśpienia i zasilania oraz bezpiecznie usuwać dane na SSD. Jednak, jak ostrzegają zauważają specjaliści z ArchLinux, nieostrożna zmiana parametrów systemowych może sprawić, że dane na dysku będą niedostępne, a nawet uszkodzić urządzenie. Przed pracą z hdparm lepiej zapoznać się z podręcznikiem — wystarczy wpisać w konsoli polecenie man hdparm.

S

To jest zestaw benchmarków do oceny wydajności systemów wejścia/wyjścia. Autorami narzędzia jest zespół programistów z grupy AlgoDev, do której należą pracownicy włoskiego Uniwersytetu Modeny i Reggio-Emilia..

Wszystkie benchmarki to skrypty bashowe, oceniające wydajność systemu przechowywania danych — przepustowość, opóźnienia, działanie planistów. Na przykład, benchmark throughput-sync.sh „nawala” na macierz dyskową zapytania do odczytu lub zapisu (w tym przypadku używa się już wspomnianego narzędzia fio). Oto kod tego skryptu..

Inny skrypt — comm_startup_lat.sh — mierzy opóźnienie odczytu danych z dysku przy „zimnym buforze” (gdy nie ma w nim wymaganych danych). Kod również można znaleźć w repozytorium..

Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi
Zdjęcie — Agê Barros Czym tak naprawdę jest problem

Bonnie

Narzędzie do oceny wydajności systemu plików, opracowane w 1989 roku. Jego autorem był inżynier Tim Bray. Dzięki Bonnie planował optymalizować pracę systemów obliczeniowych zaangażowanych w projekt New Oxford English Dictionary na Uniwersytecie Waterloo.

Bonnie wykonuje losowe odczyty i zapisy danych na dysk. Następnie narzędzie pokazuje takie parametry jak liczba przetworzonych bajtów na sekundę CPU,a także poziom obciążenia procesora w procentach. Źródłowy kod benchmarku można znaleźć w Google Code..

Na podstawie Bonnie powstał inny zestaw narzędzi do testowania dysku twardego — Bonnie++ (napisany w C++, zamiast w C). Zawiera dodatkowe narzędzia benchmarkowe. Na przykład, zcav do oceny wydajności różnych stref HDD. Również Bonnie++ jest odpowiedni do testowania serwerów pocztowych i baz danych.

Interbench

Narzędzie opracował Con Kolivas, australijski anestezjolog, który jest znany ze swojego wkładu w rozwój jądra Linux oraz pracy nad „sprawiedliwym planistą procesora.Interbench pomaga dostosować parametry planisty wejścia/wyjścia i systemu plików.

Interbench emuluje zachowanie planisty CPU przy wykonywaniu zadań interaktywnych. Takimi zadaniami interaktywnymi mogą być prace ze dźwiękiem i wideo, uruchamianie gier komputerowych lub proste przeciąganie okna dialogowego w systemie operacyjnym.

Źródłowy kod, przykłady i zalecenia dotyczące konfiguracji narzędzia można znaleźć w oficjalnym repozytorium na GitHubie..

O czym piszemy w naszych blogach:

Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi Benchmarki dla serwerów Linux: 5 otwartych narzędzi

Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi Kopia zapasowa plików: jak zabezpieczyć się przed utratą danych
Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi Jak przenieść systemowy dysk twardy do maszyny wirtualnej?
Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi Treningowy warsztat dla administratorów: jak chmurą może pomóc

Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi Kontrola gadżetów na granicy: jak działać, aby nie stracić danych poufnych?
Jak ocenić wydajność macierzy dyskowych na Linuksie: benchmarking przy użyciu otwartych narzędzi Snapshooty: po co „zdjęcia”?

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster