Система моніторингу Zabbix: Налаштування в Ubuntu 22.04

Система моніторингу Zabbix є одним із найпопулярніших інструментів для моніторингу стану мережі та серверів. Zabbix надає потужні можливості для відстеження продуктивності серверів, мережевих пристроїв та додатків, дозволяючи DevOps-інженерам швидко виявляти та вирішувати проблеми, пов’язані з роботою IT-інфраструктури.

У даній статті ми розглянемо процес встановлення та налаштування системи моніторингу Zabbix на Ubuntu для відстеження стану мережі та серверів.

Встановлення необхідних пакетів

Перед тим, як розпочати встановлення Zabbix, необхідно встановити декілька пакетів, які знадобляться для роботи системи моніторингу. Виконайте наступну команду для встановлення необхідних пакетів:

sudo apt-get update
sudo apt-get install apache2 mysql-server mysql-client php php-mysql php-gd php-xml libapache2-mod-php php-ldap php-mbstring snmp fping

Система моніторингу Zabbix: Встановлення та налаштування

Для встановлення та налаштування Zabbix Server виконайте наступні кроки:

  1. Додайте репозиторій Zabbix у систему:
    wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu20.04_all.deb
    sudo dpkg -i zabbix-release_5.4-1+ubuntu20.04_all.deb
    sudo apt update
    
  2. Встановіть Zabbix Server та його залежності:
    sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
    
  3. Створіть базу даних і користувача MySQL для Zabbix:
    sudo mysql -u root -p
    

    Потім введіть наступні команди в MySQL:

    CREATE DATABASE zabbix character set utf8 collate utf8_bin;
    CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
    FLUSH PRIVILEGES;
    exit;
    
  4. Імпортуйте структуру бази даних Zabbix в базу даних MySQL:
    zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
    
  5. Відредагуйте файл конфігурації Zabbix Server, щоб вказати правильні параметри підключення до бази даних MySQL:
    sudo nano /etc/zabbix/zabbix_server.conf
    

    Знайдіть наступні рядки та змініть їх, щоб вони виглядали так:

    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=password
    
  6. Перезапустіть Zabbix Server:
    sudo systemctl restart zabbix-server
    

Налаштування Zabbix Frontend

Після встановлення та налаштування Zabbix Server необхідно налаштувати Zabbix Frontend, щоб можна було відстежувати стан мережі та серверів. Для цього виконайте наступні кроки:

  1. Відредагуйте файл конфігурації PHP для Apache:
    sudo nano /etc/php/7.4/apache2/php.ini
    

    Знайдіть наступний рядок та змініть його значення на 128M:

    memory_limit = 128M
    
  2. Перезапустіть Apache:
    sudo systemctl restart apache2
    
  1. Відкрийте браузер і введіть адресу вашого сервера у наступному форматі: http://your_server_IP_address/zabbix
  2. Введіть логін та пароль за замовчуванням (Admin/zabbix) та натисніть на кнопку “Увійти”.
  3. Змініть пароль адміністратора на більш безпечний.

Налаштування моніторингу мережі та серверів

Після налаштування Zabbix Frontend можна починати налаштування моніторингу мережі та серверів. Для цього виконайте наступні кроки:

  1. Додайте хости у Zabbix.
  2. Налаштуйте моніторинг для кожного хоста, додавши необхідні елементи даних.
  3. Налаштуйте тригери та сповіщення для кожного хоста, щоб швидко реагувати на проблеми.
  4. Налаштуйте графіки для кожного хоста, щоб відстежувати продуктивність.

Приклади конфігурацій Zabbix

  1. Конфігурація Apache для Zabbix Frontend:
    Alias /zabbix /usr/share/zabbix
    <Directory /usr/share/zabbix>
        Options FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
    
  2. Конфігурація Zabbix Agent для моніторингу системних ресурсів:
    Server=your_zabbix_server_ip
    Hostname=your_hostname
    ListenPort=10050
    StartAgents=3
  3. Приклад елемента даних для моніторингу завантаження процесора:
    Type: Zabbix Agent
    Key: system.cpu.load[all,avg1]
    
  4. Приклад тригера для сповіщення про використання великої кількості оперативної пам’яті:
    Name: High memory usage
    Expression: {your_host:vm.memory.size[available].last()}<100000000
    
  5. Приклад графіка для моніторингу завантаження процесора:
    Name: CPU Load
    Items: system.cpu.load[all,avg1]
    Type: Graph
    

     

Також вам буде цікаво, як написати Telegram бота на Python, який буде здійснювати моніторинг стану сервісів та відправляти сповіщення у випадку виникнення проблем у роботі сервера!

Висновок

У даній статті ми розглянули процес встановлення та налаштування системи моніторингу Zabbix на Ubuntu для відстеження стану мережі та серверів. Як видно з прикладів, Zabbix дозволяє моніторити різноманітні системні ресурси, налаштовувати тригери та сповіщення для швидкого реагування на проблеми, а також будувати графіки для відстеження продуктивності. Це робить Zabbix надзвичайно корисним інструментом для DevOps-інженерів, які відповідають за надійність та продуктивність IT-систем.

Однак, слід пам’ятати, що моніторинг – це лише один із багатьох аспектів DevOps, який допомагає підвищити якість та надійність додатків і інфраструктури. Інші аспекти, такі як автоматизація, контейнеризація та управління конфігурацією, також відіграють важливу роль у DevOps.

Також слід зазначити, що в даній статті були представлені лише основні кроки з встановлення та налаштування Zabbix на Ubuntu. Залежно від ваших потреб, вам може знадобитися налаштувати додаткові параметри та функції.

В цілому, моніторинг – це важливий інструмент для DevOps-інженерів, а Zabbix – відмінне рішення для відстеження стану мережі та серверів. Він забезпечує широкі можливості моніторингу та управління, що дозволяє швидко реагувати на проблеми та підвищувати надійність і продуктивність системи.

Оцініть статтю