zabbix
zabbix(音同 zbix)是一個基于WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。
zabbix能監視各種網絡參數,保證伺服器系統的安全營運;并提供靈活的通知機制以讓系統管理者快速定位/解決存在的各種問題。
zabbix由2部分構成,zabbix server與可選元件zabbix agent。
zabbix server可以通過SNMP,zabbix agent,ping,端口監視等方法提供對遠端伺服器/網絡狀态的監視,資料收集等功能,它可以運作在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
Zabbix的優缺點:
優點:
開源,無軟體成本投入
Server 對裝置性能要求低
支援裝置多,自帶多種監控模闆
支援分布式集中管理,有自動發現功能,可以實作自動化監控
開放式接口,擴充性強,插件編寫容易
當監控的item 比較多伺服器隊列比較大時可以采用被動狀态,被監控用戶端主動從server 端去下載下傳需要監控的item 然後取資料上傳到server 端。這種方式對伺服器的負載比較小。
Api 的支援,友善與其他系統結合
缺點:
需在被監控主機上安裝agent,所有資料都存在資料庫裡,産生的資料據很大,瓶頸主要在資料庫。
=============================================================
安裝zabbix (機器能上網的情況)
2、配置阿裡源
[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
3、安裝依賴:
[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
4、安裝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
5、安裝zabbix-server web
打開web界面 -------> http://IP位址/zabbix
開始安裝zabbix
檢測配置必須保證全是ok
配置資料庫
一些其他細節配置,包括主機名或IP位址以及預設監聽端口
預設使用者名為admin,密碼為zabbix