Abgestimmte Profile für die Optimierung der Linux-Server-Arbeitslast

16 Min. Lesezeit - 9. Juni 2026

hero section cover
Inhaltsverzeichnis
  • Optimierte Profile zur Optimierung der Serverauslastung
  • So funktionieren abgestimmte Profile
  • Auswahl des richtigen Profils für Ihre Arbeitslast
  • Installieren und Anwenden von Profilen
  • Erstellen eines benutzerdefinierten Profils für KI-, ML- und Workloads mit hoher Bandbreite
  • Verwaltung von Profilen über eine Serverflotte hinweg
  • Fazit
Teilen

Wie man abgestimmte Profile für GPU-, Datenbank- und Linux-Server mit hoher Bandbreite auswählt, anwendet und anpasst, mit Beispielen und Tipps für den Einsatz von Ansible.

Optimierte Profile zur Optimierung der Serverauslastung

Die Standard-Einstellungen von Linux sind auf Kompatibilität und nicht auf Leistung ausgelegt. Der tuned-Daemon enthält vordefinierte Profile, die CPU-Governors, I/O-Scheduler, Kernel-Parameter und Netzwerkpuffer an eine bestimmte Auslastung anpassen. Dieser Beitrag behandelt, wie die Profile funktionieren, welches Profil für gängige Serverrollen zu wählen ist und wie man benutzerdefinierte Profile erstellt und in einer Serverflotte bereitstellt.


 

So funktionieren abgestimmte Profile

Ein Profil ist ein Verzeichnis unter /usr/lib/tuned/profiles/ (system) oder /etc/tuned/profiles/ (custom), das eine tuned.conf Datei enthält. Die Konfigurationsdatei gruppiert die Parameter nach Plugins: [cpu], [disk], [sysctl], [vm], [bootloader], und so weiter. Aktivieren Sie ein Profil, und der tuned-Daemon wendet jeden Parameter auf einmal an, anstatt Dutzende von sysctl und sysfs Befehle manuell auszuführen.

Profile können mithilfe der include . Das throughput-performance Profil kann beispielsweise als Grundlage für ein benutzerdefiniertes Datenbankprofil dienen, das nur vm.swappiness die Einstellung für Transparent Huge Pages überschreibt.

tuned läuft in zwei Modi. Die statische Optimierung wendet das Profil einmalig bei der Aktivierung an und greift danach nicht mehr in das System ein – genau das, was Sie auf Produktionsservern benötigen, wo Konsistenz wichtiger ist als Energieeinsparungen. Die dynamische Optimierung überwacht Festplatten-, Netzwerk- und Auslastungsnutzung in Echtzeit und passt die Einstellungen spontan an. Leistungsprofile deaktivieren die dynamische Optimierung standardmäßig, um den Überwachungsaufwand zu vermeiden.

Auswahl des richtigen Profils für Ihre Arbeitslast

tuned liefert ein Dutzend Profile aus, die die gängigsten Workloads abdecken. Wählen Sie dasjenige, das der tatsächlichen Funktion des Servers entspricht, anstatt das Standardprofil balanced beizubehalten.

WorkloadProfilWas es leistet
GPU-Training und Inferenzaccelerator-performanceSperrt die CPU in niedrigen C-Zuständen und hält die Latenz zwischen CPU und GPU unter 100 µs
Datenbanken (Postgres, MySQL, Redis)throughput-performanceDeaktiviert Energiesparfunktionen, optimiert Festplatten- und Netzwerk-I/O, deaktiviert Transparent Huge Pages
Netzwerk mit hoher Bandbreite (CDN, Replikation, Datenpipelines)network-throughputVergrößert die Netzwerkpuffer des Kernels für anhaltende Übertragungen mit hoher Bandbreite
Latenzempfindliche Dienstenetwork-latency oder latency-performanceSetzt den CPU-Governor auf performance, deaktiviert tiefe C-Zustände
HPC- und Rechenclusterhpc-computeErweitert die Latenz-Leistung durch NUMA und Speicheroptimierung
VPS-Instanzen (Gast-OS)virtual-guestVerringert die Swappiness, erhöht das Disk-Readahead für paravirtualisierte E/A
KVM-Hypervisor-Hostsvirtual-hostOptimiert das Zurückschreiben von Dirty Pages für VM-Workloads
Gemischt oder unbekanntbalancedStandard. Tauscht Leistung gegen Energieeffizienz

