Monitoring i benchmarking Sprzętu pod Linuksem
Michał Olber The Camels S.C.
O czym opowiem Narzędzia do monitorowania Htop Lm-sensors ksensors Gkrellm Nagios Monitor systemu hdparm
Oprogramowanie do testowania Identyfikacja sprzętu Super Pi Unigine Phoronix Test Suite PTS LiveCD Stresslinux
Htop
htop - program wyświetlający informacje o aktualnym obciążeniu systemu przez poszczególne procesy działający w konsoli systemu Unix. Wyświetlane dane mogą być sortowane według zużywanej mocy obliczeniowej procesora, ilości zajmowanej pamięci RAM, czasu działania, numeru procesu itd. Zastosowanie programu htop jest takie samo jak w przypadku polecenia top, posiada on jednak wygodniejszy dla użytkownika interfejs.
Lm-sensors Gnome-sensors-applet
KSensors
KSensors
Gkrellm GKrellM (GNU Krell Monitors) - to program monitorujący takie parametry systemu operacyjnego jak wykorzystanie procesora, uruchomione procesy, zużycie pamięci, I/O dysku twardego i karty sieciowej. Dostępnych jest wiele wtyczek jak np. monitorowanie temperatury, poczty, monitorowania sieci P2P, informacje o pogodzie oraz sterowanie odtwarzaczem muzyki. GKrellM został napisany przy użyciu biblioteki GTK+ dzięki czemu bez problemu można go uruchomić na wielu systemach operacyjnych.
Nagios Popularny program działający (jako demon) w systemie Linux do monitorowania sieci, urządzeń sieciowych, aplikacji oraz serwerów rozpowszechnianym na podstawie licencji open source. Może monitorować hosty oraz usługi wg określonych ustawień, dzięki czemu jest możliwe dostosowanie go do swoich potrzeb. W razie wykrycia problemu Nagios może wysłać pocztę, info na pager lub SMS do administratora systemu z informacją o problemie. Nagios posiada budowę modułową, czyli bazuje na tzw. wtyczkach. Niektóre funkcje Nagiosa: Monitorowanie usług sieciowych (SMTP, POP3, HTTP, NNTP, ICMP, SNMP, FTP, SSH) Monitorowanie użycia zasobów systemowych (procesor użycie, dysku twardego, logi systemowe) w większości sieciowych systemów operacyjnych, w tym Microsoft Windows za pomocą NRPE_NT. Umożliwia proste projektowanie wtyczek w razie potrzeby monitorowania własnych usług, przy użyciu jednego z wielu języków programowania (Bash, C++, Perl, Ruby, Python, PHP, C#, etc.) Powiadamianie w razie wykrycia problemów za pomocą e-maila, pagera, SMS lub innych zdefiniowanych metod powiadamiania we wtyczkach
Monitor systemu
Conky
hdparm Program pracujący pod konsolą dla systemów operacyjnych Linux, który pozwala sprawdzać oraz ustawiać parametry pracy dysków twardych. Program obsługuje dyski PATA, SATA, SAS i poprzez SAT (SCSI-ATA Command Translation) niektóre dyski USB. Polecenie hdparm jest podstawową metodą wpływania na wydajność pracy HDD bez koniecznośc kompilacji jądra systemu. Hdparm jest wolnym oprogramowaniem dostępnym na licencji BSD. Parametry, których użycie może spowodować uszkodzenie systemu plików [edytuj] -n ustawia flagę na "ang. ignore write errors" (ignoruj błędy zapisu) -p ustawia tryb PIO -u ustawia flagę "ang. interrupt-unmask" -U wyrejestrowuje interfejs IDE -w resetuje urządzenie -X ustawia tryb IDE
Wykrywanie i testowanie sprzętu
Identyfikacja sprzętu Identyfikacja procesora cat /proc/cpuinfo cat /var/log/dmesg grep -i cpu Identyfikacja kontrolera RAID lspci grep -i raid Identyfikacja dysków twardych fdisk -l grep -i disk hdparm -i /dev/sda grep -i model
Identyfikacja napędów optycznych cat /var/log/dmesg grep ROM hdparm -i /dev/hde grep -i model Identyfikacja płyty głównej dmidecode -t baseboard Identyfikacja biosu dmidecode -t bios Identyfikacja pamięci dmidecode -t memory
Identyfikacja karty sieciowej lspci grep -i eth cat /var/log/dmesg grep -i eth Identyfikacja karty graficznej lspci grep -i vga Identyfikacja karty dźwiękowej lspci grep -i audio Urządzenia USB lsusb Ogólne sprawdzanie sprzętu lspci
Super Pi Program do sprawdzania stabilności procesora, jego szybkości oraz wydajności pamięci RAM 20 means 20 bit number, which equals 1m 21 means 21 bit number, which equals 2m 22 means 22 bit number, which equals 4m 23 means 23 bit number, which equals 8m 24 means 24 bit number, which equals 16m 25 means 25 bit number, which equals 32m
Unigine Sprawdzanie wydajności karty graficznej, jak i procesora oraz pamięci RAM Działa na zasadzie 3DMarków Rodzaje: Heaven Benchmark Tropics Benchmark Sanctuary Benchmark Unigine v0.33 (obsolete)
Supported hardware platforms: o IBM PC x86 32/64 bit o PowerPC 64 bit SSE, SSE3, 3DNow!, Altivec optimizations Multicore CPU support Supported operating systems: o MS Windows 2000 / XP / 2003 / Vista / Windows7 o Linux 2.4 / 2.6 Supported compilers: o MS Visual C++ 2005 / 2008 o GCC 3.4.x / 4.x.x Performance profiling Memory management system Data compression & encryption Save/restore system (full serialization support) Extensible XML-based data structures
Multiple API render: o Direct3D 9 o Direct3D 10 o Direct3D 11 o OpenGL Supported video cards: o NVIDIA GeForce GTX 260-295 (D10U-xx) o NVIDIA GeForce 9400-9800 (G9x) o NVIDIA GeForce 8400-8800 (G8x) o NVIDIA GeForce 7100-7950 (G7x) o NVIDIA GeForce 6100-6800 (NV4x) o ATI Radeon HD 5750 - HD 5970 (R8xx) o ATI Radeon HD 4350 - HD 4970 (R7xx) o ATI Radeon HD 3430 - HD 3870 (RV620-RV680) o ATI Radeon HD 2350 - HD 2900 (R6xx) Performance profiler Auto detection of GPU capabilities Performance-critical optimizations for different video cards Different shader profiles Support of NVIDIA SLI and AMD CrossFire technologies Stereo rendering, supported output devices are: o iz3d stereo monitors o Anaglyph glasses o Any dualscreen stereo system with independent input for each eye Arbitrary resolution support (including widescreen) Xinerama support (Linux only) o ATI Radeon X1300 - X1950 (R5xx) Support of GLSL and HLSL shaders Shader Model 5.0 support (vertex, hull, domain, geometry, pixel and compute shaders) Hardware tessellation support DirectCompute support
Phoronix Test Suite Najbardziej zaawansowany zestaw do testowania sprzętu pod Linuksem, BSD i Mac OS X 120 benchmarków i 50 profili testowych Architektura oparta na XML Bazuje na PHP, GTK2+ oraz CLI Globalny system przechowywania wyników Graficzny system testów Monitoring i identyfikacja sprzętu
StressLinux Stresslinux dystrybucją bazową jest opensuse, została zaprojektowana do testów wydajnościowych komputera. Podczas których m.in. sprawdza moc sprzętu, stabilność pracy podczas dużego obciążenia.
Pytania??
Kontakt michal.olber@thecamels.org