Zabbix3.4安裝的詳細步驟php
1、zabbix介紹前端
如今大多數公司都會用到監控軟件,主流的監控軟件就是Zabbix了,固然還會有Nagios等其餘的軟件:node
zabbix是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。
mysql
zabbix能監視各類網絡參數,保證服務器系統的安全運營;並提供柔軟的通知機制以讓系統管理員快速定位/解決存在的各類問題。linux
zabbix 由2部分構成,zabbix server 與可選組件zabbix agent。ios
zabbix server 能夠經過SNMP,zabbix agent ,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它能夠運行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平臺之上。web
zabbix agent 須要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操做系統有關的內存,CPU等信息的收集。zabbix agent 能夠運行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系統之上。sql
zabbix server 能夠單獨監視遠程服務器的服務狀態;同時也能夠與zabbix agent 配合,能夠輪詢zabbix agent 主動接收監視數據(trapping方式),同時還可被動接收zabbix agent 發送的數據(trapping方式)。數據庫
另外zabbix server 還支持SNMP (v1,v2),能夠與SNMP軟件(例如:net-snmp)等配合使用。apache
Zabbix 功能:
①具有常見的商業監控軟件所具有的功能(主機的性能監控、網絡設備性能監控、數據庫、性能監控、FTP 等通用協議監控、多種告警方式、詳細的報表圖表繪製)
②支持自動發現網絡設備和服務器(能夠經過配置自動發現服務器規則來實現)
③支持自動發現(low discovery)key 實現動態監控項的批量監控(需寫腳本)
④支持分佈式,能集中展現、管理分佈式的監控點
⑤擴展性強,server 提供通用接口(api 功能),能夠本身開發完善各種監控(根據相關接口編寫程序實現)編寫插件容易,能夠自定義監控項,報警級別的設置。
⑥數據收集
可用和性能檢測
支持snmp(包括trapping and polling),IPMI,JMX,SSH,TELNET
自定義的檢測
自定義收集數據的頻率
服務器/代理和客戶端模式
靈活的觸發器
能夠定義很是靈活的問題閾值,稱爲觸發器,從後端數據庫的參考值
高可定製的報警
發送通知,可定製的報警升級,收件人,媒體類型
通知可使用宏變量有用的變量
自動操做包括遠程命令
實時的繪圖功能
監控項實時的將數據繪製在圖形上面
WEB 監控能力
ZABBIX 能夠模擬鼠標點擊了一個網站,並檢查返回值和響應時間
API 功能 :
應用api功能,能夠方便的和其餘系統結合,包括手機客戶端的使用。
更多功能請查看
http://www.zabbix.com/documentation.php
2、安裝zabbix環境及準備工做
linux 系統版本 準備工做 安裝的軟件類型 服務內容
1,安裝Zabbix須要的硬件環境及軟件版本,我這裏在官網上查了一下,你能夠根據本身的環境和要求來選擇:
下表是幾個硬件配置的示例:
名稱 |
平臺 |
CPU/內存 |
數據庫 |
監控主機數量 |
小型 |
CentOS |
虛擬應用 |
MySQL InnoDB |
100 |
中型 |
CentOS |
2 CPU cores/2GB |
MySQL InnoDB |
500 |
大型 |
RedHat Enterprise Linux |
4 CPU cores/8GB |
RAID10 MySQL InnoDB or PostgreSQL |
>1000 |
巨大型 |
RedHat Enterprise Linux |
8 CPU cores/16GB |
快速RAID10 MySQL InnoDB or PostgreSQL |
>10000 |
具體的配置極其依賴於Active Item數量和輪詢頻率。如須要進行大規模部署,強烈建議將數據庫進行獨立部署。
支持平臺:
因爲監控服務器的安全要求及關鍵任務的特性,UNIX是惟一能夠持續提供必要性能、容錯性和擴展性的操做系統。Zabbix能夠運行在市場上的主流版本。
經測試,Zabbix可運行在下列平臺:
Linux
IBM AIX
FreeBSD
NetBSD
OpenBSD
HP-UX
Mac OS X
Solaris
Windows: Windows 2000之後的全部桌面和服務器版本 (只可運行Zabbix agent)
備註:Zabbix可能也能夠運行在其餘Unix類操做系統。
軟件
Zabbix基於先進的Apache Web服務器、領先的數據庫引擎和PHP腳本語言進行構建。
軟件 |
版本 |
備註 |
MySQL |
5.0.3或以上 |
使用MySQL做爲Zabbix後端數據庫。須要InnoDB引擎。 |
Oracle |
10g或以上 |
使用Oracle做爲Zabbix後端數據庫。 |
PostgreSQL |
8.1或以上 |
使用PostgreSQL做爲Zabbix後端數據庫。 |
SQLite |
3.3.5或以上 |
使用SQLite做爲Zabbix後端數據庫。 |
IBM DB2 |
9.7或以上 |
使用IBM DB2做爲Zabbix後端數據庫。 |
對於IBM DB2的支持僅供測試!雖然Zabbix proxy能夠正常使用SQLite3,可是不推薦Zabbix server使用SQLite3。自Zabbix 2.4.0起,,Zabbix server和前端同時進行數據庫訪問,甚至可能致使數據庫中斷!
備註:這裏只是在官網下載的重要的一部分,有想具體瞭解能夠上官網查看。
2,接下來我說一下我實驗環境
操做系統 | 主機IP | 主機名稱 | 安裝軟件 | 安裝zabbix版本 | MySQL版本 |
Centos7.3 | 192.68.0.20 | zabbix | Zabbix-server | Zabbix 3.4.10 | MySQL5.7.22 |
centos6.5 | 192.168.0.157 | Test02 | zabbix-agent |
zabbix-agent-3.4.10 | / |
win-server2008R2 | 192.168.0.10 | SERVERDC | zabbix-agent-wind | zabbix-agent-3.0.4 | / |
3,正式開始安裝zabbix
3.1)在監控主機上須要預先安裝yum 源,下面正式開始安裝;
[root@zabbix ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
3.2)安裝Zabbix-server包和zabbix-agent包
[root@zabbix ~]# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
3.3)下載安裝mysql源
[root@zabbix ~]# rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
3.4)查看當前可用的Mysql安裝源
[root@zabbix ~]# yum repolist enabled | grep "mysql.*-community.*" mysql-connectors-community/x86_64 MySQL Connectors Community 51 mysql-tools-community/x86_64 MySQL Tools Community 63 mysql57-community/x86_64 MySQL 5.7 Community Server 267
3.5)安裝MySQL服務端
[root@zabbix ~]# yum -y install mysql-community-server
3.6)啓動mysql服務並設置開機啓動
[root@zabbix ~]#systemctl start mysqld [root@zabbix ~]#systemctl enable mysqld
3.7)進入MySQL並修改密碼
[root@zabbix ~]#cat /var/log/mysqld.log | grep password [root@zabbix ~]#mysql -uroot -pRir.*sJUX6M* mysql> ALTER USER USER() IDENTIFIED BY 'Pass123!';
若是想用簡單的密碼必須先改一個變量;
mysql> set global validate_password_policy=0; mysql> ALTER USER USER() IDENTIFIED BY '12345678';
否則你改密碼會不經過,會有密碼複雜度要求。
3.8)建立數據庫和zabbix用戶並受權
mysql> create database zabbix character set utf8 collate utf8_bin; Query OK, 1 row affected (10.03 sec) mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'Pass123!'; Query OK, 0 rows affected, 1 warning (0.00 sec)
3.9)導入初始架構(Schema)和數據
[root@zabbix ~]#cd /usr/share/doc/zabbix-server-mysql-3.4.10/ [root@zabbix zabbix-server-mysql-3.4.10 ~]#zcat create.sql.gz | mysql -uzabbix -pPass123! -D zabbix mysql: [Warning] Using a password on the command line interface can be insecure.
3.10)而後進入mysql查看這些內容是否導入進去
mysql> show tables from zabbix;
mysql> select count(*) tables,table_schema from information_schema.tables where table_schema ="zabbix";
4.修改配置文件,給服務受權、啓動Zabbix Server服務
4.1)修改配置文件
[root@zabbix ~]#vim /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log LogFileSize=0 PidFile=/var/run/zabbix/zabbix_server.pid SocketDir=/var/run/zabbix DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=Pass123! SNMPTrapperFile=/var/log/snmptrap/snmptrap.log Timeout=4 AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000
備註:記得先備份 cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak
4.2)給服務受權
[root@zabbix ~]#chown -R zabbix:zabbix /etc/zabbix/ [root@zabbix ~]#chmod -R 755 /etc/zabbix/
4.3)啓動Zabbix Server服務
[root@zabbix ~]#systemctl start zabbix-server [root@zabbix ~]#systemctl enable zabbix-server
備註:這裏會有一個坑,就是在啓動zabbix服務會失敗,Job for zabbix-server.service failed. See 'systemctl status zabbix-server.service' and 'journalctl -xn' for details.查了一下緣由是gnutls-3.3的高版本問題,解決辦法是;1,先卸載這個高版本的gnutls-3.3,命令:rpm -e gnutls-3.3.24-1.el7.x86_64 --nodeps2,而後去網上下載一個gnutls-3.1的版本,而後使用命令rpm -Uvh --force gnutls-3.1.18-8.el7.x86_64.rpm
5.編輯Zabbix前端的PHP配置
5.1)zabbix前端的Apache配置文件位於 /etc/httpd/conf.d/zabbix.conf 。一些PHP設置已經完成了配置。
[root@zabbix ~]# vim /etc/httpd/conf.d/zabbix.conf +15 找到<IfModule mod_php5.c>標籤下面 添加一條php_value date.timezone Asia/Shanghai
5.2)啓動apache服務,並設置開機自啓
[root@zabbix ~]#systemctl start httpd [root@zabbix ~]#systemctl enable httpd
3、登陸網頁客戶端操做添加一臺Linux機器
1,訪問ip:http://192.168.0.20/zabbix/index.php
中間省略一部分-----------------------------直接到登陸界面了。
默認的用戶名是:Admin 密碼:zabbix
2,添加一臺Linux客戶端機器(ip:192.168.0.157)
訪問zabbix官網:https://www.zabbix.com/download?zabbix=3.4&os_distribution=centos&os_version=6&db=MySQL
2.1)添加centos6下的源:
[root@Test02 ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
2.2)安裝客戶端agent軟件
[root@Test02 ~]# yum -y install zabbix-agent
2.3)修改agent配置文件
[root@Test02 ~]# grep -v '^$' /etc/zabbix/zabbix_agentd.conf |grep -v '^#' PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=192.168.0.20 ServerActive=192.168.0.20:10050 Hostname=Test02 Include=/etc/zabbix/zabbix_agentd.d/*.conf
2.4)給配置文件受權
[root@Test02 ~]# chmod 775 /etc/zabbix/zabbix_agentd.conf
2.5)啓動agent服務並查看服務啓動成功沒有
[root@Test02 ~]# /etc/init.d/zabbix-agent start [root@Test02 ~]# netstat -lntup |grep zabbix_agent
3,在回到網頁上來添加第一臺主機
3.1)在配置--主機---建立主機
3.2)添加主機詳細信息
3.3)添加主機模板信息
3.4)這樣一臺客戶端Linux基本添加完成,過幾分鐘就能開到Zabbix圖標變綠證實添加成功了。
四、登陸網頁客戶端操做添加一臺windows機器
4.1)我這裏是找到一臺域控制器來監控主機的ip(192.168.0.10)在網上下載了一個windows版的agent。
4.2) 下載軟件百度雲盤:連接: https://pan.baidu.com/s/1VCQ8tjSjIUt7bgY3Amf1lg 密碼: avmd
4.3)把下載好的軟件解壓到D盤:解壓後有兩個目錄:bin和conf bin目錄下會有win32和win64倆個文件夾,根據windows系統的版本自行進行選擇。
4.4)修改配置文件(我這裏用的是win64)
修改conf文件中的zabbix_agentd.win.conf配置文件: LogFile=D:\zabbix_agentd.log Server=192.168.0.20 //zabbix服務端的ip地址 ServerActive=192.168.0.20:10051 Hostname=SERVERDC //windows客戶機的ip地址
4.5)使用cmd命令行進行安裝啓動-c指定配置文件
參數:-i 安裝,-s 啓動,-x 中止,-d 卸載
安裝命令:
C:\Users\admin> D:\zabbix_agent\bin\win64\zabbix_agentd.exe -c D:\zabbix_agent\conf\zabbix_agentd.win.conf -i zabbix_agentd.exe [252]: service [Zabbix Agent] installed successfully zabbix_agentd.exe [252]: event source [Zabbix Agent] installed successfully 啓動命令: C:\Users\admin> D:\zabbix_agent\bin\win64\zabbix_agentd.exe -c D:\zabbix_agent\conf\zabbix_agentd.win.conf -s zabbix_agentd.exe [4796]: service [Zabbix Agent] started successfully
4.6)在WindowsServer服務器上開啓鏈接10050端口;具體以下:
4.6.1)建立入站規則--基於端口
4.6.2)基於tcp協議使用10050端口
4.6.3)容許鏈接
4.6.4)容許鏈接那些網絡環境,3種都選了。
4.6.4)添加一些描述就行了,配置結束了。
4.7)回到網頁進入添加windows客戶端
4.7.1)在配置----主機-----建立主機
4.7.2)在配置----主機-----添加主機詳細信息
4.7.3)添加windows主機模板
4.7.4)添加完成後過幾分鐘zabbix按鈕就會變綠了,證實添加成功了。
到此處基本上都已經添加完成了,下面就要添加報警功能。