Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Linux/FreeBSD
    Monitoring




Mykola Marzhan
  LVEE 2011
Проблематика

Часто даже опытные
пользователи Linux/FreeBSD
не знают что конкретно нужно
мониторить!
План

0. Цель
1. Графики
2. Мониторинг hardware
3. Мониторинг OS
4. Мониторинг сервисов




 P.S. Security мониторинг в этом
 докладе не рассматривается.
Цель
●   Отслеживание критических значений
    диагностических параметров состояния и
    уведомление инженеров об их появлении.
●   Накопление статистической информации
    для последующего анализа.
1. Графики
2.1. Температура CPU
NB: проверка температуры на некотором железе приводит к
подвисанию или перезагрузке OS.
freebsd# kldload coretemp
freebsd# sysctl -n dev.cpu.0.temperature
linux# cat /proc/acpi/thermal_zone/THRM/temperature
linux# sensors-detect                      # lm-sensors
linux# sensors                             # lm-sensors
linux# mbmon
linux# ipmitool sdr
2.2. HDD SMART
      # smartctl -a /dev/ad0
      Правильный вывод:
5 Reallocated_Sector_Ct 0x0033 200 200 140           Pre-fail Always       -   0
197 Current_Pending_Sector 0x0012 200 200 000            Old_age Always        -   0
---
SMART Error Log Version: 1
No Errors Logged
---
SMART Self-test log structure revision number 1
Num Test_Description           Status        Remaining LifeTime(hours) LBA_of_first_error
# 1 Extended offline       Completed without error   00%     283       -
2.3. Hardware RAID

●   3ware 5000/6000/7000/8000/9000/9500/9550/9650 series
    # tw_cli
    # smartctl -d 3ware,0 /dev/twa0
●   MegaRAID, Dell PERC
    # megarc -ldinfo -a0 -Lall
3.1. CPU
●   Load Average
    # uptime
●   Idle. Скачет, для критического состояния среднее за 3 минуты
    должно быть не менее 20.
    freebsd# top -q -n -u -s1 -d2 0
    linux# mpstat -P ALL 10 1
●   Idle per core
    freebsd# top -P -q -n -u -s1 -d2 0
    linux# mpstat -P ALL 10 1
3.2. HDD
●   Место
●   Нагрузка на HDD в процентах
    Скачет, для критического состояния среднее за 3
    минуты должно быть не менее 20.
    freebsd# iostat -dxz -w 10 -c 2
    linux# iostat -dx 10 2
3.3. SWAP
На сервере, где нет баз данных:
●   Должно быть не более 50-100Мб использовано.
    freebsd# pstat -T
    linux# free -m
●   Не должно быть активной записи в swap.
    freebsd# sysctl vm.stats.vm.v_swappgsout
    vm.stats.vm.v_swappgsin
    linux# cat /proc/vmstat
3.4. Memory                                HighLoad

●   Количество использованной памяти
    freebsd sysctl – vm.stats.vm.v_page_size * ( vm.stats.vm.v_page_count -
    vm.stats.vm.v_inactive_count - vm.stats.vm.v_cache_count -
    vm.stats.vm.v_free_count )
    linux# free -m
●   График по количеству памяти потребляемым каждым
    приложением.
    # /bin/ps awwwwx -o user,rss,command
3.5. Network Interface
●   График загрузки сетевого интерфейса
    freebsd# netstat -inb -I rl0
    linux# cat /proc/net/dev
●   Full-duplex
    freebsd# ifconfig rl0
    linux# ethtool eth0
●   Ошибки и коллизии
    freebsd# netstat -inb -I rl0
    linux# cat /proc/net/dev
3.6. vm.zone               HighLoad

●   vm.zone
    freebsd# sysctl -n vm.zone
●   mbuf clusters in use
    freebsd# netstat -m
    Нужно проверить что бы каждого показателя было
    не менее 10% свободно.
3.7. Sysctl                      HighLoad

●   Open files
    freebsd# sysctl kern.maxfiles kern.openfiles
    linux# sysctl fs.file-max fs.file-nr
●   Open sockets
    freebsd# sysctl kern.ipc.maxsockets kern.ipc.numopensockets
●   KVM Size
    freebsd# sysctl vm.kvm_size vm.kvm_free
●   Pipe KVA usage
    freebsd# sysctl kern.ipc.maxpipekva kern.ipc.pipekva
●   Number of sendfile(2) sf_bufs in use
    freebsd# sysctl kern.ipc.nsfbufs kern.ipc.nsfbufsused
3.8. Software bugs
●   Zombie. I see dead people!
    freebsd# top -n -u 0 | grep zombie
    linux# ps hr -Nos,pid | grep "^Z"
●   Coredumps
    freebsd# sysctl kern.corefile=/var/tmp/%U.%N.core
    linux# sysctl kernel.core_pattern=/var/tmp/%e.core
4.1. Мониторинг сервисов
4.2. Watchdog
●   Cron, ntp, syslog, sshd, sendmail, httpd, mysql.
4.3. Network              HighLoad
●   Receive queue size
    freebsd# netstat -n -p udp -a
    linux# netstat -n -u -a
●   Dropped due to full socket buffers
    freebsd# netstat -n -p udp -s
●   Packet receive errors
    linux# netstat -n -u -s
●   Number of packets dropped from the IP input queue
    freebsd# sysctl net.inet.ip.intr_queue_drops
4.4.1. Mysql                  HighLoad

    mysql> show /*!50002 GLOBAL */ status;
    mysql> show variables like 'max_connections';
●   Max_used_connections, Threads_connected,
    max_connections.
