- Вступ
- Підготовка сервера до установки
- Установка сервера Zabbix 3.2
- Налаштування email сповіщень
- Установка zabbix agent на CentOS 7
- Установка zabbix агент на Windows і настройка моніторингу
- висновок
- Відео
У вересні 2016 року відбувся чергове оновлення моєї улюбленої системи моніторингу zabbix. Про найбільш значущих змінах я вже розповідав в статті про оновлення zabbix 3.0 до 3.2 . Зараз хочу підготувати матеріал для максимально швидкого встановлення і налаштування цієї системи. Я вже протестував нову версію, багів не помітив, значить можна встановлювати і використовувати нову версію 3.2.
зміст:
- 1. Введення
- 2 Підготовка сервера до установки
- 3 Установка сервера Zabbix 3.2
- 4 Налаштування email сповіщень
- 5 Установка zabbix agent на CentOS 7
- 6 Установка zabbix агент на Windows і настройка моніторингу
- 7 Висновок
- 8 Відео
- 9 Додаткові матеріали по CentOS
- 10 Додаткові матеріали по Zabbix
Вступ
Я вже багато разів розповідав і описував сучасну, безкоштовну, популярну систему моніторингу zabbix. Повторюватися в черговий раз не хочеться. Для тих, хто вперше потрапив на мій сайт і не знайомий з попередніми матеріалами, поділюся деякими посиланнями на статті.
Невеликий опис самої системи можна побачити в матеріалах, що стосуються установки попередніх версій - 2.4 і 3.0 . Інформацію про зміни в різних версіях можна подивитися в матеріалах по оновленню - 2.4 -> 3.0 , 3.0 -> 3.2 .
Незважаючи на те, що нові версії zabbix виходять досить часто, матеріали по налаштуванню моніторингу різних систем і сервісів не застарівають і залишаються актуальним для найновіших релізів:
- Установка і настройка zabbix проксі на CentOS 7
- Моніторинг розміру бекапа
- Моніторинг значень з текстового файлу
- Моніторинг часу делегування домену
- моніторинг Synology
- моніторинг бекапов
- Моніторинг транков (trunk) в asterisk
- Моніторинг програмного рейду mdadm
- Моніторинг доступності служби linux
- Моніторинг MySQL реплікації
- Моніторинг web сайту
- Моніторинг web сервера nginx і php-fpm
- Налаштування моніторингу температури
Команда заббікс уважно стежить за зворотною сумісністю своїх продуктів. Завдяки цьому перехід на нові версії відбувається безболісно. Немає необхідності перенастроювати або виправляти старі напрацювання. У нових версіях тільки додається функціонал, старий частіше за все не зазнає змін, їм можна далі користуватися. Приступимо до встановлення останньої версії zabbix 3.2.
Підготовка сервера до установки
Починаємо традиційно з підготовки робочого оточення. Насамперед вам необхідно встановити і налаштувати сервер CentOS 7. Далі нам потрібно налаштувати web сервер для роботи інтерфейсу управління. У мене є детальний матеріал на тему настройки web сервера на centos 7 , Можете ознайомитися з ним і налаштувати уважно і осмислено. Далі я буду просто приводити команди установки, без пояснень. У цій статті я буду робити стандартну установку Zabbix на традиційний веб сервер apache + php. Якщо ви хочете, щоб ваш заббікс працював на веб сервері nginx + php-fpm, читайте окремий матеріал по установці zabbix на nginx і php-fpm .
Почнемо з оновлення системи:
# Yum -y update
Робота буде проходити на наступній версії системи:
Відключаємо SElinux. Любителям з ним повозитися, далі можна не читати. Не люблю суперечок на тему SElinux. Кожен сам вирішує для себе в конкретній ситуації, потрібен він йому на сервері чи ні. Я не бачу сенсу з ним морочитися на сервері моніторингу в локальній мережі.
# Mcedit / etc / sysconfig / selinux
Редагуємо рядок:
SELINUX = disabled
і перезавантажуємося.
Тепер встановимо mariadb. Її необхідно ставити окремо, чомусь вона не встановлюється як необхідна залежність при установці самого сервері zabbix.
Про всяк випадок згадаю для тих, хто не знає, що таке mariadb і чому ми ставимо її, а не mysql. Mariadb - відгалуження mysql. Вони повністю сумісні, можливий в будь-який момент перехід з однієї СУБД на іншу і назад. Є інформація, що mariadb спритніші працює mysql і люди потихеньку перебираються на неї. Розробники CentOS починаючи з версії 7 пропонують її як сервер баз даних за замовчуванням.
# Yum install -y mariadb mariadb-server
Запускаємо mariadb і додаємо її в автозавантаження:
# Systemctl start mariadb # systemctl enable mariadb.service
Відпрацьовуємо скрипт початкової настройки mysql:
# / Usr / bin / mysql_secure_installation
Всі підготовчі роботи виконані, рухаємося далі.
Установка сервера Zabbix 3.2
Підключаємо офіційний репозиторій 3.2:
# Yum install http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
Встановлюємо Zabbix сервер з веб-інтерфейсом і з базою даних MySQL:
# Yum install -y zabbix-server-mysql zabbix-web-mysql
Чекаємо закінчення завантаження всіх залежностей. Після цього потрібно створити користувача і базу даних для моніторингу. Якщо ви раніше налаштовували окремо web сервер по моїй статті, то можете зробити це через phpmyadmin. Якщо у вас його немає, то робимо все через консоль.
# Mysql -uroot -ptopsecret> create database zabbix character set utf8 collate utf8_bin; > Grant all privileges on zabbix. * To zabbix @ localhost identified by 'zabpassword'; topsecret пароль користувача root mysql, це не системний root zabpassword пароль користувача zabbix, у якого повний доступ до бази mysql zabbix
Тепер імпортуємо схему БД і початкові дані.
# Zcat / usr / share / doc / zabbix-server-mysql- 3.2.0 /create.sql.gz | mysql -uroot -ptopsecret zabbix
Звертаю увагу на виділений шлях. Можливо, шлях буде інший, коли ви будете встановлювати, так як вийде нова версія. Майте це на увазі.
Тепер редагуємо файл конфігурації сервера заббікс. Прописуємо дані для підключення до БД.
# Mcedit /etc/zabbix/zabbix_server.conf
Змінюємо рядки:
DBHost = localhost DBName = zabbix DBUser = zabbix DBPassword = zabpassword
Цих мінімальних налаштувань досить, для роботи сервера. Запускаємо його і додаємо в автозавантаження.
# Systemctl enable zabbix-server # systemctl start zabbix-server
Перевіряємо лог файл на наявність помилок.
# Cat /var/log/zabbix/zabbix_server.log
Якщо у вас так само, значить все в порядку. Сервер штатно запустився і готовий до роботи.
Для продовження налаштування сервера, нам потрібно зайти в web інтерфейс. Перед цим відредагуємо файл конфігурації web сервера. Відкриваємо конфиг і раскомментіруем один рядок, змінивши її під свій часовий пояс.
# Mcedit /etc/httpd/conf.d/zabbix.conf php_value date.timezone Europe / Moscow
Зберігаємо файл. Тепер запускаємо httpd і додаємо його в автозавантаження.
# Systemctl start httpd # systemctl enable httpd
Можна заходити на веб інтерфейс за адресою http://192.168.1.25/zabbix, де 192.168.1.25 ip адресу сервера, де встановлюємо і налаштовуємо моніторинг.
На цьому етапі важливо перевірити настройки firewalld. Якщо ви його не налаштовували і не відключали, то швидше за все за вказаною адресою у вас нічого не відкриється. У даній статті я не буду відволікатися на настройку фаервола, це тема окремої розмови. детально питання настройки iptables я розглянув окремо. Або налаштуйте firewalld, або просто вимкніть. У наведеній посиланням розказано, як це зробити.
Відкриваємо в браузері web інтерфейс zabbix. Нас зустрічає сторінка вітання. Якщо у вас те ж саме, ви на вірному шляху.
Тиснемо Next step і потрапляємо на сторінку перевірок. Якщо все робили точно по інструкції, то всі перевірки у вас будуть пройдені.
Рухаємося далі і вказуємо параметри для підключення до mysql. Дані ті ж, що ми вказували раніше при створенні БД і користувача.
На наступному етапі треба вказати адресу сервера і порт, на якому він буде працювати. Ми залишаємо значення за умовчанням.
Еше раз перевіряємо всі налаштування. Якщо все в порядку, рухаємося далі на заключний етап установки.
Якщо отримали це повідомлення, то вітаю, установка сервера моніторингу Zabbix 3.2 закінчена.
Натискаєте Finish і потрапляєте на сторінку логіна в систему. Дані за замовчуванням наступні:
Користувач Admin Пароль zabbix
Нас зустрічає гола панель управління, так як ніяких параметрів ми не спостерігаємо і не маємо жодного об'єкта збору даних.
Сервер готовий до роботи. Збір даних ми налаштуємо трохи пізніше, встановивши zabbix агент на цей же сервер. А поки зробимо деякі мінімальні і необхідні настройки на сервері.
Налаштування email сповіщень
У версії 3.2 є настройка повідомлень з авторизацією по smtp. Раніше для реалізації такої очевидної і необхідної функції доводилося користуватися сторонніми програмами і скриптами. Я писав окремо про це - відправка email повідомлень з авторизацією smtp . Тепер все це в минулому. Налаштуємо відправку повідомлень через web інтерфейс.
Йдемо в розділ Administration -> Media types і натискаємо на Email.
Вказуємо наступні настройки для відправки пошти через gmail
Це ми налаштували адресу відправки. Тепер потрібно користувачеві додати адресу для отримання. Для цього йдемо в Administration -> Users, вибираємо користувача Admin.
Йдемо в закладку Media і тиснемо add.
Вказуємо поштову скриньку одержувача
Тиснемо Add, потім Update. Далі потрібно активувати відправлення повідомлень щодо подій. Для цього йдемо в Configuration -> Actions і тиснемо на Disabled, щоб вона стала Enabled.
Все, відправлення повідомлень ми налаштували, залишилося почекати спрацьовування тригера, щоб перевірити.
Установка zabbix agent на CentOS 7
Додамо тепер хоча б одного агента моніторингу, щоб перевірити роботу системи. Встановлювати будемо на цей же сервер. Робиться це просто:
# Yum -y install zabbix-agent
Для роботи з сервером, який встановлений локально на цій же машині, більше ніяких налаштувань не треба робити. Якщо ж ви будете встановлювати zabbix agent на віддалену машину, то у файлі конфігурації агента /etc/zabbix/zabbix_agentd.conf потрібно буде поставити такі параметри:
# Mcedit /etc/zabbix/zabbix_agentd.conf Server = 192.168.1.25 ServerActive = 192.168.1.25 Hostname = srv10 # ім'я вашого вузла моніторингу, яке буде вказано на сервері zabbix
Запускаємо агент і додаємо в автозавантаження:
# Systemctl start zabbix-agent # systemctl enable zabbix-agent
Перевіряємо лог файл.
# Cat /var/log/zabbix/zabbix_agentd.log 21197: 20150912: 212555.935 no active checks on server [127.0.0.1:10051]: host [Zabbix server] not monitored
У мене там наступна помилка. Я знаю з чим вона пов'язана. На сервері за замовчуванням вже доданий локальний host для моніторингу, але він відключений. Щоб його включити, йдемо в розділ Configuration -> Hosts і активуємо Zabbix server натисканням на Disabled, щоб він став Enabled.
Можна почекати, або вручну перезапустити агент, щоб відразу перевірити зміни:
# Systemctl restart zabbix-agent
Для надійності, перевіряємо ще раз лог файл на наявність помилок. Їх не повинно бути. Агент заробив і почав відправляти дані на сервер. Щоб перевірити надходження даних, треба почекати пару хвилин і йти в розділ Monitoring -> Latest data. Вибрати там наш єдиний хост і натиснути Apply.
Видно, що дані вже почали надходити.
Тепер спробуємо зупинити агент і перевірити, чи прийде повідомлення на пошту. Йдемо в консоль і вимикаємо агента:
# Systemctl stop zabbix-agent
Чекаємо мінімум 5 хвилин. Саме такий інтервал вказано за замовчуванням для спрацьовування тригера на недоступність агента. Після цього перевіряємо Dashboard.
При наведенні мишки на слово Done в стовпці Actions ви побачите інформацію про те, що сповіщення по email було надіслано користувачеві Admin. На пошті у вас буде лист:
Після відновлення роботи агента, ви ще раз отримаєте повідомлення про те, що він тепер доступний.
Установка zabbix агент на Windows і настройка моніторингу
Тепер для повноти картини додамо до сервера один агент, встановлений на windows машину і налаштуємо її моніторинг. Для цього йдемо на сторінку завантажень http://www.zabbix.com/download.php і викачуємо найостанніший агент для Windows. Всі агенти знаходяться в розділі Zabbix pre-compiled agents. Пряме посилання на останню версію на поточний момент - zabbix_agents_3.2.0.win.zip
Розпаковуємо архів. Створюємо на диску С: папку zabbix і купируя туди наступні файли:
- zabbix_agentd.exe
- zabbix_get.exe
- zabbix_sender.exe
- zabbix_agentd.win.conf
Виконувані файли берете тієї розрядності, яка у вас в системі. У вихідному архіві є як x32 так і x64. Далі відкриваємо командний рядок з правами адміністратора і виконуємо наступну команду для установки zabbix agent на windows:
c: /zabbix/zabbix_agentd.exe --config c: /zabbix/zabbix_agentd.win.conf --install
Відкриваємо файл zabbix_agentd.win.conf будь-яким текстовим редактором і змінюємо наступні параметри:
Server = 192.168.1.25 ServerActive = 192.168.1.25 Hostname = win7-01
Тепер відкриваємо оснащення зі службами, шукаємо службу з ім'ям Zabbix agent і запускаємо її.
Щоб працював моніторинг windows машини, потрібно додати на сервер моніторингу host з таким же hostname, що ми вказали в конфіги агента. Для цього йдемо в web панель, відкриваємо розділ Configuration -> Hosts і тиснемо Create host.
На першій вкладці вказуємо ім'я хоста, таке ж, як на клієнті, додаємо в будь-яку існуючу групу і задаємо ip адреса комп'ютера.
Потім переходимо на вкладку Templates і натискаємо Select. Вибираємо шаблон Template OS Windows і тиснемо маленьку посилання add, потім велику.
Новий host моніторингу доданий, залишилося почекати кілька хвилин свіжих даних. Перевірити їх можна там, де й раніше, в Latest data, вибравши новий хост.
На цьому установка і настройка моніторингу windows за допомогою zabbix agent закінчена. Можна додавати нові комп'ютери з різними версіями windows. Одна і та ж версія агента підходить для всіх, і десктопних і серверних систем.
висновок
Завершили установку і настройку системи моніторингу zabbix 3.2 з практичними прикладами додавання хостів моніторингу у вигляді linux і windows агентів. Тема настройки моніторингу zabbix обширна і охопити її в одному матеріалі неможливо. Для розширення функціоналу та додавання різних елементів моніторингу використовуйте мої статті з розділу zabbix , Посилання на деякі з них я навів на початку статті. Все, що написано раніше, відноситься до версії 2.4 і 3.0, але воно не втратило актуальності, все прийоми, скрипти, шаблони, все працює і відповідає поточній версії, можна сміливо користуватися.
Відео
Наводжу відеоролик з встановлення та налаштування попередньої версії zabbix. Принципово нічого не змінилося, крім версій встановлених програм.
джерело