Logo Unix Linux

Linux Server System Diagnose und Tuning

Trainings-ID:
LSSDT

Inhalt des Trainings

Funktioniert ein Programm nicht so wie sie es erwarten? Dann wäre es tool, wenn man analysieren könnte welche Probleme ein Programm im Moment hat. Das haben auch die Kernelentwickler*innen erkannt und daher haben sie den Linux Administrator*innen eine Vielzahl von Werkzeugen zur Analyse, Überwachung und Diagnose von Prozessen zur Verfügung gestellt.

Auch das Tuning von System Komponenten zur Performance Steigerung oder der Vermeidung von Engpässen setzt eine vorherige Analyse der Workload voraus. Dieses Training bietet einen fortgeschrittenen Einblick in Linux Systemkomponenten und ihren zahlreichen Tuningmöglichkeiten.

Jede*r Teilnehmer*inen erhält mehrere Linux VMs (SUSE, Red Hat und Debian) und hat die Möglichkeit das erlernte Wissen auf allen Plattformen zu testen.

Zielgruppen

Linux Adminstrator*innen

Vorkenntnisse

Dieses Training richtet sich an Teilnehmer*innen mit Administrationserfahrungen im Linux Bereich, wie sie durch unseren "Linux 1 - Grundlagen" Training vermittelt werden.

Detail-Inhalte

Grundlagen Linux Prozesse
  • Prozesse vs. Threads
  • Aufbau eines Prozesses
  • Das Bedeutung von PID, TID, PPID, und TGID bei Threads
  • Context Switch
  • Prozess Attribute
  • Prozess Kenndaten (Priorität, Speicher, Rechenzeit, geöffnete Dateien…)
  • Verstehen der Prozesszustände (uninterruptible sleep, zombie, running, runable, …)
  • Vorder und Hintergrundprozesse
  • Kernel Threads

Linux Prozess Diagnose und Verwaltung
  • Prozess Diagnose Werkzeuge im Detail (ps, top, pstree, pidof...)
  • Prozess und Thread Anzeigemöglichkeiten
  • Zeitmessungen mit time (wait, user, sys)
  • Das /proc Verzeichnis im Detail
  • Arbeiten mit offenden Dateien (lsof, fuser,...)
  • Ermitteln des Speicherverbrauches von Prozessen
  • SIGHUP Handling mit nohup
  • Linux jobs Verwaltung
  • Load Averages Values (Durchschnittslast)
  • Kill Signale im Detail
  • Richtiges anwenden und abfangen von Kill Signalen (kill, killall, trap, pgrep, pkill,...)
  • Prozess Prioritäten anpassen (nice, renice)
  • Limitieren der Prozessanzahl (ulimit, systemd)
  • Verwalten von Kernel Parametern

Prozesse und Arbeitsspeicher
  • Virtual Memory
  • File System Cache (Dirty Pages, dirty_ratio, sync, fsync,...)
  • Swap Management und Tuning (swappiness, zswap, ...)
  • free

Performance Analyse Werkzeuge
  • Benchmark Werkzeuge (boonie, boonie++)
  • Simulieren von Stress Situationen mit dem Befehlt stress

Prozess Kontrolle und Anpassung
  • CPU Pinning mit taskset
  • I/O Priorität mit ionice anpassen
  • vmstat, dstat, iostat, netstat, nethogs, iptraf, mpstat, pidstat, sadf, sar, sysstat
  • Linux I/O Scheduler Einstellungen (NOOP, Deadline und CFQ)
  • Non-Uniform Memory Access (NUMA)

TCP und Netzwerkkarten Diagnose und Tuning
  • Netzwerk Diagnose Werkzeuge im Detail (netstat, ss, tcpdump, iptraf, ethtool,...)
  • Paket Kenndaten (Time to Live, Latenz, Round Trip Time, Payload, Maximum Transmission Unit, ...)
  • Arbeitsweise des Kernel Socket Buffers
  • Packet Flow and Receive Queues
  • Tuning des Netzwerk Stacks

Debuggen mit STRACE
  • Grundlagen Kernel Ring Modell
  • privilegierter Modus vs. unprivilegierter Modus
  • Syscall Interface
  • Prozess Analyse mit strace
  • Gängige Systemaufrufe im Detail (execve, openat, read, write, close, ...)
  • Systemaufrufe zum auslesen von Metadaten (stat, lstat, fstat, statx, statfs, fstatfs, getxattr, ...)
  • Filtern von Systemaufrufen mit Syscall Sets
  • Analyse von Socket Erstellung und Socket Kommunikation
  • Child Prozess Erstellung
  • Performancemessung mit strace

Tuning Möglichkeiten mit systemd
  • Linux Kernel Namespaces im Detail
  • Linux Kernel Control Groups (cgroups) im Detail
  • Systemd Slice und Scope Konfiguration
  • Monitoring mit systemd-cgtop und systemd-cgls
  • Erstellen von transient units

Ressourcen Controle mit Systemd
  • Verwalten von Prozessen in Kernel Gruppen
  • Definieren von CPU Limits (CPUShares, CPUQuota, CPUAffinity)
  • Definieren von virtuell Memory Limits (MemoryLimit, SWAPLimit, ...)
  • Definieren eines Network Namespaces
  • Priorisieren von Datenbanken I/O
  • Priorisieren von Netzwerk Traffic
  • IP Accounting & Access Control
  • Simulieren von Stress Situationen

Trainings zur Vorbereitung

Downloads

Jetzt online buchen

  • 10.03.-12.03.2025 10.03.2025 3T 3 Tage Wiener Neustadt OnlinePräsenz
    LinuxCampus · Brodtischgasse 4, 2700 Wiener Neustadt Uhrzeiten
    • Trainingspreis  1.885,-
      • Vor Ort
      • Online
  • 21.05.-23.05.2025 21.05.2025 3T 3 Tage Wiener Neustadt OnlinePräsenz
    LinuxCampus · Brodtischgasse 4, 2700 Wiener Neustadt Uhrzeiten
    • Trainingspreis  1.885,-
      • Vor Ort
      • Online

Preise exkl. MwSt.

Sie haben Fragen?

Ihr ETC Support

Kontaktieren Sie uns!

+43 1 533 1777-99

This field is hidden when viewing the form
This field is hidden when viewing the form
This field is hidden when viewing the form

Lernformen im Überblick

Mehr darüber