在Ubuntu 16.04 Server上安裝Zabbix
監控服務器 - 什么是 Zabbix
Zabbix 是企業級開源分布式監控服務器解決方案。該軟件能監控網絡的不同參數以及服務器的完整性,還允許為任何事件配置基于電子郵件的警報。Zabbix 根據存儲在數據庫(例如 MySQL)中的數據提供報告和數據可視化功能。軟件收集的每個測量指標都可以通過基于 Web 的界面訪問。
Zabbix 根據 GNU 通用公共許可證版本 2(GPLv2)的條款發布,完全免費。
在本教程中,我們將在運行 MySQL、Apache 和 PHP 的 Ubuntu 16.04 server 上安裝 Zabbix。
安裝 Zabbix 服務器
首先,我們需要安裝 Zabbix 所需的幾個 PHP 模塊:
- # apt-get install php7.0-bcmath php7.0-xml php7.0-mbstring
Ubuntu 倉庫中提供的 Zabbix 軟件包已經過時了。使用官方 Zabbix 倉庫安裝最新的穩定版本。
通過執行以下命令來安裝倉庫軟件包:
- $ wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb
- # dpkg -i zabbix-release_3.2-1+xenial_all.deb
然后更新 apt 包源:
- # apt-get update
現在可以安裝帶有 MySQL 支持和 PHP 前端的 Zabbix 服務器。執行命令:
- # apt-get install zabbix-server-mysql zabbix-frontend-php
安裝 Zabbix 代理:
- # apt-get install zabbix-agent
Zabbix 現已安裝。下一步是配置數據庫來存儲數據。
為 Zabbix 配置 MySQL
我們需要創建一個新的 MySQL 數據庫,Zabbix 將用來存儲收集的數據。
啟動 MySQL shell:
- $ mysql -uroot -p
接下來:
- mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
- Query OK, 1 row affected (0.00 sec)
- mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'usr_strong_pwd';
- Query OK, 0 rows affected, 1 warning (0.00 sec)
- mysql> EXIT;
- Bye
接下來,導入初始表和數據。
- # zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
輸入在 MySQL shell 中創建的 zabbix 用戶的密碼。
接下來,我們需要編輯 Zabbix 服務器配置文件,它是 /etc/zabbix/zabbis_server.conf:
- # $EDITOR /etc/zabbix/zabbix_server.conf
搜索文件的 DBPassword 部分:
- ### Option: DBPassword
- # Database password. Ignored for SQLite.
- # Comment this line if no password is used.
- #
- # Mandatory: no
- # Default:
- # DBPassword=
取消注釋 DBPassword= 這行,并添加在 MySQL 中創建的密碼:
- DBPassword=usr_strong_pwd
接下來,查找 DBHost= 這行并取消注釋。
保存并退出。
配置 PHP
我們需要配置 PHP 來使用 Zabbix。在安裝過程中,安裝程序在 /etc/zabbix 中創建了一個名為 apache.conf 的配置文件。打開此文件:
- # $EDITOR /etc/zabbix/apache.conf
此時,只需要取消注釋 date.timezone 并設置正確的時區:
- <IfModule mod_php7.c>
- php_value max_execution_time 300
- php_value memory_limit 128M
- php_value post_max_size 16M
- php_value upload_max_filesize 2M
- php_value max_input_time 300
- php_value always_populate_raw_post_data -1
- php_value date.timezone Europe/Rome
- </IfModule>
保存并退出。
此時,重啟 Apache 并啟動 Zabbix Server 服務,使其能夠在開機時啟動:
- # systemctl restart apache2
- # systemctl start zabbix-server
- # systemctl enable zabbix-server
用 systemctl 檢查 Zabbix 狀態:
- # systemctl status zabbix-server
這個命令應該輸出:
- â zabbix-server.service - Zabbix Server
- Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor pr
- Active: active (running) ...
此時,Zabbix 的服務器端已經正確安裝和配置了。
配置 Zabbix Web 前端
如介紹中所述,Zabbix 有一個基于 Web 的前端,我們將用于可視化收集的數據。但是,必須配置此接口。
使用 Web 瀏覽器,進入 URL http://localhost/zabbix。
Zabbix monitoring server Frontend Setup
點擊 Next step
snapshot2
確保所有的值都是 Ok,然后再次單擊 Next step 。
Zabbix MySQL configuration
輸入 MySQL zabbix 的用戶密碼,然后點擊 Next step。
Zabbix server details
單擊 Next step ,安裝程序將顯示具有所有配置參數的頁面。再次檢查以確保一切正確。
Zabbix pre-installation details
Zabbix installation finished
點擊 Next step 進入最后一頁。
點擊完成以完成前端安裝。默認用戶名為 Admin,密碼是 zabbix。
Zabbix 服務器入門
Zabbix login interface
使用上述憑證登錄后,我們將看到 Zabbix 面板:
zabbix dashboard
前往 Administration -> Users,了解已啟用帳戶的概況:
Zabbix users
通過點擊 Create user 創建一個新帳戶。
Zabbix User Creation
點擊 Groups 中的 Add,然后選擇一個組:
snapshot11
保存新用戶憑證,它將顯示在 Administration -> Users 面板中。
請注意,在 Zabbix 中,主機的訪問權限分配給用戶組,而不是單個用戶。
總結
我們結束了 Zabbix Server 安裝的教程。現在,監控基礎設施已準備好完成其工作并收集有關需要在 Zabbix 配置中添加的服務器的數據。