Systemnahes Monitoring: Wie, wo, was?



Ähnliche Dokumente
Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG

Installation Linux agorum core Version 6.4.5

Installation Linux agorum core Version 6.4.8

Fakten statt Bauchgefühl: RAID Mathematik für Admins

Installationsanleitung für pcvisit Server (pcvisit 12.0)

Leistungsanalyse unter Linux

Anleitung zur Einrichtung des USB-Speicherzugriffs (SharePort) Für DIR-506L (Stand April 2013)

Installationsleitfaden für Secure Private Network für Linux ClearPath- Netzwerke

Socket-Details für Linux Admins

Step by Step Webserver unter Windows Server von Christian Bartl

UNIX Dateirechte. Michael Hartmann. 7. Oktober Linux User Group Augsburg

Stecken Sie Ihren USB Stick oder Ihre externe USB Festplatte in den USB Steckplatz des Sinus 154 DSL SE.

Anleitung zur Nutzung des SharePort Utility

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Tipps und Tricks zu Netop Vision und Vision Pro

NbI-HS. NbIServ Bethenhausen Bethenhausen

Webalizer HOWTO. Stand:

Professionelle Seminare im Bereich MS-Office

SAP Memory Tuning. Erfahrungsbericht Fritz Egger GmbH & Co OG. Datenbanken sind unsere Welt

Formular»Fragenkatalog BIM-Server«

Stefan Dahler. 1. Remote ISDN Einwahl. 1.1 Einleitung

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Tutorial -

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version Deutsch

4D Server v12 64-bit Version BETA VERSION

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Die Post hat eine Umfrage gemacht

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

1. Allgemeines zum tevitel.wq-monitor Seite WQ-Monitor konfigurieren Seite 4

Netzwerk einrichten unter Windows

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler Oktober 2008 Version 1.0.

R-ADSL2+ Einrichthinweise unter Windows 98/ME

Analyse eines gehackten Webservers unter Linux IT-SecX Dipl.-Ing. (FH) Georg Höllrigl

SFTP SCP - Synology Wiki

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Anleitung zum Prüfen von WebDAV

Witbox. Anleitung Repetier-Host. Witbox

Diese Anleitung erläutert die Einrichtung des Active Directory Modus im DNS-343.

Lehrer: Einschreibemethoden

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Ether S-Net Diagnostik

Im Kapitel Resourc Manager werden die verschiedenen Möglichkeiten der Überwachung von Messwerten eines Server oder Benutzers erläutert.

Xerox Device Agent, XDA-Lite. Kurzanleitung zur Installation

Eine Anwendung mit InstantRails 1.7

Internet Explorer Version 6

Workshop: Eigenes Image ohne VMware-Programme erstellen

-Virtuelle Jagdfliegerschule- Teamspeak Seite 1 von 6

Mein eigener Homeserver mit Ubuntu LTS

SolarWinds Engineer s Toolset

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Der Support für Windows Server 2003 endet endgültig alles was Ihnen dann noch bleibt ist diese Broschüre.

Konvertieren von Settingsdateien

Swisscom TV Medien Assistent

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Windows Server 2008 (R2): Anwendungsplattform

NetVoip Installationsanleitung für Grandstream GXP2000

Second Steps in eport 2.0 So ordern Sie Credits und Berichte

Netzlaufwerke verbinden

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1

Anleitung zur Inbetriebnahme einer FHZ2000 mit der homeputer CL-Software

UserManual. Handbuch zur Konfiguration einer FRITZ!Box. Autor: Version: Hansruedi Steiner 2.0, November 2014

ecampus elearning Initiative der HTW Dresden

EASYINSTALLER Ⅲ SuSE Linux Installation

Windows 2008R2 Server im Datennetz der LUH

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Was meinen die Leute eigentlich mit: Grexit?

Anbindung des eibport an das Internet

INSTALLATION ABACUS ABAWEBCLIENT

