zabbix(音同 zbix)是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。php
zabbix能監視各類網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各類問題。mysql
zabbix由2部分構成,zabbix server與可選組件zabbix agent。web
zabbix server能夠經過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它能夠運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平臺上。sql
Zabbix的優缺點:
數據庫
優勢:
開源,無軟件成本投入
Server 對設備性能要求低
支持設備多,自帶多種監控模板
支持分佈式集中管理,有自動發現功能,能夠實現自動化監控
開放式接口,擴展性強,插件編寫容易
當監控的item 比較多服務器隊列比較大時能夠採用被動狀態,被監控客戶端主動從server 端去下載須要監控的item 而後取數據上傳到server 端。這種方式對服務器的負載比較小。
Api 的支持,方便與其餘系統結合
缺點:
需在被監控主機上安裝agent,全部數據都存在數據庫裏,產生的數據據很大,瓶頸主要在數據庫。vim
=============================================================centos
安裝zabbix (機器能上網的狀況)安全
[root@zabbix-server yum.repos.d]# cat centos.repo服務器
[aliyuan]網絡
name=aliyuan
baseurl=http://mirrors.aliyun.com/zabbix/zabbix/3.2/rhel/7/x86_64/
enabled=1
gpgcheck=0
[root@zabbix -server yum.repos.d]#
[root@zabbix-server yum.repos.d]# yum makecache
三、安裝依賴:
[root@zabbix-server~]# yum install epel-release
[root@zabbix-server ~]# yum install -y httpd mariadb mariadb-server mariadb-devel libdbi-dbd-mysql net-snmp net-snmp-devel net-snmp-utils curl-devel mod_ssl mod_auth_mysql mod_perl
開啓各項服務並設置爲開機自動啓動
[root@zabbix-server ~]# systemctl start httpd
[root@zabbix-server ~]# systemctl enable httpd
[root@zabbix-server ~]# systemctl start mariadb
[root@zabbix-server ~]# systemctl enable mariadb
四、安裝zabbix服務端
[root@zabbix-server ~]# yum install -y zabbix-server-mysql zabbix-web zabbix-web-mysql
建立並初始化zabbix數據庫
mysql> CREATE DATABASE zabbix CHARACTER SET utf8;
mysql> GRANT all ON zabbix.* TO 'zabbixuser'@'localhost' IDENTIFIED BY 'redhat';
mysql> FLUSH PRIVILEGES;
導入數據表
[root@zabbix-server ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.1/
[root@zabbix-server zabbix-server-mysql-3.2.1]# zcat create.sql.gz | mysql -u root -p zabbix
登錄mysql查詢是否登錄成功(127張表)
#mysql ----- 登陸數據庫
MariaDB [zabbix]> use zabbix
MariaDB [zabbix]> show tables;
在zabbix_server.conf文件中編輯數據庫相關配置
[root@server ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbixuser
DBPassword=redhat
DBSocket=/var/lib/mysql/mysql.sock
啓動Zabbix Server並配置其開機啓動
[root@zabbix-server ~]# systemctl start zabbix-server
[root@zabbix-server ~]# systemctl enable zabbix-server
[root@server ~]# netstat -antp | grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 5909/zabbix_server
tcp 0 0 :::10051 :::* LISTEN 5909/zabbix_server
[root@server ~]#
若是出現 Can't connect to local MySQL server through socket '/tmp/mysql.sock'的error
解決辦法:# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
編輯zabbix.conf配置文件,指定PHP的時區
[root@zabbix-server zabbix-web-3.2.1]# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
[root@zabbix-server ~]# systemctl restart httpd
五、安裝zabbix-server web
打開web界面 -------> http://IP地址/zabbix
開始安裝zabbix
檢測配置必須保證全是ok
配置數據庫
一些其餘細節配置,包括主機名或IP地址以及默認監聽端口
默認用戶名爲admin,密碼爲zabbix