zabbix

隨著網路資訊及雲端系統的發展,如果沒有一套系統管理,很難面面俱到。
這邊介紹一套開源的企業級網管軟體Zabbix,他的優點如下:

Zabbix是一套企業級open source的監控軟體。可用來監控網路和server的可用性和性能。
Zabbix可以根據事件,靈活配置郵件和訊息警報。
Zabbix將監控數據收集到資料庫,通過web界面進行展示。
Zabbix支持被動(polling)和主動(trapping)兩種方式獲取數據。
Zabbix的參數配置、報表、數據展示全部通過Web介面完成。

內建的功能足以做到各種數據的監控,也可以自行開發所需要的模組樣式使用
本文使用Debian系統來安裝Zabbix,因為Debian系統相較於其他作業系統,
穩定且資源使用少,非常適合作為監控網管的系統。

如果您還未安裝Debian 可以參考下列安裝教學

Debian 10(Buster)安裝

前置作業

update

apt update

安裝wget

apt install wget

如果您不是以root權限登入

安裝sudo

apt install sudo -y

Step 1 安裝Zabbix server, frontend, 和 agent

wget https://repo.zabbix.com/zabbix/5.0/debian/pool/main/z/zabbix-release/zabbix-release_5.0-1+$(lsb_release -sc)_all.deb
dpkg -i zabbix-release_5.0-1+$(lsb_release -sc)_all.deb
apt update
apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
Image 38
Image 39
Image 40

Step 2 配置資料庫

安裝MariaDB

apt -y install mariadb-server
Image 41

安裝完成後,啟動MariaDB服務,並使其在重開機後開啟

systemctl start mariadb
systemctl enable mariadb
Image 42

MySQL安全設定

mysql_secure_installation

Enter current password for root (enter for none):
預設是未設置密碼,這邊不用輸入密碼按下Enter

Set root password? [Y/n]
是否設定root帳號密碼:Y or Enter

Remove anonymous users? [Y/n]
是否移除匿名帳號:Y or Enter

Disallow root login remotely? [Y/n]
限制root帳戶為本地連線:Y or Enter

Remove test database and access to it? [Y/n]
刪除測試資料庫:Y or Enter

Reload privilege tables now? [Y/n]
重新載入設定:Y or Enter

Image 43

建立資料庫

‘zabbixDBpass’ 改為自己使用的密碼

mysql -uroot -p'rootDBpass' -e "create database zabbix character set utf8 collate utf8_bin;"
mysql -uroot -p'rootDBpass' -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbixDBpass';"
Image 44

導入初始架構和數據

暫時禁用嚴格模式(ZBX-16465),以避免MySQL錯誤

mysql -uroot -p'rootDBpass' zabbix -e "set global innodb_strict_mode='OFF';"

導入Zabbix的資料庫架構,輸入後需要一些時間,可能持續至五分鐘

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p'zabbixDBpass' zabbix

啟用嚴格模式

mysql -uroot -p’rootDBpass’ zabbix -e “set global innodb_strict_mode=’ON’;”

Image 45

接著在Zabbix配置文件中輸入資料庫密碼

打開zabbix_server.conf文件

nano /etc/zabbix/zabbix_server.conf
Image 47

輸入資料庫密碼(前述zabbix資料庫的自訂密碼)

DBPassword=zabbixDBpass

Image 46

Step 3 啟動Zabbix伺服器和agent

設置PHP

nano /etc/zabbix/apache.conf
Image 50

將# php_value date.timezone Europe/Riga前面的#註釋刪除
並修改時區為您所在的位置,共有兩行需要優改

Image 49

安裝完成後,啟動Apache,並使其在重開機後開啟

systemctl restart apache2
systemctl enable apache2
Image 51

設置Web 前端

打開瀏覽器http://server_ip_or_dns_name/zabbix
開啟Zabbix web介面,啟動安裝響導
“server_ip_or_dns_name”為你的Zabbix 伺服器主機的IP
如果之前的步驟都正確,輸入Zabbix資料庫密碼
其他步驟按Next step 即可順利完成安裝響導

Image 52
Image 53
Image 54
Image 55
Image 56
Image 57

接著會進入Zabbix登入畫面,默認為

Username Admin
password zabbix

Image 58

恭喜!您的Zabbix主機已經可以運作使用

Image 59

參考

https://www.zabbix.com/documentation/5.0/start