●   Questions, Slow_queries.
●   Innodb_data_reads, Innodb_data_writes.
4.4.2. MySQL Replication   HighLoad
Q & A




                           LVEE 2011

                     Mykola Marzhan

             delgod@portaone.com

http://delgod.com/lvee2011/linux_mon.pdf

More Related Content

linux and freebsd monitoring

  • 1. Linux/FreeBSD Monitoring Mykola Marzhan LVEE 2011
  • 2. Проблематика Часто даже опытные пользователи Linux/FreeBSD не знают что конкретно нужно мониторить!
  • 3. План 0. Цель 1. Графики 2. Мониторинг hardware 3. Мониторинг OS 4. Мониторинг сервисов P.S. Security мониторинг в этом докладе не рассматривается.
  • 4. Цель ● Отслеживание критических значений диагностических параметров состояния и уведомление инженеров об их появлении. ● Накопление статистической информации для последующего анализа.
  • 6. 2.1. Температура CPU NB: проверка температуры на некотором железе приводит к подвисанию или перезагрузке OS. freebsd# kldload coretemp freebsd# sysctl -n dev.cpu.0.temperature linux# cat /proc/acpi/thermal_zone/THRM/temperature linux# sensors-detect # lm-sensors linux# sensors # lm-sensors linux# mbmon linux# ipmitool sdr
  • 7. 2.2. HDD SMART # smartctl -a /dev/ad0 Правильный вывод: 5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0 197 Current_Pending_Sector 0x0012 200 200 000 Old_age Always - 0 --- SMART Error Log Version: 1 No Errors Logged --- SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Extended offline Completed without error 00% 283 -
  • 8. 2.3. Hardware RAID ● 3ware 5000/6000/7000/8000/9000/9500/9550/9650 series # tw_cli # smartctl -d 3ware,0 /dev/twa0 ● MegaRAID, Dell PERC # megarc -ldinfo -a0 -Lall
  • 9. 3.1. CPU ● Load Average # uptime ● Idle. Скачет, для критического состояния среднее за 3 минуты должно быть не менее 20. freebsd# top -q -n -u -s1 -d2 0 linux# mpstat -P ALL 10 1 ● Idle per core freebsd# top -P -q -n -u -s1 -d2 0 linux# mpstat -P ALL 10 1
  • 10. 3.2. HDD ● Место ● Нагрузка на HDD в процентах Скачет, для критического состояния среднее за 3 минуты должно быть не менее 20. freebsd# iostat -dxz -w 10 -c 2 linux# iostat -dx 10 2
  • 11. 3.3. SWAP На сервере, где нет баз данных: ● Должно быть не более 50-100Мб использовано. freebsd# pstat -T linux# free -m ● Не должно быть активной записи в swap. freebsd# sysctl vm.stats.vm.v_swappgsout vm.stats.vm.v_swappgsin linux# cat /proc/vmstat
  • 12. 3.4. Memory HighLoad ● Количество использованной памяти freebsd sysctl – vm.stats.vm.v_page_size * ( vm.stats.vm.v_page_count - vm.stats.vm.v_inactive_count - vm.stats.vm.v_cache_count - vm.stats.vm.v_free_count ) linux# free -m ● График по количеству памяти потребляемым каждым приложением. # /bin/ps awwwwx -o user,rss,command
  • 13. 3.5. Network Interface ● График загрузки сетевого интерфейса freebsd# netstat -inb -I rl0 linux# cat /proc/net/dev ● Full-duplex freebsd# ifconfig rl0 linux# ethtool eth0 ● Ошибки и коллизии freebsd# netstat -inb -I rl0 linux# cat /proc/net/dev
  • 14. 3.6. vm.zone HighLoad ● vm.zone freebsd# sysctl -n vm.zone ● mbuf clusters in use freebsd# netstat -m Нужно проверить что бы каждого показателя было не менее 10% свободно.
  • 15. 3.7. Sysctl HighLoad ● Open files freebsd# sysctl kern.maxfiles kern.openfiles linux# sysctl fs.file-max fs.file-nr ● Open sockets freebsd# sysctl kern.ipc.maxsockets kern.ipc.numopensockets ● KVM Size freebsd# sysctl vm.kvm_size vm.kvm_free ● Pipe KVA usage freebsd# sysctl kern.ipc.maxpipekva kern.ipc.pipekva ● Number of sendfile(2) sf_bufs in use freebsd# sysctl kern.ipc.nsfbufs kern.ipc.nsfbufsused
  • 16. 3.8. Software bugs ● Zombie. I see dead people! freebsd# top -n -u 0 | grep zombie linux# ps hr -Nos,pid | grep "^Z" ● Coredumps freebsd# sysctl kern.corefile=/var/tmp/%U.%N.core linux# sysctl kernel.core_pattern=/var/tmp/%e.core
  • 18. 4.2. Watchdog ● Cron, ntp, syslog, sshd, sendmail, httpd, mysql.
  • 19. 4.3. Network HighLoad ● Receive queue size freebsd# netstat -n -p udp -a linux# netstat -n -u -a ● Dropped due to full socket buffers freebsd# netstat -n -p udp -s ● Packet receive errors linux# netstat -n -u -s ● Number of packets dropped from the IP input queue freebsd# sysctl net.inet.ip.intr_queue_drops
  • 20. 4.4.1. Mysql HighLoad mysql> show /*!50002 GLOBAL */ status; mysql> show variables like 'max_connections'; ● Max_used_connections, Threads_connected, max_connections. ● Questions, Slow_queries. ● Innodb_data_reads, Innodb_data_writes.
  • 22. Q & A LVEE 2011 Mykola Marzhan delgod@portaone.com http://delgod.com/lvee2011/linux_mon.pdf