1. 程式人生 > >CentOS 7安裝部署zabbix3.4

CentOS 7安裝部署zabbix3.4

zabbix linux CentOS 7 安裝 部署

一、zabbix安裝配置
1.zabbix簡介
基於Web界面的分布式系統監控的企業級開源軟件。可以監控各種系統與設備,網絡參數,保證服務器設備安全運營;提供靈活的通知機制。
1.1. zabbix的邏輯圖
技術分享圖片
1.2. zabbix的組件
zabbix-server:Zabbix監控端組件,它是一個服務器端組件
zabbix-agent:被監控端組件,它是一個客戶端組件,它主要是監控由Agent所支持的操作系統(簡單說如果你要監控OS,就需要在對應的OS上安裝Agent程序),而如果要監控一些其他設備,通常需要用ICMP/IPMI/SNMP/JMX協議來實現
zabbix-proxy:Zabbix代理組件,它是實現分布式監控的關鍵,proxy端收集數據保存在本地,server端定時去proxy將數據取回
zabbix-database:zabbix的數據庫組件,zabbix收集到的數據都會存儲數據庫
zabbix-web:zabbix的web端組件,能夠將zabbix-database中的數據提取並展示,同時它又是zabbix的配置接口
zabbix-get:server端向agent端獲取數據的組件
zabbix-sender:agent端向server端主動發送收集的數據的組件
1.3. zabbix的常用術語
host:主機,指要監控的網絡設備
host group:主機組,指主機的邏輯容器,可以包含主機和模板
item:監控項,指一個特定監控指標的相關數據
trigger:觸發器,指一個表達式,用於評估某監控對象的某特定item內所接收到的數據是否在合理範圍,即閥值;接收到的數據量大於閥值時,觸發器的狀態將由"OK"變為"Problem"
event:事件,指發生的一個值得關註的事,例如觸發器發生狀態改變
action:動作,指對特定事件事先定義的處理方法
escalation:報警升級,指發送警報或執行遠程命令的自定義方案,如每隔5分鐘發送一次報警,共發送5次
media:媒介,指發送通知的手段或通道,例如Email,Jabber或SMS等等
notification:通知,指通過選定的媒介向用戶發送有關某事件的信息
remote command:遠程命令,指預定義的命令,可以在被監控主機處於某特定條件下時自動執行
template:模板,用於快速定義被監控主機的預設條目集合,通常包含:item,trigger,graph,screen,application,以及low-level discovery rule;模板可以直接鏈接至單個主機
application:應用,指一組item的集合
web scennario:web場景,指用於檢測web站點可用性的一個或多個HTTP請求
frontend:前端,指zabbix的web接口
1.4. Zabbix-server啟動後所涉及的進程
Poller:到被監控對象拉取數據的一個進程,例如基於agent對象,一個基於snmp協議的監控對象,如果我們的監控對象很多,我們可以根據需要啟動多個poller
httppoller:監控web頁面用到的專用poller
discoverer:zabbix通過你所指定的規則去發現某個範圍內的啟動了agent的主機,並把它自動添加到監控對象中
alerter:執行報警操作的進程
housekeeper:負責清理數據庫裏過期的歷史數據的進程
watchdog:負責監控zabbix-server所啟動的所有進程是否正常工作的進程
escalator:報警升級進程
timer:計時器進程,zabbix的很多功能都嚴重依賴於時間的
nodewatcher:監控個節點的進程
pinger:通過ping操作來探測節點是否在線的進程
db_config_syncer:數據庫的配置同步器,主要是用來完成在分布式場景中實現配置的同步的進程
db_data_syncer:數據庫的數據同步器,主要是用來完成在分布式場景中實現數據的同步的進程
2.部署環境
系統: CentOS 7
IP:192.168.2.205(zabbix-server)
IP:192.168.2.204(zabbix-agent,Linux)
IP:192.168.1.59(zabbix-agent,windows)
關閉 selinux 和防火墻(這裏暫時關閉iptables,部署完成後再開啟)

$ sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
$ sed -i ‘s/SELINUXTYPE=targeted/#&/‘ /etc/selinux/config
$ setenforce 0  # 可以設置配置文件永久關閉
$ systemctl stop iptables.service
$ systemctl stop firewalld.service
$ reboot  # 更改selinux需要重啟系統才會生效

#修改字符集,否則可能報 input/output error的問題,因為日誌裏打印了中文

$ localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
$ export LC_ALL=zh_CN.UTF-8
$ echo ‘LANG=zh_CN.UTF-8‘ > /etc/locale.conf

3.安裝配置zabbix
#安裝 MySQL
本教程使用 Mysql 作為數據庫,如果不使用 Mysql 可以跳過相關 Mysql 安裝和配置

$ yum -y install mariadb mariadb-devel mariadb-server  # centos7下安裝的是mariadb
$ systemctl enable mariadb
$ systemctl start mariadb

#設置mysql的root密碼
$ mysqladmin -u root -h localhost password ‘xxxxxxxx‘

#創建數據庫 zabbix 並授權

$ mysql -uroot -pxxxxxx
> create database zabbix character set utf8 collate utf8_bin;
> grant all privileges on zabbix.* to zabbix@localhost identified by ‘xxxxxxxx‘;
> quit

#安裝zabbix-server、zabbix-agent及相關組件

$ rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
$ yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent

#導入zabbix初始化數據
$ zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -pxxxxxxxx zabbix

#修改zabbix-server配置文件
$ vim /etc/zabbix/zabbix_server.conf
修改連接數據庫的配置
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=xxxxxxxx

#修改PHP時區
$ vim /etc/httpd/conf.d/zabbix.conf
將下面這行修改為亞洲上海
php_value date.timezone Asia/Shanghai

#啟動zabbix-server、zabbix-agent、httpd

$ systemctl restart zabbix-server zabbix-agent httpd
$ systemctl enable zabbix-server zabbix-agent httpd

4.配置zabbix前端
打開瀏覽器,訪問http://192.168.2.205/zabbix,會看到如下頁面
技術分享圖片
點擊“Next step”,下一步
技術分享圖片
確保PHP所有項目都OK,然後點擊“Next step”
技術分享圖片
此處為連接mysql的配置,請按照前面安裝時的配置填寫,然後點擊“Next step”
技術分享圖片
Name處可以填寫網站的名稱,然後點擊“Next step”
技術分享圖片
技術分享圖片
根據提示可以看到上面圖形界面的操作都寫到一個配置文件中,/etc/zabbix/web/zabbix.conf.php,確認無誤後,點擊“Finish”
技術分享圖片
登陸zabbix前端,默認賬號為?Admin,默認密碼為zabbix
5.配置zabbix中文界面
#修改PHP配置文件
確認zabbix是否開啟了中文件支持功能,/usr/share/zabbix/include/locales.inc.php
技術分享圖片
瀏覽器登陸zabbix前端,設置語言為Chinese(zh_CN),然後點擊“Update”
技術分享圖片
此時刷新一下頁面,便可以看到中文了。
6.安裝配置iptables
#安裝iptables
$ yum -y install iptables iptables-services

#配置iptables
$ vim /etc/sysconfig/iptables # 添加允許訪問80端口的策略
技術分享圖片
#啟動iptables

$ systemctl start iptables.service
$ systemctl enable iptables.service

#查看iptables狀態
$ systemctl status iptables.service
二、監控Linux主機
2.1.安裝zabbix-agent

$ rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
$ yum install -y zabbix-agent zabbix-get

