Administrator na urlopie część 2, czyli monitoring dla bardziej wymagających

dodał 4 września 2017 o 06:54 w kategorii HowTo  z tagami:
Administrator na urlopie część 2, czyli monitoring dla bardziej wymagających

Monitorowanie działania systemów i aplikacji to jeden z najczęściej zaniedbywanych obszarów pracy administratorów. Wielu incydentów można było uniknąć gdyby ktoś analizował proste anomalie. Czas to zmienić.

Miesiąc temu w naszym cyklu poradników dla początkujących i średnio zaawansowanych administratorów opisaliśmy, jak uruchomić monitoring serwera za pomocą narzędzia munin. Munin jest fajny, jeśli ktoś lubi oglądać wykresy. W komentarzach do tamtego artykułu poprosiliście jednak, by w kolejnym wpisie pójść w stronę Zabbixa. Słuchamy naszych Czytelników, zatem dzisiaj czas na kolejne narzędzie. Jeśli chcecie większej elastyczności niż oferowana przez munina i lubicie konfigurować powiadomienia o problemach, to czas zainteresować się Zabbixem. Przydaje się, by nie zachowywać się jak administratorzy na obrazku poniżej.

Administratorzy przed urlopem

Artykuł pod patronatem Aruba Cloud

We współpracy z firmą ArubaCloud pokazaliśmy Wam, jak postawić swój serwer backupów, jak skonfigurować własny serwer VPN i podłączyć do niego komputer, telefony komórkowe oraz domowy ruter a także jak schować się przed cenzurą sieci i jak zacząć serwer zabezpieczać, jak postawić swój własny zdalny pulpitswój serwer WWWjak monitorować zmiany w plikachjak zablokować reklamy na komórce, jak skonfigurować bezpieczną kopię zapasową a także jak zabezpieczyć logowanie do serwera za pomocą jednorazowych tokenów  lub za pomocą klucza Yubikey.

Jeśli nie macie jeszcze swojego własnego serwera, to jest to dobra okazja by się w taki wyposażyć. Aruba oferuje dwa miesiące korzystania ze swojego podstawowego serwera gratis – a po zakończeniu promocji będzie on Was kosztował zaledwie 4 złote miesięcznie. Instrukcję jak krok po kroku skorzystać z promocji i uruchomić swój serwer znajdziecie w tym artykule. Jeśli macie już swój serwer – to zapraszamy do lektury kolejnych akapitów.

Wstęp

Zabbix oferuje kilka opcji monitorowania:

  • monitorowanie i weryfikowanie dostępności zdalnych usług takich jak SMTP czy HTTP,
  • monitorowanie za pomocą dedykowanego agenta który może być zainstalowany na systemach Linux/Windows,
  • monitorowanie za pomocą m.in. SNMP jako alternatywa do instalacji dedykowanego agenta.

Poniżej przedstawiamy instrukcję instalacji serwera Zabbix oraz usługi agenta na tym samym serwerze. Możecie cały proces obejrzeć na filmie lub przeczytać krok po kroku kawałek niżej.

Instalacja frontendu i backendu

W systemie Debian 8 posłużymy się oficjalnymi pakietami Zabbix ze strony projektu. Dodajemy oficjalne repozytorium Zabbix do systemu Debian 8:

# wget http://repo.zabbix.com/zabbix/3.2/debian/pool/main/z/zabbix-release/zabbix-release_3.2-1+jessie_all.deb

Instalujemy pobrany pakiet:

# dpkg -i zabbix-release_3.2-1+jessie_all.deb

Aktualizujemy informacje o pakietach:

# apt-get update

Instalujemy backend oraz frontend Zabbix:

# apt-get install zabbix-server-mysql zabbix-frontend-php

Jeśli na serwerze nie posiadamy bazy danych MySQL, baza ta zostanie zainstalowana oraz zostaniemy poproszeni o ustawienie hasła dla użytkownika 'root’.

Ustawienie hasła w bazie danych MySQL dla użytkownika 'root’

Zabbix będzie zapisywał dane w bazie danych MySQL. W tym celu utworzymy dedykowanego użytkownika o loginie zabbix z prostym hasłem zabbixhaslo. Użytkownik ten będzie miał pełne prawa do bazy o nazwie zabbix.

# mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;

Ustalamy prawa dostępu oraz hasło dla użytkownika 'zabbix’:

mysql> grant all privileges on zabbix.* to [email protected] identified by 'zabbixhaslo';
mysql> FLUSH PRIVILEGES;
mysql> quit;

Importujemy schemat bazy danych:

