Logo Unix Linux

Linux Server System Diagnose und Tuning

    Seminarinhalt

    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.

    Programm

    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

    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.

    Trainings zur Vorbereitung

    Downloads

      3 Tage ab  1.885,-
      Termin wählen
      Trainings-ID:
      LSSDT
      Ort:
      Wiener Neustadt, Online

      Jetzt buchen

      • 21.05.-23.05.2025 21.05.2025 3 Tage 3T Wiener Neustadt Online ab  1.885,-

          Trainingspreis

           1.885,-
        • Trainingspreis Vor Ort  1.885,-
        • Trainingspreis Online  1.885,-

      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

      Die einzigartige Termin- und Wissensgarantie von ETC

      Die ETC Termingarantie ist schon seit 2005 der Garant für Ihre Planungs-Sicherheit und unsere 100% Garantie bietet mehr gesicherte Termine als jeder andere Anbieter! So können Sie immer Ihre Ausbildung konkret planen und darauf vertrauen, dass Ihr Termin mit ETC Termingarantie auch eingehalten wird. Die ETC Termingarantie ist eine echte Garantie, auf die Sie sich auch dann verlassen können, wenn nur 1 Teilnehmer*in angemeldet ist!
      Mehr darüber

      Lernformen im Überblick

      Mehr darüber