Für bestimmte Datenbank-Engines wird „tuned“ ebenfalls mitgeliefert postgresql, mssqlund oracle Profile, die über throughput-performance , indem sie die Parameter für den gemeinsamen Speicher und den Kernel-Scheduler für diese Engines optimieren.

Auf Servern mit mehreren Sockeln spielt die NUMA-Topologie eine Rolle. Der Speicherzugriff auf entfernte Knoten kann zwei- bis dreimal langsamer sein als der lokale Zugriff. Deaktivieren Sie für latenzkritische Workloads auf Dual-Socket-Systemen den automatischen NUMA-Ausgleich im Profil und weisen Sie Prozesse manuell bestimmten Knoten zu.

Installieren und Anwenden von Profilen

Installieren Sie tuned auf RHEL, Rocky, AlmaLinux oder Fedora:

dnf install tuned
systemctl enable --now tuned

Unter Debian und Ubuntu heißt das Paket ebenfalls tuned und wird über apt. Falls power-profiles-daemon bereits läuft, maskieren Sie es, um Konflikte zu vermeiden:

systemctl mask --now power-profiles-daemon

Listen Sie die verfügbaren Profile auf, fragen Sie tuned, was es für die Hardware empfiehlt, wenden Sie ein Profil an und überprüfen Sie es:

tuned-adm list
tuned-adm recommend
tuned-adm profile throughput-performance
tuned-adm verify

Das aktive Profil wird in /etc/tuned/active_profile und bleibt auch nach einem Neustart erhalten. Um die Optimierung vollständig zu entfernen und die Ausgangsbasis zu messen, führen Sie tuned-adm off.

Erstellen eines benutzerdefinierten Profils für KI-, ML- und Workloads mit hoher Bandbreite

Wenn die Standardprofile bereits 90 % der Anforderungen abdecken, erstellen Sie ein benutzerdefiniertes Profil, das von dem am besten passenden Profil erbt und die verbleibenden Parameter überschreibt. Beginnen Sie mit einem Verzeichnis und einer Konfigurationsdatei:

mkdir -p /etc/tuned/ai-gpu
cat > /etc/tuned/ai-gpu/tuned.conf <<'EOF'
[main]
summary=Custom profile for GPU training with high-bandwidth networking
include=accelerator-performance
 
[cpu]
governor=performance
 
[sysctl]
kernel.numa_balancing=0
net.core.rmem_max=268435456
net.core.wmem_max=268435456
net.ipv4.tcp_rmem=4096 87380 268435456
net.ipv4.tcp_wmem=4096 65536 268435456
 
[vm]
transparent_hugepages=never
 
[bootloader]
cmdline=hugepagesz=2M hugepages=16384 <a target="_blank" rel="noopener noreferrer" href="https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_management_unit">iommu</a>=pt
EOF
 
tuned-adm profile ai-gpu

Die wichtigsten Entscheidungen hierbei:

  • numa_balancing=0 verhindert, dass der Kernel während des Trainings Speicher zwischen den Sockeln verschiebt – eine häufige Ursache für Verzögerungen bei Dual-Socket-GPU-Systemen.
  • Die rmem_max und tcp_rmem erhöhen die Obergrenze des Socket-Puffers auf 256 MB. Bei 25G-, 40G- oder 100G-Verbindungen zwischen Trainingsknoten begrenzen die Standard-Puffergrößen den Durchsatz deutlich unterhalb der Leitungsrate.
  • transparent_hugepages=never beseitigt den durch THP verursachten Latenz-Jitter für Frameworks wie PyTorch und TensorFlow, die große Tensoren zuweisen.
  • iommu=pt versetzt IOMMU in den Passthrough-Modus, der für GPU- und NIC-Passthrough erforderlich ist, und reduziert den Overhead bei Bare-Metal-DMA.

Alles unter [bootloader] erfordert einen Neustart. Führen Sie nach der Aktivierung des Profils tuned-adm verify , um zu überprüfen, ob die Laufzeitparameter angewendet wurden, und journalctl -u tuned auf Fehler. Führen Sie vor und nach der Änderung einen Benchmark mit iostat -xz, numastatund dem entsprechenden Workload-Tool (iperf3, fiooder den eigentlichen Trainingslauf).