# cd /usr/share/doc/zabbix-server-mysql
# zcat create.sql.gz | mysql -uzabbix -pzabbixhaslo zabbix

W pliku/etc/zabbix/zabbix_server.conf musimy wprowadzić informacje o utworzonym użytkowniku w bazie danych. Wprowadzamy następujące zmiany:

# vi /etc/zabbix/zabbix_server.conf

W linii 82 dopisujemy adres serwera MySQL:
DBHost=localhost

W linii 91 wprowadzamy nazwę bazy danych:
DBName=zabbix

W linii 107 wprowadzamy nazwę użytkownika bazy danych:
DBUser=zabbix

W linii 116 wpisujemy hasło:
DBPassword=zabbixhaslo

Ustawiamy strefę czasową w pliku /etc/apache2/conf-enabled/zabbix.conf:

# vi /etc/apache2/conf-enabled/zabbix.conf
W linii 19 oraz 28 ustawiamy:
php_value date.timezone Europe/Warsaw

Uruchamiamy serwer Zabbix podczas startu systemu:

# systemctl enable zabbix-server

Uruchamiamy usługi zabbix-server oraz apache2:

# service zabbix-server restart
# service apache2 restart

Instalacja i konfiguracja agenta

W repozytorium Zabbixa znajduje się pakiet 'zabbix-agent’. Na serwerach, które chcemy monitorować, instalujemy wspomniany pakiet.

# apt-get install zabbix-agent

Wprowadzamy zmiany w pliku konfiguracyjnym /etc/zabbix/zabbix_agentd.conf. W pliku tym wprowadzamy adres IP serwera, który będzie mógł się podłączyć do agenta oraz wprowadzimy nazwę hosta.

# vi /etc/zabbix/zabbix_agentd.conf
[...]
Server=127.0.0.1
[...]
Hostname=Zabbix ArubaCloud
[...]

Uruchamiamy agenta podczas startu systemu:

# systemctl enable zabbix-agent

Uruchamiamy usługę agenta:

# service zabbix-agent start

Konfiguracja frontendu

W przeglądarce podajemy adres naszego serwera gdzie zainstalowaliśmy frontend Zabbix. W domyślnej konfiguracji panel dostępny jest w katalogu /zabbix/.

Kreator konfiguracji Zabbix

W drugim kroku kreator sprawdzi nasze ustawienia PHP na serwerze:

Sprawdzenie konfiguracji

Jeśli kreator stwierdzi, że obecna konfiguracja PHP na serwerze jest poprawna, to w kolejnym kroku zostaniemy poproszeni o wprowadzenie danych uwierzytelniających do bazy danych. Wpisujemy informacje, które podaliśmy podczas instalacji i konfiguracji hosta. W naszym przypadku będzie to użytkownik zabbix z hasłem zabbixhaslo.

Wprowadzenie danych uwierzytelniających dla MySQL

Przedostatnim krokiem kreatora konfiguracji jest dodanie serwera do monitorowania. Na potrzeby artykułu będziemy monitorować serwer na którym zainstalowaliśmy backend oraz frontend Zabbix.

Dodanie serwera do monitorowania

Ostatnim krokiem kreatora jest informacja, że konfiguracja przebiegła pomyślnie, a wprowadzone przez nas dane zostały zapisane do pliku /usr/share/zabbix/conf/zabbix.conf.php.

Monitorowanie serwera Zabbix

Logujemy się do panelu administracyjnego jako użytkownik Admin z hasłem zabbix.

Panel logowania

Aby Zabbix monitorował serwer który podaliśmy podczas kreatora konfiguracji należy wybrać opcję Configuration > Hosts i przy pozycji „Zabbix server” w kolumnie Status nacisnąć na „Disabled”.

Monitorowanie lokalnego serwera

Po chwili serwer podłączy się do agenta.

Dane odebrane od agenta

Podsumowanie

W powyższym artykule pokazaliśmy Wam podstawy konfiguracji Zabbixa, by każdy, nawet początkujący Czytelnik mógł go uruchomić na swoim serwerze. W domyślnych ustawieniach Zabbixa pewnie dowiecie się sporo o swoim serwerze, jednak biorąc pod uwagę elastyczność tego narzędzia ledwo dotknęliśmy powierzchni tematu – zapraszamy Was do dalszego eksplorowania możliwości, bo naprawdę warto. A gdy wymyślicie ciekawe zastosowanie to podzielcie się z nami i innymi Czytelnikami w komentarzach.

Dla zachowania pełnej przejrzystości – artykuł ten to tekst sponsorowany, za który otrzymujemy wynagrodzenie.