1. 程式人生 > >Zabbix監控系統(一):初識Zabbix

Zabbix監控系統(一):初識Zabbix

一、Zabbix簡介

Zabbix 是由 Alexei Vladishev 開發的一種網路監視、管理系統,基於 Server-Client 架構。可用於監視各種網路服務、伺服器和網路機器等狀態。

使用各種 Database-end 如 MySQL, PostgreSQL, SQLite, Oracle 或 IBM DB2 儲存資料。Server 端基於 C語言、Web 管理端 frontend 則是基於 PHP 所製作的。Zabbix 可以使用多種方式監視。可以只使用 Simple Check 不需要安裝 Client 端,亦可基於 SMTP 或 HTTP ... 各種協定做死活監視。

在客戶端如 UNIX, Windows 中安裝 Zabbix Agent 之後,可監視 CPU Load、網路使用狀況、硬碟容量等各種狀態。而就算沒有安裝 Agent 在監視物件中,Zabbix 也可以經由 SNMP、TCP、ICMP、利用 IPMI、SSH、telnet 對目標進行監視。另外,Zabbix 包含 XMPP 等各種 Item 警示功能。

1.  Zabbix組成架構

  • zabbix官網: https://www.zabbix.com
  • zabbix由zabbix server和zabbix agent構成 
  • zabbix proxy作為代理,用來管理其它的agent

2.  Zabbix監控範疇

  • 硬體監控 :Zabbix IPMI Interface
  • 系統監控 :Zabbix Agent Interface
  • Java 監控:ZabbixJMX Interface
  • 網路裝置監摶:Zabbix SNMP Interface
  • 應用服務監控:Zabbix Agent UserParameter
  • MySQL 資料庫監控:percona-monitoring-pldlgins
  • URL監控:Zabbix Web監控

二、Zabbix安裝

1.  Zabbix服務端安裝

  • 安裝主機

192.168.233.134    host14

1.1  安裝zabbix源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

mkdir -p /opt/tools/zabbix
cd /opt/tools/zabbix
wget http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
rpm -ivh zabbix-release-3.0-1.el7.noarch.rpm

1.2  安裝zabbix server

yum install -y zabbix-server-mysql zabbix-web-mysql

1.3  安裝啟動mariadb資料庫

yum install -y  mariadb-server
systemctl start mariadb.service

1.4  建立zabbix庫

mysql -e 'create database zabbix character set utf8 collate utf8_bin;'
mysql -e 'grant all privileges on zabbix.* to [email protected] identified by "zabbix";'

1.5  匯入資料

zcat /usr/share/doc/zabbix-server-mysql-3.0.22/create.sql.gz | mysql -uzabbix -pzabbix zabbix

1.6  配置zabbix server連線mysql

sed -i.ori '115a DBPassword=zabbix' /etc/zabbix/zabbix_server.conf

1.7  新增時區

sed -i.ori '18a php_value date.timezone  Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf

1.8  解決中文亂碼

yum -y install wqy-microhei-fonts
\cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

1.9  啟動zabbix server

systemctl start zabbix-server
systemctl start httpd

1.10  寫入開機自啟動

chmod +x /etc/rc.d/rc.local
cat >>/etc/rc.d/rc.local<<EOF
systemctl start mariadb.service
systemctl start httpd
systemctl start zabbix-server
EOF

2.  Zabbix客戶端安裝

  • 安裝主機

192.168.233.134    host14    
192.168.233.133    host15

2.1  安裝zabbix源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

mkdir -p /opt/tools/zabbix
cd /opt/tools/zabbix
wget http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
rpm -ivh zabbix-release-3.0-1.el7.noarch.rpm

2.2  安裝zabbix agent

yum install zabbix-agent -y
sed -i.ori 's#Server=127.0.0.1#Server=host14#' /etc/zabbix/zabbix_agentd.conf

2.3  啟動zabbix agent

systemctl start  zabbix-agent.service

2.4  寫入開機自啟動

chmod +x /etc/rc.d/rc.local
cat >>/etc/rc.d/rc.local<<EOF
systemctl start  zabbix-agent.service
EOF

3.  檢測連通性

3.1  服務端安裝zabbix-get檢測工具

yum install zabbix-get

3.2  服務端測試驗證

zabbix_get -s host14 -p 10050 -k "system.cpu.load[all,avg1]"
zabbix_get -s host15 -p 10050 -k "system.cpu.load[all,avg1]"

3.3  測試結果


三、Zabbix WEB介面

  • 檢查PHP資訊

  • 選擇MySQL資料庫,庫、使用者名稱與密碼都是zabbix

  • Host與Port不需要修改,Name自定義

  • 確認資訊

  • 安裝完成,點選Finish進入登入介面

  • 進入登入介面,賬號Admin,密碼zabbix