безкоштовно з міських телефонів України
Київ | 044 392-73-56 |
Харків | 057 728-49-18 |
Дніпро | 056 790-86-00 |
Одеса | 048 734-56-54 |
Львів | 032 229-58-50 |
Миколаїв | 051 270-12-63 |
Полтава | 053 262-53-74 |
Запоріжжя | 061 228-69-91 |
Zabbix є відкритим програмним забезпеченням для моніторингу мереж і програм, за допомогою якого можна в реальному часі відстежувати безліч метрик, зібраних з серверів, віртуальних машин і будь-яких інших мережних пристроїв.
В інструкції використовується два сервери.
Перед виконанням інструкції необхідно попередньо на першому сервері встановити Apache, MySQL та PHP.Рекомендується на обох серверах створити не root користувача з доступом до sudo.
В інструкції використовується текстовий редактор nano, для якого потрібно виконати команду:
yum install nano
Процедура моніторингу віддаленого VPS в zabbix має такий вигляд:
Переходимо на перший сервер, на якому були встановлені Apache, MySQL та PHP.
Додаємо офіційний репозиторій Zabbix:
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Встановлюємо Zabbix з підтримкою MySQL:
sudo yum install zabbix-server-mysql zabbix-web-mysql
Встановлюємо агент Zabbix, який збиратиме дані про сервер Zabbix:
sudo yum install zabbix-agent
Налаштовуємо базу даних MySQL для Zabbix.
Підключаємося до mysql, вказавши при підключенні ім'я користувача root, яке було призначене при встановленні mysql:
mysql -uroot -p
Створюємо базу даних zabbix із підтримкою символів UTF-8:
create database zabbix character set utf8;
Потім створіть користувача, за допомогою якого Zabbix зможе взаємодіяти з БД, та виберіть пароль для нього (в інструкції вказано пароль 5N1z5V5y4I0u6O3e):
grant all privileges on zabbix.* to zabbix@localhost identified by '5N1z5V5y4I0u6O3e';
Скидаємо привілеї:
flush privileges;
Закриваємо MySQL:
quit;
Переходимо до каталогу /usr/share/doc/zabbix-server-mysql-3.0.16
cd /usr/share/doc/zabbix-server-mysql-3.0.16
Імпортуємо базову схему бази даних Zabbix, що постачається разом із програмою, вказавши після виконання команди пароль користувача zabbix, який раніше був вказаний при створенні бази даних zabbix:
zcat create.sql.gz | mysql -uzabbix -p zabbix
Для взаємодії сервера Zabbix з базою даних необхідно додати пароль користувача бази даних до конфігураційного файлу Zabbix.
Відкриваємо файл /etc/zabbix/zabbix_server.conf
sudo nano /etc/zabbix/zabbix_server.conf
і змінюємо рядок (замість 5N1z5V5y4I0u6O3e необхідно вказати власний пароль, призначений користувачеві zabbix):
# DBPassword=
на рядок:
DBPassword=5N1z5V5y4I0u6O3e
Зберігаємо зміну у файлі, натиснувши клавіші Ctrl+x , потім клавішу y і потім клавішу Enter.
Налаштовуємо PHP для підтримки Zabbix.
Відкриваємо файл /etc/httpd/conf.d/zabbix.conf:
sudo nano /etc/httpd/conf.d/zabbix.conf
та змінюємо рядок:
# php_value date.timezone Europe/Riga
на рядок:
php_value date.timezone Europe/Kiev
Зберігаємо зміну у файлі, натиснувши клавіші Ctrl+x , потім клавішу y і потім клавішу Enter.
Перезапускаємо Apache:
sudo systemctl restart httpd
Запускаємо сервер Zabbix:
sudo systemctl start zabbix-server
Переконуємося, що сервер Zabbix успішно запущено:
sudo systemctl status zabbix-server
Включаємо автозапуск Zabbix:
sudo systemctl enable zabbix-server
Відкриваємо порт 10050 та 10051:
sudo firewall-cmd --permanent --zone=public --add-port=10050/tcp sudo firewall-cmd --permanent --zone=public --add-port=10051/tcp sudo firewall-cmd --reload
Встановлюємо веб-інтерфейс Zabbix.
У браузері відкриваємо адресу (замість 93.190.42.52 необхідно вказати IP адресу власного сервера):
http://93.190.42.52/zabbix/
На кроці Welcome натискаємо кнопку Next
На кроці Check of pre-requisites натискаємо кнопку Next
На кроці Configure DB connection заповнюємо дані для підключення до раніше створеної бази даних zabbix, після чого натискаємо кнопку Next.
На кроці Zabbix server details залишаємо за замовчуванням осі і натискаємо кнопку Next.
На кроці Pre-installation summary натискаємо кнопку Next.
На кроці Install натискаємо кнопку Finish.
Після цього відкриється вікно авторизації в zabbix.
Переходимо на другий сервер.
Встановлюємо офіційний репозиторій Zabbix:
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Встановлюємо агент Zabbix:
sudo yum install zabbix-agent
Генеруємо ключ PSK (ключ необхідно скопіювати, тому він знадобиться при подальшому налаштуванні):
sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Дивимося ключ і копіюємо, тому він знадобиться на подальших етапах:
cat /etc/zabbix/zabbix_agentd.psk
Для забезпечення безпечного з'єднання з сервером Zabbix відкриваємо налаштування агента Zabbix:
sudo nano /etc/zabbix/zabbix_agentd.conf
Змінюємо рядок:
Server=127.0.0.1
на рядок (замість 93.190.42.52 необхідно вказати власну IP адресу сервера Zabbix):
Server=93.190.42.52
Змінюємо рядок:
# TLSConnect=unencrypted
на рядок
TLSConnect=psk
Змінюємо рядок:
TLSAccept=unencrypted
на рядок:
TLSAccept=psk
Змінюємо рядок:
# TLSPSKIdentity=
на рядок:
TLSPSKIdentity=PSK 001
Змінюємо рядок:
# TLSPSKFile=
на рядок:
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
Зберігаємо зміну у файлі, натиснувши клавіші Ctrl+x , потім клавішу y і потім клавішу Enter.
Запускаємо агент Zabbix:
sudo systemctl start zabbix-agent
Включаємо автозапуск агента Zabbix:
sudo systemctl enable zabbix-agent
Переконуємося, що агент Zabbix успішно запущено:
sudo systemctl status zabbix-agent
Для відкриття портів 10050 та 10051 відкриваємо файл /etc/sysconfig/iptables
sudo nano /etc/sysconfig/iptables
та після рядка:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
вставляємо наступні рядки:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 10051 -j ACCEPT
Зберігаємо зміну у файлі, натиснувши клавіші Ctrl+x , потім клавішу y і потім клавішу Enter.
Оновлюємо інформацію в iptables:
sudo service iptables reload
Включаємо firewalld в іносимо додаткові правила:
sudo systemctl start firewalld sudo firewall-cmd --permanent --zone=public --add-port=10050/tcp sudo firewall-cmd --permanent --zone=public --add-port=10051/tcp sudo firewall-cmd --reload
У браузері відкриваємо адресу (замість 93.190.42.52 необхідно вказати IP адресу власного сервера):
http://93.190.42.52/zabbix/index.php
Ім'я користувача за промовчанням: admin
Пароль за замовчуванням: zabbix
Щоб сервер Zabbix почав відстежувати встановлений агент, необхідно додати його до списку хостів через веб-інтерфейс.
У верхній панелі натискаємо в розділі "Configuration" на підрозділ "Hosts" і потім на кнопку "Create host", що знаходиться у правому верхньому кутку:
На екрані з'явиться сторінка хоста.
У полях «Host name» та «IP address» вказуємо ім'я та IP-адресу клієнта (замість 93.190.42.60 (IP-адреса другого сервера) необхідно вказати IP-адресу власного сервера).
Далі вибираємо зі списку "Other groups" групу "Linux servers" і переносимо її в "In groups".
Переходимо на вкладку Templates.
У полі "Link new templates" вводимо "Template OS Linux", вибираємо введений шаблон і натискаємо на кнопку "Add", щоб додати шаблон.
Переходимо на вкладку "Encryption".
Вибираємо «PSK» у «Connections to host» та «Connections from host».
У «PSK identity» вказуємо ім'я ключа, який раніше було встановлено у файлі /etc/zabbix/zabbix_agentd.conf для параметра «TLSPSKIdentity» (в даному випадку PSK 001).
У PSK вказуємо ключ, який зберігається в /etc/zabbix/zabbix_agentd.psk і який був скопійований на одному з попередніх етапів.
Після цього натискаємо кнопку «Add».
Бачимо, що хост з ім'ям MyHost додався:
Щоб переглянути дані агента, натискаємо у розділі Monitoring на пункт Latest data, у полі Host groups вибираємо Linux servers, у полі MyHost вибираємо MyHost та натискаємо на кнопку Filter.
Бачимо дані моніторингу:
Див. також:
Моніторинг віддалених серверів за допомогою Zabbix