Ein Kompromiss, der ausdrücklich erwähnt werden sollte: Das Deaktivieren von CPU-Sicherheitsmaßnahmen bringt bei GPU-Workloads etwa 3–8 % Leistungsgewinn, kostet jedoch 15–30 % bei Workloads mit intensiven Systemaufrufmustern. Entscheiden Sie sich auf der Grundlage des Bedrohungsmodells für den Rechner. Innerhalb eines dedizierten Trainingsclusters hinter einer Firewall spricht die Rechnung in der Regel für eine Deaktivierung. Auf einem Multi-Tenant-Host sollten Sie sie aktiviert lassen.

Verwaltung von Profilen über eine Serverflotte hinweg

Die manuelle Anwendung von tuned ist ab einer gewissen Anzahl von Servern nicht mehr praktikabel. Ansible löst dieses Problem sauber. Ein einziges Playbook installiert tuned, legt benutzerdefinierte Profilverzeichnisse unter /etc/tuned/ über das template Modul und wendet das richtige Profil pro Inventargruppe an.

Profile den Rollen im Inventar zuordnen:

  • GPU- und KI-Knoten: accelerator-performanceoder ein benutzerdefiniertes Profil, das davon erbt
  • Datenbankserver: throughput-performance oder das enginespezifische Profil
  • CDN- und Edge-Knoten, die Datenverkehr mit hoher Bandbreite übertragen: network-throughput
  • API- und Webserver hinter einem Load Balancer: network-latency
  • VPS- und KVM-Gäste: virtual-guest
  • Hypervisor-Hosts: virtual-host

Abweichungen sind das eigentliche Betriebsproblem. Manuelle sysctl Änderungen, Paket-Upgrades, die neue Standardeinstellungen mitbringen, oder ein anderes Konfigurationsmanagement-Tool, das sich mit „tuned“ überschneidet, führen dazu, dass die Einstellungen von den Vorgaben des Profils abweichen. Planen Sie einen Ansible-Job ein, der tuned-adm active und tuned-adm verify über Cron auszuführen und bei Fehlern eine Benachrichtigung zu senden. Achten Sie /var/log/tuned/tuned.log auf Zeilen wie „Verification failed“.

Fazit

tuned nimmt dem Kernel- und sysctl-Tuning das Rätselraten weitgehend. Die Standardeinstellungen sind für den allgemeinen Gebrauch gut genug, und die arbeitslastspezifischen Profile wie accelerator-performance, throughput-performanceund network-throughput bringen Sie schon fast zur Optimierung, ohne eine einzige Konfigurationsdatei schreiben zu müssen.

  • Wählen Sie das am besten passende Standardprofil aus, führen Sie tuned-adm verifyund führen Sie anschließend einen Benchmark durch
  • Erstellen Sie benutzerdefinierte Profile, indem Sie von einem Standardprofil erben und nur das überschreiben, was Sie benötigen
  • Gehen Sie bewusst mit NUMA-Balancing, Hugepages und Netzwerkpuffergrößen auf GPU- und Hochbandbreiten-Systemen um
  • Stellen Sie die Umgebung mit Ansible bereit und führen Sie regelmäßige Audits durch, um Abweichungen zu erkennen

Benötigen Sie Bare-Metal-Kapazität mit ausreichender Bandbreite, um diese Einstellungen tatsächlich nutzen zu können? Sprechen Sie mit FDC über dedizierte Server, die für hohe Durchsätze und GPU-Workloads ausgelegt sind.

Blog

Diese Woche im Blickpunkt

Weitere Artikel
Abgestimmte Profile für die Optimierung der Linux-Server-Arbeitslast

Abgestimmte Profile für die Optimierung der Linux-Server-Arbeitslast

Wie man abgestimmte Profile für GPU-, Datenbank- und Linux-Server mit hoher Bandbreite auswählt, anwendet und anpasst, mit Beispielen und Tipps für den Einsatz von Ansible.

16 Min. Lesezeit - 9. Juni 2026

Linux OOM Killer Tuning für VPS: Ein praktischer Leitfaden

12 Min. Lesezeit - 8. Juni 2026

Weitere Artikel
background image

Haben Sie Fragen oder benötigen Sie eine individuelle Lösung?

icon

Flexible Optionen

icon

Globale Reichweite

icon

Sofortige Bereitstellung

icon

Flexible Optionen

icon

Globale Reichweite

icon

Sofortige Bereitstellung