GENIUSPRO. Installation Installation des Drucker- Treibers Konfiguration der Software Registrierung SYSTEMVORRAUSSETZUNGEN

Virtual Private Network

Konfiguration Firewall (Zyxel Zywall 10) (von Gruppe Schraubenmeier)

Windows Verbindung mit WLAN BZPflege trennen Verbindung mit WLAN EDU-BZPflege automatisch erstellen... 30

Version Deutsch

Drägerware.ZMS/FLORIX Hessen

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Virtual PBX Installationsanleitung für X-Lite

Informationen zum Einstellen des SIP-Telefons Grandstream GXV 3275

Verwendung des Terminalservers der MUG

Einfaches und rechtssicheres Kunden-WLAN

JIRA-Speicher erhoehen

Intrusion Prevention mit IPTables. Secure Linux Administration Conference, 6. / 7. Dec Dr. Michael Schwartzkopff. iptables_recent, SLAC 2007 / 1

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Kalender freigeben und andere Kalender aufrufen

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Mit einem Mausklick sind s aus ACT! heraus in Outlook geschrieben, die dann wiederum auf Wunsch in ACT! dokumentiert werden.

ERSTELLEN VON INCENTIVES IM ZANOX NETZWERK

Dynamic Ressource Management

:: Anleitung Hosting Server 1cloud.ch ::

Wie starte ich mit meinem Account?

Modul 129: LAN-Komponenten in Betrieb nehmen Thema: Fehlersuche. Netzwerk Fehlersuche. Technische Berufschule Zürich IT Seite 1

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Transkript:

SLAC 2008 Systemnahes Monitoring: Wie, wo, was? Stefan Semmelroggen Heinlein Professional Linux Support GmbH http://www.heinlein support.de

Agenda top der Klassiker Speichermanagement lsof strace iostat & iotop netstat weitere Goodies...

top der Klassiker

Load load average: Exponentiell geglätteter Wert der durchschnittlichen Anzahl von Prozessen in der run queue über einen Zeitraum von 1, 5 und 15 Minuten

Load Was ist eine hohe Load? Jedes System reagiert anders Abhängig von Aufgabe und Anzahl der CPU Kerne im System, kann eine Load von 0,5 schon als träge empfunden werden und eine Load von 12 normal sein Was bringt uns dann die Load? Kapazitätsplanung

CPU Zeit us: user mode Rechenzeit der Applikationen sy: kernel mode Rechenzeit des Kernels ni: nice nice Prozesse im user mode id: idle Däumchen drehen wa: wait I/O Warten auf die Fertigstellung von I/O hi, si: hardware & software interrupts st: steal time Gestohlene Zeit (XEN Hypervisor)

Top Spalten PR: priority Je höher, desto länger hat der Prozess gewartet NI: nice value Je niedriger, desto höher die Priorität (ungleich PR) VIRT: virtual image Gesamtgröße des benutzten Speichers (inkl. shared libraries, Datensegmente, swap,...) RES: resident size echter RAM Verbrauch SHR: shared mem gemeinsam genutzter Speicher (beispielsweise shared libraries)

free Speicherauslastung Ungenutzter Speicher ist verschwendeter Speicher nicht benötigter RAM wird für den Cache verwendet buffers/cached: gibt an, wieviele Bytes zum Cachen von Festplattenblöcken bzw. Dateien und Verzeichnissen verwendet wird buffers/cached wird bei Bedarf vom Kernel für Applikationen freigegeben ABER: ein System mit wenig Cache bremst das System

Speicherlimitierung auf 32 bit CPUs 32 bit CPUs können nur 4 GB RAM adressieren 2 32 =4294967296 CPUs mit PAE (ab Pentium Pro) haben 36 Bit für die Adressierung von RAM => die CPU kann 64 GB adressieren 32 bit Applikationen können aber NIE mehr als 4 GB adressieren In der Praxis i.d.r. nur 3 GB dazu später mehr.

