Мониторинг Linux системы с помощью Scout Realtime и Monitorix

Мониториг ресурсов сервера всегда интересный вопрос. Я постоянно ищу новые интструменты для мониторинга, желательно что-бы любая программа мониторинга обладала веб-интерфейсом и умела мониторить все ресурсы сервера, такие как память, процессор, сеть, диски и т.д. К сожалению таких утилит не так уж много, но кое-что имеется, я хочу рассказать про программы Scout Realtime и Monitorix, обе они обладают веб интерфесом и умеют строить графики, но Scout Realtime пока находится в тестировании и у нее есть баги, по-этому для использования на продакшене я бы ее не советовал. Но мы тут тесты делаем, а не продакшен заводим, поэтому я уверен, что нам будет интересно взглянуть что она может и как ее установить в Centos.

Установка Scout Realtime

Установка Scout Realtime в Centos 6.5 x86_64. Для корректной работы утилиты необходим Ruby 1.9.3+ в системе. В репозиториях версия по младше по этому ставить нужно и сырцов. Короче валите вот эту кучу пакетов в систему (желательно что-бы REMI & EPEL уже были в системе):

yum groupinstall "Development Tools"
yum install gcc-c++ patch readline readline-devel zlib zlib-devel zlib zlib-devel
yum install bzip2 autoconf automake libtool bison iconv-devel openssl-devel
yum install gcc-c++ patch readline readline-devel
yum groupinstall "Development Tools"
yum install gcc-c++ patch readline readline-devel zlib zlib-devel zlib zlib-devel
yum install bzip2 autoconf automake libtool bison iconv-devel openssl-devel
yum install gcc-c++ patch readline readline-devel

Загружаем Ruby и Rubygems:

mkdir /root/ruby/
wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p547.tar.gz
wget http://pkgs.fedoraproject.org/repo/pkgs/rubygems/rubygems-1.8.25.tgz/1376a258d43c53750a8df30e67853e10/rubygems-1.8.25.tgz
mkdir /root/ruby/
wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p547.tar.gz
wget http://pkgs.fedoraproject.org/repo/pkgs/rubygems/rubygems-1.8.25.tgz/1376a258d43c53750a8df30e67853e10/rubygems-1.8.25.tgz

Собираем Ruby:

tar xvf ruby-1.9.3-p547.tar.gz
cd ruby-1.9.3-p547
./configure
make 
make install
tar xvf ruby-1.9.3-p547.tar.gz
cd ruby-1.9.3-p547
./configure
make 
make install

Собираем Rubygems:

tar xvf rubygems-1.8.25.tgz
cd rubygems-1.8.25/
ruby setup.rb
tar xvf rubygems-1.8.25.tgz
cd rubygems-1.8.25/
ruby setup.rb

Проверяем версии:

ruby --version
ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-linux]
ruby --version
ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-linux]

Ставим и запускаем Scout Realtime:

gem install scout_realtime
scout_realtime start
gem install scout_realtime
scout_realtime start

Останавливаем Scout Realtime так:

scout_realtime stop
scout_realtime stop

В браузере идем по адресу:
http://server IP:5555/

У меня на сервере это выглядит вот так:
SCOUT

Установка Monitorix

Эта программа уже давно находится в разработке, она стабильна и пресутствует в репозиториях всех популярных дистрибутивов:

yum install monitorix
yum install monitorix

Или можно ставить свежий RPM пакет с сайта, но прежде нужно поставить пакован пакетов:

yum install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI
yum install perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple perl-IO-Socket-SSL
rpm -i http://www.monitorix.org/monitorix-3.5.1-1.noarch.rpm
yum install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI
yum install perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple perl-IO-Socket-SSL
rpm -i http://www.monitorix.org/monitorix-3.5.1-1.noarch.rpm

После чего запускам:

service monitorix start
service monitorix start

В браузере идем по адресу:
http://server IP:8080/monitorix

У меня на сервере это выглядит вот так:
graphs_1

Стоит учесть, что Мonitorix это не мониторинг в реальном времени.
Что умеет программа Мonitorix:
– Мониторить загрузку системы (System load average), активные процессы, ядро и распределение памяти
– Мониторит статус дисков, температуру и состояние
– Мониторит использование файловой системы и I/O
– Мониторит сетевой трафик (до 10 сетевых устройств)
– Мониторит системные сервисы, включая SSH, FTP, Vsftpd, ProFTP, SMTP, POP3, IMAP, POP3, VirusMail
– MTA Mail
– Мониторит трафик на сетевых портах включая TCP, UDP, и т.д.
– Показывает FTP статистику
– Показывает Apache статистику
– Показывает MySQL статистику
– Показывает Squid Proxy Web Cache статистику
– Показывает Fail2ban статистику
– Мониторит удаленные сервера
– Просмотр статистика за день, месяц, год
– Возможность увеличивать графики, открывать в отдельном окне
– Встроенный HTTP сервер.