20 Command Line Tools om Linux Performance te monitoren
Het is voor iedere systeem- of netwerkbeheerder een zware klus om dagelijks Linux systeem performance problemen te monitoren en debuggen. Ik ben 5 jaar Linux-beheerder geweest in de IT-industrie en ik weet nu hoe moeilijk het is om systemen te monitoren en draaiende te houden. Om deze reden hebben we een lijst samengesteld met de Top 20 van veelgebruikte command line monitoring tools die nuttig kunnen zijn voor iedere Linux/Unix Systeembeheerder. Deze commando’s zijn beschikbaar onder alle smaken van Linux en kunnen nuttig zijn om te monitoren en de werkelijke oorzaken van prestatieproblemen te vinden. Deze lijst met commando’s is ruim voldoende voor u om er een te kiezen die geschikt is voor uw monitoringscenario.
1. Top – Linux Process Monitoring
Linux Top commando is een performance monitoring programma dat veel door systeembeheerders wordt gebruikt om de prestaties van Linux te monitoren en het is beschikbaar onder veel Linux/Unix-achtige besturingssystemen. De top commando gebruikt om dipslay alle lopende en actieve real-time processen in geordende lijst en updates het regelmatig. Het toont CPU-gebruik, geheugengebruik, wisselgeheugen, cachegrootte, buffergrootte, proces PID, gebruiker, commando’s en nog veel meer. Het toont ook hoog geheugen en cpu gebruik van een lopend proces. Het top commando is zeer bruikbaar voor systeembeheerders om te monitoren en de juiste actie te ondernemen wanneer nodig. Laten we top commando eens in actie zien.
# top
Voor meer voorbeelden van Top command lees : 12 TOP-opdrachtvoorbeelden in Linux
2. VmStat – Virtueel Geheugen Statistieken
Linux VmStat commando wordt gebruikt om statistieken van virtueel geheugen, kernerl threads, schijven, systeem processen, I/O blokken, interrupts, CPU activiteit en nog veel meer weer te geven. Standaard is het vmstat commando niet beschikbaar onder Linux systemen. Je moet een pakket installeren genaamd sysstat dat een vmstat programma bevat. Het gebruikelijke gebruik van het commando formaat is.
# vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free inact active si so bi bo in cs us sy id wa st 1 0 0 810420 97380 70628 0 0 115 4 89 79 1 6 90 3 0
Voor meer Vmstat voorbeelden lees : 6 Vmstat Commando Voorbeelden in Linux
3. Lsof – Lijst Open Bestanden
Lsof commando wordt in veel Linux/Unix achtige systemen gebruikt om een lijst weer te geven van alle open bestanden en de processen. De open bestanden zijn disk files, netwerk sockets, pipes, devices en processen. Een van de hoofdredenen om dit commando te gebruiken is wanneer een schijf niet kan worden ontkoppeld en de fout weergeeft dat bestanden worden gebruikt of geopend. Met dit commando kunt u gemakkelijk nagaan welke bestanden in gebruik zijn. De meest gebruikte indeling voor dit commando is.
# lsofCOMMAND PID USER FD TYPE DEVICE SIZE NODE NAMEinit 1 root cwd DIR 104,2 4096 2 /init 1 root rtd DIR 104,2 4096 2 /init 1 root txt REG 104,2 38652 17710339 /sbin/initinit 1 root mem REG 104,2 129900 196453 /lib/ld-2.5.soinit 1 root mem REG 104,2 1693812 196454 /lib/libc-2.5.soinit 1 root mem REG 104,2 20668 196479 /lib/libdl-2.5.soinit 1 root mem REG 104,2 245376 196419 /lib/libsepol.so.1init 1 root mem REG 104,2 93508 196431 /lib/libselinux.so.1init 1 root 10u FIFO 0,17 953 /dev/initctl
Meer lsof commando gebruik en voorbeelden : 10 lsof Command Examples in Linux
4. Tcpdump – Network Packet Analyzer
Tcpdump is een van de meest gebruikte command-line netwerk packet analyzer of packets sniffer programma dat wordt gebruikt voor het vangen of filteren van TCP/IP-pakketten die worden ontvangen of overgedragen op een specifieke interface over een netwerk. Het biedt ook een optie om gevangen pakketten op te slaan in een bestand voor latere analyse. tcpdump is bijna beschikbaar in alle grote Linux distributies.
# tcpdump -i eth0tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes22:08:59.617628 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 2532133365:2532133481(116) ack 3561562349 win 964822:09:07.653466 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 116:232(116) ack 1 win 964822:08:59.617916 IP 115.113.134.3.static-mumbai.vsnl.net.in.28472 > tecmint.com.ssh: . ack 116 win 64347
Voor meer tcpdump gebruik lees : 12 Tcpdump Command Examples in Linux
5. Netstat – Netwerk Statistieken
Netstat is een command line tool voor het monitoren van inkomende en uitgaande netwerk packets statistieken en interface statistieken. Het is een zeer nuttig gereedschap voor iedere systeem beheerder om netwerk prestaties te monitoren en netwerk gerelateerde problemen op te lossen.
# netstat -a | moreActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 0 *:mysql *:* LISTENtcp 0 0 *:sunrpc *:* LISTENtcp 0 0 *:realm-rusd *:* LISTENtcp 0 0 *:ftp *:* LISTENtcp 0 0 localhost.localdomain:ipp *:* LISTENtcp 0 0 localhost.localdomain:smtp *:* LISTENtcp 0 0 localhost.localdomain:smtp localhost.localdomain:42709 TIME_WAITtcp 0 0 localhost.localdomain:smtp localhost.localdomain:42710 TIME_WAITtcp 0 0 *:http *:* LISTENtcp 0 0 *:ssh *:* LISTENtcp 0 0 *:https *:* LISTEN
Meer Netstat voorbeelden : 20 Netstat Command Examples in Linux.
6. Htop – Linux Process Monitoring
Htop is een zeer geavanceerde interactieve en real time Linux proces monitoring tool. Het lijkt veel op het Linux top commando, maar het heeft een aantal rijke functies, zoals een gebruikersvriendelijke interface om processen te beheren, sneltoetsen, verticale en horizontale weergave van de processen en nog veel meer. Htop is een tool van derden en is niet inbegrepen in Linux systemen, u moet het installeren met YUM package manager tool. Voor meer informatie over installatie, lees ons artikel hieronder.
# htop
Voor de installatie van Htop leest u : Installeer Htop (Linux Proces Monitoring) in Linux
7. Iotop – Monitor Linux Disk I/O
Iotop lijkt veel op het top-commando en het Htop-programma, maar het heeft een boekhoudfunctie voor het monitoren en weergeven van realtime Disk I/O en processen. Deze tool is zeer nuttig voor het vinden van de exacte processen en hoog gebruikte schijf lezen / schrijven van de processen.
# iotop
Voor Ioptop installatie en gebruik lees : Iotop installeren in Linux
8. Iostat – Input/Output Statistieken
IoStat is een eenvoudig hulpprogramma dat systeem input en output statistieken van opslagapparatuur verzamelt en toont. Deze tool wordt vaak gebruikt om problemen met de prestaties van opslagapparaten op te sporen, inclusief apparaten, lokale schijven, externe schijven zoals NFS.
# iostatLinux 2.6.18-238.9.1.el5 (tecmint.com) 09/13/2012avg-cpu: %user %nice %system %iowait %steal %idle 2.60 3.65 1.04 4.29 0.00 88.42Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtncciss/c0d0 17.79 545.80 256.52 855159769 401914750cciss/c0d0p1 0.00 0.00 0.00 5459 3518cciss/c0d0p2 16.45 533.97 245.18 836631746 384153384cciss/c0d0p3 0.63 5.58 3.97 8737650 6215544cciss/c0d0p4 0.00 0.00 0.00 8 0cciss/c0d0p5 0.63 3.79 5.03 5936778 7882528cciss/c0d0p6 0.08 2.46 2.34 3847771 3659776
Voor meer Iostat gebruik en voorbeelden bezoek : 6 Iostat Command Examples in Linux
9. IPTraf – Real Time IP LAN Monitoring
IPTraf is een open source console-gebaseerd real time netwerk (IP LAN) monitoring hulpprogramma voor Linux. Het verzamelt een verscheidenheid aan informatie zoals IP verkeer monitor dat over het netwerk gaat, inclusief TCP flag informatie, ICMP details, TCP/UDP verkeer onderbrekingen, TCP verbinding pakket en byne tellingen. Het verzamelt ook informatie van algemene en gedetaileerde interface statistieken van TCP, UDP, IP, ICMP, non-IP, IP checksum errors, interface activiteit etc.
Voor meer informatie en het gebruik van IPTraf tool, bezoek : IPTraf Netwerk Monitoring Tool
10. Psacct of Acct – Monitor User Activity
psacct of acct tools zijn zeer nuttig voor het monitoren van elke gebruikersactiviteit op het systeem. Beide daemons draaien op de achtergrond en houden de activiteit van elke gebruiker op het systeem in de gaten en ook welke bronnen door hen worden gebruikt.
Deze tools zijn erg nuttig voor systeembeheerders om de activiteit van elke gebruiker te volgen, zoals wat ze aan het doen zijn, welke commando’s ze hebben uitgevoerd, hoeveel bronnen door hen worden gebruikt, hoe lang ze actief zijn op het systeem etc.
Voor installatie en voorbeeldgebruik van commando’s lees het artikel over Gebruikersactiviteit monitoren met psacct of acct
11. Monit – Linux Process and Services Monitoring
Monit is een gratis open source en webgebaseerd hulpprogramma voor procesbewaking dat automatisch systeemprocessen, programma’s, bestanden, directories, machtigingen, checksums en bestandssystemen bewaakt en beheert.
Het bewaakt diensten als Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH, enzovoort. De systeemstatus kan worden bekeken vanaf de opdrachtregel of via de eigen webinterface.
Lees meer : Linux Process Monitoring met Monit
12. NetHogs – Monitor Per Process Network Bandwidth
NetHogs is een open source klein programma (vergelijkbaar met Linux top command) dat een tabblad bijhoudt van elk proces netwerk activiteit op je systeem. Het houdt ook bij hoeveel bandbreedte netwerkverkeer in real time wordt gebruikt door elk programma of toepassing.
Lees meer : Monitor Linux Network Bandwidth Using NetHogs
13. iftop – Netwerk Bandbreedte Monitoring
iftop is een ander terminal-gebaseerd gratis open source systeem monitoring hulpprogramma dat een regelmatig bijgewerkte lijst weergeeft van het netwerk bandbreedte gebruik (bron en bestemming hosts) die door de netwerk interface op uw systeem gaan. iftop is voor netwerkgebruik, wat ‘top’ doet voor CPU gebruik. iftop is een ‘top’ familie hulpprogramma dat een geselecteerde interface controleert en een huidig bandbreedte gebruik tussen twee hosts weergeeft.
Lees meer : iftop – Monitor Netwerk Bandbreedte Gebruik
14. Monitorix – System and Network Monitoring
Monitorix is een gratis lichtgewicht hulpprogramma dat is ontworpen om zo veel mogelijk systeem- en netwerkbronnen in Linux/Unix-servers te draaien en te monitoren. Het heeft een ingebouwde HTTP web server die regelmatig systeem en netwerk informatie verzamelt en weergeeft in grafieken. Het monitort gemiddelde systeembelasting en -gebruik, geheugentoewijzing, gezondheid van diskdrivers, systeemdiensten, netwerkpoorten, mailstatistieken (Sendmail, Postfix, Dovecot, etc), MySQL-statistieken en nog veel meer. Het is ontworpen om de algehele systeemprestaties te monitoren en helpt bij het detecteren van storingen, knelpunten, abnormale activiteiten etc.
Lees meer : Monitorix een systeem- en netwerkmonitoringtool voor Linux
15. Arpwatch – Ethernet Activity Monitor
Arpwatch is een soort programma dat is ontworpen om adresresolutie (MAC- en IP-adreswijzigingen) van Ethernet-netwerkverkeer op een Linux-netwerk te monitoren. Het houdt continu het Ethernet verkeer in de gaten en produceert een log van IP en MAC adreswijzigingen samen met een tijdstempel op een netwerk. Het heeft ook een functie om een e-mail waarschuwing te sturen naar de beheerder, wanneer een koppeling wordt toegevoegd of gewijzigd. Het is zeer nuttig bij het detecteren van ARP spoofing op een netwerk.
Lees meer : Arpwatch om Ethernet activiteit te monitoren
16. Suricata – Network Security Monitoring
Suricata is een performant open source Network Security and Intrusion Detection and Prevention Monitoring System voor Linux, FreeBSD en Windows.Het werd ontworpen en is eigendom van een non-profit stichting OISF (Open Information Security Foundation).
Lees meer : Suricata – A Network Intrusion Detection and Prevention System
17. VnStat PHP – Monitoring Network Bandwidth
VnStat PHP is een webgebaseerde frontend applicatie voor het meest populaire netwerkgereedschap genaamd “vnstat”. VnStat PHP controleert het netwerkverkeer in een mooie grafische modus. Het toont een totaal IN en OUT netwerkverkeer gebruik in uurlijkse, dagelijkse, maandelijkse en volledige samenvatting rapport.
Lees meer : VnStat PHP – Monitoring Network Bandwidth
18. Nagios – Network/Server Monitoring
Nagios is een toonaangevend open source krachtig monitoring systeem dat netwerk/systeem beheerders in staat stelt om server gerelateerde problemen te identificeren en op te lossen voordat ze invloed hebben op belangrijke bedrijfsprocessen. Met het Nagios systeem kunnen beheerders remote Linux, Windows, Switches, Routers en Printers monitoren in een enkel venster. Het toont kritische waarschuwingen en geeft aan of er iets mis is gegaan in uw netwerk/server wat u indirect helpt om te beginnen met herstelprocessen voordat ze zich voordoen.
Lees meer : Installeer Nagios Monitoring Systeem om Linux/Windows Hosts op afstand te monitoren
Nmon: Monitor Linux Performance
Nmon (staat voor Nigel’s performance Monitor) tool, die wordt gebruikt om alle Linux resources te monitoren zoals CPU, Geheugen, Schijfgebruik, Netwerk, Top processen, NFS, Kernel en nog veel meer. Deze tool komt in twee modi: Online Mode en Capture Mode.
De Online Mode, wordt gebruikt voor real-time monitoring en Capture Mode, wordt gebruikt om de output op te slaan in CSV-formaat voor latere verwerking.
Lees meer: Installeer Nmon (prestatiemonitoring) in Linux
Collectl: All-in-One Performance Monitoring Tool
Collectl is een krachtige en functierijke commandoregel-gebaseerde tool, die kan worden gebruikt om informatie te verzamelen over Linux systeembronnen, zoals CPU-gebruik, geheugen, netwerk, inodes, processen, nfs, tcp, sockets en nog veel meer.
Lees meer: Installeer Collectl (alles-in-één-prestatiemonitoring) in Linux