Mehr als 1024 MB RAM bei Linux (32 bit) Low Memory und High Memory ZONE_DMA: 0 bis 16 MB ZONE_NORMAL: 16 bis 896 MB ZONE_HIGHMEN: 896 bis...

Low Memory und High Memory cat /proc/meminfo egrep '(Low High)' Alle Kernelstrukturen müssen im Low Memory Bereich liegen Der Kernel kann nur den Low Memory Bereich direkt ansprechen High Memory muß vor Benutzung im Low Memory Bereich eingeblendet werden => Overhead und Performanceverlust

Memory Split ab Kernel 2.6.13 Memory Split 3/1, 2/2 oder 1/3 (user/kernel) cat /proc/meminfo egrep '(Low High)' Applikationen können dann maximal 3, 2 bzw. 1 GB groß werden

Low Memory und High Memory Bei Systemem mit viel RAM kann der Low Memory Bereich voll sein, ohne dass der High Memory Bereich voll ausgeschöpft werden kann 64 bit Systeme haben diese Trennung nicht. Es gibt nur Low Memory => Bei mehr als 1 GB RAM; spätestens aber ab 4 GB RAM immer 64 bit CPUs verwenden

pmap Speichersünder aufspüren Speicheradresse Größe Zugriffsrechte Ressource Die Datensegmente (rw ) gehören dem Prozess. Der Rest kann mit anderen Prozessen geteilt werden Jedes Modul braucht privaten Speicher Unbedingt alle Dienste auf ein Minimum abspecken Selbstkompilierte Dienste können bei großen Systemen Ressourcen sparen

slabtop Anzeige der Caches Der Cache ist in sogenannte slabs organisiert slabtop zeigt die Größe und Auslastung der einzelnen slabs an

lsof list open files lsof -p PID zeigt alle benutzten Ressourcen des Prozesses lsof /datei zeigt alle Programme an, die die Datei benutzen lsof -i zeigt alle bnenutzen IP Sockets an

Beispielausgabe von lsof

lsof FD (File Descriptor) cwd current working directory mem memory mapped file rtd root directory txt program text (das ausgeführte Programm) rx, wx, ux read, write bzw. read und write Zugriff auf den File Descriptor X

lsof TYPE IPv4, IPv6 IPv4 bzw. IPv6 Socket unix UNIX domain socket (beispielsweise /dev/log) BLK block special file (beispielsweise /dev/sda) CHR character special file (beispielsweise /dev/null) DIR directory REG regular File (jede normale Datei)

lsof DEVICE SIZE NODE Major und Minor Number von Geräten (beispielsweise 3,1 für /dev/hda1) Speicheradresse für Sockets Referenznummer des Kernels für Ressourcen Größe der Ressource in Bytes inode der Ressource

strace trace system calls Nur der Linux Kernel kann direkt auf Ressourcen zugreifen und sie manipulieren (Speicherinhalte ändern, auf Dateien zugreifen,...) Alle Programme im user space müssen dem Kernel daher durch sogenannte system calls mitteilen was sie tun möchten strace kann uns sämtliche system calls anzeigen, die ein Programm aufruft

Wichtige Systemaufrufe Datei und Verzeichniszugriffe open, close, read, write, chdir, mkdir, rmdir, rename, unlink,... Datei und Vezeichnisattribute auswerten und ändern chmod, chown, stat, fstat, access,... Netzwerkzugriffe socket, bind, listen, accept, connect, send,... Erzeugen und Beenden von Prozessen execve, fork, vfork, exit,... Speicherzugriffe mmap2, brk, mprotect,...

strace Syntax strace PROGRAMM startet und verfolgt Programm strace -p PID dockt sich an den Prozess an strace -e SYSTEMCALL,SYSTEMCALL PROGRAMM strace zeigt nur gelistete system calls an strace -f PROGRAMM Auch Unterprozesse werden verfolgt

