Die Speicherleistung ist ein entscheidender Faktor für die Effizienz jeder Computerumgebung, sei es ein persönlicher Arbeitsplatz, ein Unternehmensserver oder eine Cloud-Infrastruktur. Eines der leistungsstärksten Tools zur Bewertung der Speicherleistung ist fio (Flexible I/O Tester), ein weit verbreitetes Dienstprogramm, das eine detaillierte Analyse des Festplatten- und Speicherverhaltens ermöglicht.

Was ist fio?

fio ist ein Open-Source-Tool, das für flexible und umfassende Tests von Speichergeräten entwickelt wurde. Es ermöglicht Benutzern, verschiedene I/O-Workloads zu simulieren, um die Leistung ihrer Festplatten, SSDs oder sogar vernetzten Speicherlösungen zu messen. Fio wird von Systemadministratoren, Speichertechnikern und Entwicklern verwendet, um die Speicherleistung unter realen Bedingungen zu bewerten.

Hauptmerkmale von fio:

  • Unterstützt mehrere I/O-Engines (sync, libaio, mmap usw.)
  • Kann Lese-, Schreib-, zufällige und sequentielle I/O-Tests durchführen
  • Ermöglicht Tests mit mehreren Threads und Prozessen
  • Bietet detaillierte Leistungsmetriken wie Latenz, IOPS und Bandbreite
  • Unterstützt benutzerdefinierte Workload-Profile über Konfigurationsdateien

Installation von fio

Fio ist auf den meisten Linux-Distributionen verfügbar und kann mit Paketmanagern installiert werden:

# Auf Ubuntu/Debian:
sudo apt update && sudo apt install fio

# Auf RHEL/CentOS:
sudo yum install fio

# Auf Arch Linux:
sudo pacman -S fio

# Auf macOS (via Homebrew):
brew install fio

Windows-Benutzer können eine vorkompilierte Binärdatei aus dem offiziellen GitHub-Repository von fio herunterladen.

Ausführen grundlegender fio-Tests

Sequentieller Schreibtest

fio --name=seq_write --filename=testfile --rw=write --bs=1M --size=1G --numjobs=1 --time_based --runtime=30 --ioengine=libaio --direct=1

Sequentieller Lesetest

fio --name=seq_read --filename=testfile --rw=read --bs=1M --size=1G --numjobs=1 --time_based --runtime=30 --ioengine=libaio --direct=1

Zufälliger Lese-/Schreibtest

fio --name=rand_rw --filename=testfile --rw=randrw --bs=4K --size=1G --numjobs=4 --time_based --runtime=30 --ioengine=libaio --direct=1 --rwmixread=70

Analyse der iSCSI-Leistung mit fio

Einrichtung von iSCSI für Tests

sudo apt install open-iscsi  # Debian/Ubuntu
sudo yum install iscsi-initiator-utils  # RHEL/CentOS

Erkennen und Anmelden beim iSCSI-Ziel

sudo iscsiadm -m discovery -t sendtargets -p <TARGET_IP>
sudo iscsiadm -m node -T <TARGET_NAME> -p <TARGET_IP> --login

Einbinden des iSCSI-Geräts

sudo mount /dev/sdX /mnt/iscsi_test

Analyse der NFS-Leistung mit fio

Einrichtung von NFS für Tests

sudo apt install nfs-common  # Debian/Ubuntu
sudo yum install nfs-utils  # RHEL/CentOS

Einbinden der NFS-Freigabe

sudo mount -t nfs <NFS_SERVER>:/exported/path /mnt/nfs_test

Durchführung von fio-Tests auf NFS-Speicher

fio --name=nfs_seq_read --filename=/mnt/nfs_test/testfile --rw=read --bs=1M --size=5G --numjobs=1 --time_based --runtime=60 --ioengine=sync --direct=0

Fazit

Fio ist ein unverzichtbares Tool zur Bewertung und Optimierung der Speicherleistung. Ob Sie eine neue SSD testen, ein RAID-Array abstimmen oder die Leistung von Cloud-Speicher analysieren – mit fio erhalten Sie wertvolle Einblicke, um fundierte Entscheidungen zur Optimierung Ihrer Speicherinfrastruktur zu treffen.

Published On: März 6th, 2025 / Categories: Tips & Tricks / Tags: , , /