2.2.配置zabbix-agent
$ vim /etc/zabbix/zabbix_agentd.conf # 修改agent配置文件
Server=192.168.2.205 # zabbix服務端內網IP
ServerActive=192.168.2.205 # zabbix服務端內網IP,Active表示agent主動推送
Hostname=Jump Server # zabbix客戶端主機名稱,需要和web端添加的名稱一致
Include=/etc/zabbix/zabbix_agentd.d/*.conf
2.3.配置iptables
$ vim /etc/sysconfig/iptables # 添加允許訪問10050端口的策略
-A INPUT -s 192.168.2.205 -p tcp -m multiport --dports 10050 -j ACCEPT
$ systemctl restart iptables.service # 重啟iptables
2.4.Web端添加Linux主機
配置-主機-創建主機,按下圖配置好後點擊“更新”
技術分享圖片
技術分享圖片
2.5.監控效果圖
監測中-圖形,選擇前面剛添加的主機Jump Server,便可看到監控圖。
技術分享圖片
技術分享圖片
三、監控windows主機
3.1.下載zabbix-agent
瀏覽器訪問zabbix官網:https://www.zabbix.com/download_agents,選擇windows對應的版本下載。
技術分享圖片
技術分享圖片
3.2.安裝配置zabbix-agent
解壓zabbix_agents_3.4.6.win.zip,會看到bin和conf兩個目錄,進入到conf目錄下,修改zabbix_agentd.win.conf配置文件。
LogFile=D:\zabbix_agents_3.4.6.win\log\zabbix_agentd.log
Server=192.168.2.205
ListenPort=10050
ServerActive=192.168.2.205
Hostname=Xuad Server
以管理員方式運行CMD,執行安裝程序

D:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe -c D:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf -i  #加載配置文件
D:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe -c D:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf -s  #添加windows自啟動服務

技術分享圖片
#確認10050端口已監聽
技術分享圖片
#卸載zabbix-agent服務
先停止服務,然後以管理員方式運行CMD,執行下面的命令
sc delete "Zabbix Agent"
3.3.防火墻開放10050端口
以管理員方式運行CMD,執行下面命令,添加開放10050端口策略。
netsh advfirewall firewall add rule name="Zabbix_Agent_tcp" dir=in protocol=tcp localport=10050 remoteip=192.168.2.205 action=allow
註:remoteip=192.168.2.205表示只允許192.168.2.205訪問10050端口,此為zabbix-server的IP。
3.4.web端添加windows主機
#創建主機群組
配置-主機群組,輸入組名稱,然後點擊“更新”。
技術分享圖片
#創建windows主機
配置-主機-創建主機,按下圖填寫好後,點擊“模板”。
技術分享圖片
配置-主機-模板,點擊“選擇”,勾選“Template OS Windows”,點擊“選擇”,然後點擊“添加”,最後點擊“更新”。
技術分享圖片
技術分享圖片
3.5.監控效果圖
監測中-圖形,選擇前面剛添加的主機Xuad Server,便可看到監控圖。
技術分享圖片
技術分享圖片
四、監控apache狀態
4.1.啟用apache的status功能
$ vim /etc/httpd/conf/httpd.conf
#編輯httpd.conf文件添加如下內容

ExtendedStatus On
<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Allow from 192.168.2.204   # apache主機IP
</Location>

#重啟apache
$ systemctl restart httpd
瀏覽器訪問http://192.168.2.204/server-status,確認配置生效
技術分享圖片
4.2.下載並配置zapache
#下載zapache

$ wget https://github.com/lorf/zapache/archive/master.zip
$ unzip master.zip

文件說明:
httpd-server-status.conf.sample 是用於配置server-status的上個步驟已經配置過了
userparameter_zapache.conf.sample 、zapache 關鍵的文件
zapache-template-active.xml zapache-template.xml模板文件,這兩個文件需要導入到web端
#配置zapache
$ cd zapache-master
將zapache配置文件放到相應目錄下

$ cp userparameter_zapache.conf.sample /etc/zabbix/zabbix_agentd.d/
$ cd /etc/zabbix/zabbix_agentd.d/
$ mv userparameter_zapache.conf.sample userparameter_zapache.conf

查看配置userparameter_zapache.conf內容
$ cat /etc/zabbix/zabbix_agentd.d/userparameter_zapache.conf
技術分享圖片
可以看到應當把解壓出來的zapache文件放到/var/lib/zabbixsrv/externalscripts/目錄下,當然也可以修改這個目錄位置,改為自定義的,我這裏就用默認配置文件裏的目錄,因此,創建這個目錄。

$ mkdir -p /var/lib/zabbixsrv/externalscripts/
$ cp zapache /var/lib/zabbixsrv/externalscripts/
$ chmod +x /var/lib/zabbixsrv/externalscripts/zapache

查看zabbix-agent配置文件,確保zabbix_agentd.d目錄開啟
Include=/etc/zabbix/zabbix_agentd.d/*.conf
4.3.web端導入模板
配置-模板-導入,點擊“瀏覽”,選擇模板文件點擊“打開”,點擊“導入”即可。
技術分享圖片
依次將zapache-template.xml和zapache-template-active.xml兩個模板文件都導入進來。
4.4.主機添加監控模板
配置-主機,點擊要添加的主機,點擊“模板”,點擊“選擇”,勾選
Template App Apache Web Server zapache,然後點擊“添加”,最後點擊“更新”。
技術分享圖片
4.5.監控效果圖
技術分享圖片
技術分享圖片
五、監控nginx狀態
5.1.啟用nginx的status功能
$ vim /etc/nginx/nginx.conf
#編輯nginx.conf文件添加如下內容

location /nginx-status {
            stub_status on;
            access_log off;
            allow 127.0.0.1;
            allow 192.168.2.204;   # nginx主機IP
        }

#使配置生效
$ /usr/sbin/nginx -t
技術分享圖片
$ /usr/sbin/nginx -s reload
用curl來進行測試,此操作請在zabbix-server主機上操作。
$ curl http://192.168.2.204/nginx-status
技術分享圖片
備註:
Active connections –當前活躍的連接數量
server accepts handled requests — 總共處理了8426個連接 , 成功創建 8426次握手, 總共處理了9104個請求
reading — 讀取客戶端的連接數.
writing — 響應數據到客戶端的數量
waiting — 開啟 keep-alive 的情況下,這個值等於 active – (reading+writing), 意思就是 Nginx 已經處理完正在等候下一次請求指令的駐留連接
5.2.創建監控腳本
$ vim /etc/zabbix/zabbix_agentd.d/nginx_status.sh

#!/bin/bash
##################################
# Zabbix monitoring script
#
# nginx:
# - anything available via nginx stub-status module
#
##################################
# Contact:
# [email protected]
# Zabbix requested parameter
ZBX_REQ_DATA="$1"
ZBX_REQ_DATA_URL="$2"
# Nginx defaults
NGINX_STATUS_DEFAULT_URL="192.168.2.204/nginx-status"    #(這裏寫網站的域名)
WGET_BIN="/usr/bin/wget"
#
# Error handling:
# - need to be displayable in Zabbix (avoid NOT_SUPPORTED)
# - items need to be of type "float" (allow negative + float)
#
ERROR_NO_ACCESS_FILE="-0.9900"
ERROR_NO_ACCESS="-0.9901"
ERROR_WRONG_PARAM="-0.9902"
ERROR_DATA="-0.9903" # either can not connect / bad host / bad port
# Handle host and port if non-default
if [ ! -z "$ZBX_REQ_DATA_URL" ]; then
 URL="$ZBX_REQ_DATA_URL"
else
 URL="$NGINX_STATUS_DEFAULT_URL"
fi
# save the nginx stats in a variable for future parsing
NGINX_STATS=$($WGET_BIN -q $URL -O - 2> /dev/null)
# error during retrieve
if [ $? -ne 0 -o -z "$NGINX_STATS" ]; then
 echo $ERROR_DATA
 exit 1
fi
#
# Extract data from nginx stats
#
case $ZBX_REQ_DATA in
 active_connections) echo "$NGINX_STATS" | head -1 | cut -f3 -d‘ ‘;;
 accepted_connections) echo "$NGINX_STATS" | grep -Ev ‘[a-zA-Z]‘ | cut -f2 -d‘ ‘;;
 handled_connections) echo "$NGINX_STATS" | grep -Ev ‘[a-zA-Z]‘ | cut -f3 -d‘ ‘;;
 handled_requests) echo "$NGINX_STATS" | grep -Ev ‘[a-zA-Z]‘ | cut -f4 -d‘ ‘;;
 reading) echo "$NGINX_STATS" | tail -1 | cut -f2 -d‘ ‘;;
 writing) echo "$NGINX_STATS" | tail -1 | cut -f4 -d‘ ‘;;
 waiting) echo "$NGINX_STATS" | tail -1 | cut -f6 -d‘ ‘;;
 *) echo $ERROR_WRONG_PARAM; exit 1;;
esac
exit 0

給此腳本添加可執行權限
$ chmod +x /etc/zabbix/zabbix_agentd.d/nginx_status.sh
5.3.配置zabbix-agent
$ vim /etc/zabbix/zabbix_agentd.conf
#編輯zabbix_agentd.conf文件,添加下面一行
UserParameter=nginx[*],/etc/zabbix/zabbix_agentd.d/nginx_status.sh "$1"
#重啟zabbix-agent
$ systemctl restart zabbix-agent
#在zabbix-server主機上測試,不報錯說明測試OK
$ zabbix_get -s 192.168.2.204 -p 10050 -k ‘nginx[reading]‘
技術分享圖片
5.4.Web端導入模板
配置-模板-導入,將nginx_template.xml導入進來。
技術分享圖片
5.5.主機添加監控模板
配置-主機-模板,添加Template_Nginx模板。
技術分享圖片
5.6.監控效果圖
技術分享圖片
技術分享圖片
附:nginx模板

<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
    <version>2.0</version>
    <date>2013-03-26T04:17:58Z</date>
    <groups>
        <group>
            <name>Templates</name>
        </group>
    </groups>
    <templates>
        <template>
            <template>Template_Nginx</template>
            <name>Template_Nginx</name>
            <groups>
                <group>
                    <name>Templates</name>
                </group>
            </groups>
            <applications>
                <application>
                    <name>Nginx</name>
                </application>
            </applications>
            <items>
                <item>
                    <name>Nginx $1</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[waiting,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>0</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Nginx $1</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[writing,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>0</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Nginx $1</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[active_connections,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>0</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Nginx $1</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[reading,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>0</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Nginx $1/sec</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[handled_requests,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>1</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Nginx $1/sec</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[accepted_connections,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>1</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Nginx $1/sec</name>
                    <type>0</type>
                    <snmp_community/>
                    <multiplier>0</multiplier>
                    <snmp_oid/>
                    <key>nginx[handled_connections,{$NGINX_STATUS_URL}]</key>
                    <delay>60</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>0</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>1</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>Nginx</name>
                        </application>
                    </applications>
                    <valuemap/>
                </item>
                <item>
                    <name>Number of $1 process</name>
                    <type>0</type>
                    <snmp_community>public</snmp_community>
                    <multiplier>0</multiplier>
                    <snmp_oid>interfaces.ifTable.ifEntry.ifInOctets.1</snmp_oid>
                    <key>proc.num[nginx]</key>
                    <delay>300</delay>
                    <history>30</history>
                    <trends>365</trends>
                    <status>0</status>
                    <value_type>3</value_type>
                    <allowed_hosts/>
                    <units/>
                    <delta>0</delta>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privpassphrase/>
                    <formula>1</formula>
                    <delay_flex/>
                    <params/>
                    <ipmi_sensor/>
                    <data_type>0</data_type>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications/>
                    <valuemap/>
                </item>
            </items>
            <discovery_rules/>
            <macros>
                <macro>
                    <macro>{$NGINX_STATUS_URL}</macro>
                    <value>http://127.0.0.1:10061/nginx_status</value>
                </macro>
            </macros>
            <templates/>
            <screens/>
        </template>
    </templates>
    <triggers>
        <trigger>
            <expression>{Template_Nginx:proc.num[nginx].last(0)}=0</expression>
            <name>Nginx is not running on {HOSTNAME}</name>
            <url/>
            <status>0</status>
            <priority>4</priority>
            <description>Nginx is not running.

      It has been stopped / shutdown or has crashed. 
      Check on the server for more details:
        - w / last
        - dmesg logs
        - /var/log/messages
        - nginx error logs</description>
            <type>0</type>
            <dependencies/>
        </trigger>
    </triggers>
    <graphs>
        <graph>
            <name>Nginx - Connections and Requests status</name>
            <width>900</width>
            <height>200</height>
            <yaxismin>0.0000</yaxismin>
            <yaxismax>100.0000</yaxismax>
            <show_work_period>0</show_work_period>
            <show_triggers>0</show_triggers>
            <type>0</type>
            <show_legend>1</show_legend>
            <show_3d>0</show_3d>
            <percent_left>0.0000</percent_left>
            <percent_right>0.0000</percent_right>
            <ymin_type_1>1</ymin_type_1>
            <ymax_type_1>0</ymax_type_1>
            <ymin_item_1>0</ymin_item_1>
            <ymax_item_1>0</ymax_item_1>
            <graph_items>
                <graph_item>
                    <sortorder>0</sortorder>
                    <drawtype>1</drawtype>
                    <color>FF9999</color>
                    <yaxisside>0</yaxisside>
                    <calc_fnc>4</calc_fnc>
                    <type>0</type>
                    <item>
                        <host>Template_Nginx</host>
                        <key>nginx[accepted_connections,{$NGINX_STATUS_URL}]</key>
                    </item>
                </graph_item>
                <graph_item>
                    <sortorder>1</sortorder>
                    <drawtype>2</drawtype>
                    <color>990000</color>
                    <yaxisside>0</yaxisside>
                    <calc_fnc>4</calc_fnc>
                    <type>0</type>
                    <item>
                        <host>Template_Nginx</host>
                        <key>nginx[handled_connections,{$NGINX_STATUS_URL}]</key>
                    </item>
                </graph_item>
                <graph_item>
                    <sortorder>2</sortorder>
                    <drawtype>0</drawtype>
                    <color>009900</color>
                    <yaxisside>0</yaxisside>
                    <calc_fnc>4</calc_fnc>
                    <type>0</type>
                    <item>
                        <host>Template_Nginx</host>
                        <key>nginx[handled_requests,{$NGINX_STATUS_URL}]</key>
                    </item>
                </graph_item>
            </graph_items>
        </graph>
        <graph>
            <name>Nginx - Threads status</name>
            <width>900</width>
            <height>200</height>
            <yaxismin>0.0000</yaxismin>
            <yaxismax>100.0000</yaxismax>
            <show_work_period>0</show_work_period>
            <show_triggers>0</show_triggers>
            <type>1</type>
            <show_legend>1</show_legend>
            <show_3d>0</show_3d>
            <percent_left>0.0000</percent_left>
            <percent_right>0.0000</percent_right>
            <ymin_type_1>1</ymin_type_1>
            <ymax_type_1>0</ymax_type_1>
            <ymin_item_1>0</ymin_item_1>
            <ymax_item_1>0</ymax_item_1>
            <graph_items>
                <graph_item>
                    <sortorder>0</sortorder>
                    <drawtype>1</drawtype>
                    <color>990000</color>
                    <yaxisside>0</yaxisside>
                    <calc_fnc>4</calc_fnc>
                    <type>0</type>
                    <item>
                        <host>Template_Nginx</host>
                        <key>nginx[writing,{$NGINX_STATUS_URL}]</key>
                    </item>
                </graph_item>
                <graph_item>
                    <sortorder>1</sortorder>
                    <drawtype>1</drawtype>
                    <color>999900</color>
                    <yaxisside>0</yaxisside>
                    <calc_fnc>4</calc_fnc>
                    <type>0</type>
                    <item>
                        <host>Template_Nginx</host>
                        <key>nginx[reading,{$NGINX_STATUS_URL}]</key>
                    </item>
                </graph_item>
                <graph_item>
                    <sortorder>2</sortorder>
                    <drawtype>1</drawtype>
                    <color>009900</color>
                    <yaxisside>0</yaxisside>
                    <calc_fnc>4</calc_fnc>
                    <type>0</type>
                    <item>
                        <host>Template_Nginx</host>
                        <key>nginx[waiting,{$NGINX_STATUS_URL}]</key>
                    </item>
                </graph_item>
            </graph_items>
        </graph>
    </graphs>
</zabbix_export>

CentOS 7安裝部署zabbix3.4