Zabbix簡介 Zabbix是一個高度集成的企業級開源網路監控解決方案,與Cacti、nagios類似,提供分散式監控以及集中的web管理界面。zabbix具備常見商業監控軟體所具備的功能,例如主機性能監控,網路設備性能監控,資料庫性能監控,ftp等通用協議的監控,能夠靈活利用可定製警告機制,允許 ...
Zabbix簡介
Zabbix是一個高度集成的企業級開源網路監控解決方案,與Cacti、nagios類似,提供分散式監控以及集中的web管理界面。zabbix具備常見商業監控軟體所具備的功能,例如主機性能監控,網路設備性能監控,資料庫性能監控,ftp等通用協議的監控,能夠靈活利用可定製警告機制,允許用戶對事件發送基於E-mail的警告,保證相關人員可以快速解決。還能夠利用存儲數據提供傑出的報表及實時的圖形化數據處理,實現對監控主機7x24小時集中監控。
Zabbix通過C/S模式採集數據通過B/S模式在web端展示和配置,通過SNMP協議傳輸,而被監控對象只需要支持SNMP協議或者運行Zabbix-agents代理程式即可。服務端監聽埠為10051,而被監控端即Zabbix-agents代理程式監控10050埠。
實驗環境
主機 | 操作系統 | IP地址 | 主要軟體 |
---|---|---|---|
zabbix服務端 | centos7.0 x86_64 | 10.1.28.70 | zabbix-server4.0 |
Linux被監控端 | centos7.0 x86_64 | 10.1.28.253 | zabbix-agent4.0 |
Zabbix服務端環境部署
1、環境準備
由於zabbix提供集中的web監控管理界面,因此服務在web界面的呈現需要LAMP架構支持。
yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash
編輯配置httpd
vim /etc/httpd/conf/httpd.conf
ServerName zabbix
DirectoryIndex index.html index.php //添加首頁支持格式
編輯配置php,配置中國時區
vim /etc/php.ini
date.timezone = PRC //PRC為中國時區
啟動httpd,mysq
systemctl stop firewalld.service
setenforce 0
systemctl start httpd.service
systemctl start mariadb.service
netstat -ntap | egrep '(80|3306)'
啟動msyql後執行初始安全設置。
mysql_secure_installation
mysql -u root -p
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY '123456'; //創建zabbix資料庫,並設定用戶密碼
flush privileges;
資料庫設置完成,檢測php與資料庫連通情況
vim /var/www/html/index.php
<?php
$link=mysql_connect('10.1.28.70','zabbix','123456');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
mysql_close();
?>
在網頁中輸入zabbix主機ip地址顯示Success表示連通資料庫成功
為保證zabbix用戶也可以登錄資料庫,若出現本地無法登錄情況,解決方式如下。
使用root賬戶登錄資料庫
select user,host from mysql.user; //有空用戶名稱占用導致本地無法登錄遠程可登錄
+--------+-----------+
| user | host |
+--------+-----------+
| zabbix | % |
| root | 127.0.0.1 |
| root | ::1 |
| | cacti |
| root | cacti |
| | localhost |
| root | localhost |
+--------+-----------+
drop user ''@localhost; //刪除空用戶
drop user ''@cacti;
flush privileges;
2、部署Zabbix Server
yum install php-bcmath php-mbstring -y 安裝php支持zabbix組件
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm //會自動生成yum源文件,保證系統可以上網
yum install zabbix-server-mysql zabbix-web-mysql -y 安裝zabbix組件
zcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -uzabbix -p zabbix //生成資料庫文件,註意密碼不要輸成root的
查看、修改zabbix配置文件
grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
90:DBHost=127.0.0.1
91:DBName=zabbix
107:DBUser=zabbix
108:DBPassword=123456
287:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
413:Timeout=4
455:AlertScriptsPath=/usr/lib/zabbix/alertscripts
465:ExternalScripts=/usr/lib/zabbix/externalscripts
501:LogSlowQueries=3000
修改zabbix在httpd中的時區
vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
zabbix基本配置完成,啟動服務,實現web界面安裝
systemctl enable zabbix-server
systemctl start zabbix-server
netstat -anpt | grep zabbix //監聽在10051埠上
systemctl restart httpd.service
web界面安裝訪問。
zabbix被監控端代理設置
安裝zabbix-agent客戶端
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
yum install -y zabbix-agent
編輯修改配置文件
grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf
vim /etc/zabbix/zabbix_agentd.conf
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
95:Server=10.1.28.70 //zabbix伺服器地址
136:ServerActive=10.1.28.70 //活躍伺服器地址
147:Hostname=zabbix_agent
265:Include=/etc/zabbix/zabbix_agentd.d/*.conf
關閉防火牆,啟動服務
systemctl stop firewalld.service
setenforce 0
systemctl enable zabbix-agent.service
systemctl restart zabbix-agent.service
netstat -anpt | grep zabbix //監聽在10050埠
以上是整個配置過程