iostat input/output statistics iostat zeigt beim Aufruf die durchschnittliche Auslastung des Systems (ähnlich wie top) und die durchschnittliche I/O Auslastung seit dem letzten Bootvorgang an

iostat Im Intervallmodus zeigt iostat die Differenzen zum letzten Intervall an iostat -x 10 Zeigt erweiterte Angaben ( x) zur I/O Auslatung an und generiert alle 10 Sekunden einen neuen Report

iostat tps transfers per second r/s bzw. w/s Lese bzw. Schreibzugriffe pro Sekunde avgrq sz Durchschnittsgröße der Requests in Sektoren avgqu sz Durchschnittsgröße der Warteschlange des Geräts await Durchschnittliche Wartezeit bis zur Erfüllung des I/O Requests in ms rrqm/s bzw. wrqm/s Anzahl der Lese bzw. Schreibzugriffsaufträge pro Sekunde, die zusammengeführt wurden (das System gruppiert die Requests um performanter arbeiten zu können)

iotop I/O Monitor iotop funktioniert wie top für I/O iotop erfordert spezielle Kerneloptionen CONFIG_TASK_IO_ACCOUNTING CONFIG_TASKSTATS Serienmäßig bieten das bisher nur Debian Lenny und Fedora 10

netstat network connections and interface statistics netstat -u bzw. -t UDP bzw. TCP Sockets anzeigen netstat -l nur Serversockets anzeigen netstat -a zeigt Serversockets und Verbindungen an netstat -p zeigt zugehörige Prozesse an

TCP Handshake und Teardown

Die missverstandenen States TIME_WAIT Im TIME_WAIT Zustand wird auf Pakete gewartet, die evtl. noch im Netzwerk sind. Dadurch wird verhindert, dass ein verspätet eintreffendes Paket eine neue Verbindung auf dem gleichen Socket stört. TIME_WAIT dauert in der Regel 2 Minuten (2 x Maximum Segment Lifetime). Danach kann kein verspätetes Paket mehr eintreffen. Die Applikation hat die Kontrolle bereits an das OS bzw. den IP STACK abgegeben. TIME_WAIT blockiert demnach keine Ressourcen der Applikation. TIME_WAIT ist gut ;)

Die missverstandenen States CLOSE_WAIT Das lokale Ende der Verbindung hat ein FIN erhalten und mit einem ACK bestätigt. Die Applikation hat die Kontrolle über den Socket noch nicht abgegeben. Daher kann der IP Stack noch kein FIN senden. CLOSE_WAIT ist kein Problem des IP Stacks. Der Timeout kann nicht konfiguriert werden. Es ist ein Fehler in der Applikation!

Weitere nützliche Tools iptraf Tool zur Anzeige des Traffics auf einem Interface tcpdump/tshark & wireshark Network Sniffer und Paket Analyzer mtr traceroute Alternative ethtool Setzen und Auslesen der Einstellungen für Netzwerkkarten powertop Leistungsverbrauch auf Intel basierten Laptops

Und nun... Herzlichen Dank für Ihren Besuch und Ihre Aufmerksamkeit! Stefan Semmelroggen s.semmelroggen@heinlein support.de Telefon: 030 / 40 50 51 0

Heinlein Professional Linux Support GmbH AKADEMIE Von Profis für Profis: Wir vermitteln die oberen 10% Wissen. Geballtes Wissen und umfangreiche Praxiserfahrung aus erster Hand. SUPPORT LPIC 2 Profis realisieren auch anspruchsvolle Projekte für Sie vor Ort. Im Heinlein CompetenceCall lösen sie Notfälle, auf Wunsch mit garantierten 24/7 Verfügbarkeiten. HOSTING Wenn Hosting kein Massengeschäft sein darf: Individuelles Business Hosting mit perfekter Maintenance durch unsere Linux Profis. Sicherheit und Verfügbarkeit werden bei uns groß geschrieben.