203 Ressourcen-Nutzung [1 PT]

Posted About 2 years ago. Visible to the public.

Wir wollen verstehen, welche Hardware-Ressourcen uns zur Verfügung stehen und wie wir mögliche Engpässe und Probleme identifizieren können. Grundsätzlich dreht sich diese Frage in der Regel um die Anzahl der zur Verfügung stehenden CPUs, Hauptspeichers, Festplatten und Netzwerkkapazitäten.
Manche Ressourcen-Limits werden auch aus Sicherheitsgründen vom Betriebssystem eingezogen, beispielsweise per ulimit oder fs.file-max. Ressourcen können auch mit cgroups limitiert werden. Dazu lernst du später noch mehr.

Ziele

  • Du kennst die verschiedenen Ressourcen-Parameter eines typischen Linux-Systems
  • Du kennst für alle wichtigen Ressourcen die notwendigen Werkzeuge, um Details über die Nutzung anzuzeigen
  • Du kannst die Daten interpretieren und erkennst mögliche Probleme

Inhalte

man pages der toolings

CPU

  • lscpu
  • top
  • htop

RAM

  • free
  • vmstat

HDD

  • df -h -i
  • lsof
    • lsof -p
  • iotop
  • pidstat
  • iostat

PSI

  • head /proc/pressure/*

Netzwerk

  • netstat
  • ss
  • lsof -i -P
  • bmon
  • nload
  • iftop

Externe Inhalte

Übungen

  • Zum Einstieg schaust du dir die jeweiligen Themen an und verstehst was diese jeweils bedeuten:
    • CPU
      • CPU Kerne
      • Hyperthreading
      • CPU User
      • CPU System
      • wait
      • steal
    • Speicher
      • Freier Speicher
      • Belegter Speicher
      • Swap
      • Buffer
      • Cache
      • shared memory
      • available memory
    • Disk
      • Verfügbarer Speicher
      • Burst performance
      • Caching/Buffer
      • Schreibgeschwindigkeit
      • Lesegeschwindigkeit
      • IOPS
      • Random Read/Write
    • PSI
      • Wie ist das Konzept der Pressure Stall Information Metriken?
      • Wie unterscheidet es sich zur klassischen load average?
      • Was ist der Unterschied zwischen some und full pressure?
    • Netzwerk
      • Welche Verbindungen sind offen (established)?
      • Welche listen sockets gibt es auf dem System?
      • Bandbreite
      • Latenz
  • Finde die oben genannten "Metriken" in den verschiedenen tools die oben dargestellt werden. Schreib dir auf, wo du was gefunden hast und wo du was auslesen könntest.
  • Lege dir eine Liste zurecht welche die üblichen Performance Bottlenecks sind und wie du prüfst ob diese anliegen
Thomas Eisenbarth
Last edit
9 months ago
Andreas Vöst
License
Source code in this card is licensed under the MIT License.
Posted by Thomas Eisenbarth to DevOps Curriculum (2022-01-24 10:06)