文章目錄
- 添加http服務監控項
- 添加nginx服務監控項
-
- 建立nginx的監控項
- 監控mysql服務
Zabbix監控平台基于Zabbix的叢集基礎上操作,是以需要建立叢集。
添加http服務監控項
在上個實驗的基礎上,server2開啟httpd服務
-
因為http在zabbix中自帶監控模版,直接添加
點選配置->主機->server2->模版->選擇:Tempalte App HTTP Service
點選更新後server2模版中顯示Template App HTTP Service
添加nginx服務監控項
- zabbix監控項中沒有nginx,需要在zabbix-agent端部署nginx服務
- nginx部署
[[email protected] ~]# yum install -y gcc pcre-devel zlib-devel make #安裝需要的工具庫 [[email protected] ~]# tar zxf nginx-1.15.8.tar.gz [[email protected] ~]# cd nginx-1.15.8 [[email protected] nginx-1.15.8]# vim auto/cc/gcc 171 # debug ##注釋這兩行,關閉debug日志實作最小安裝 172 #CFLAGS="$CFLAGS -g" [[email protected] nginx-1.15.8]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module ##編譯指定nginx的按裝位置,和增加的子產品 [[email protected] nginx-1.15.8]# make && make install ##安裝 [[email protected] nginx-1.15.8]# cd /usr/local/nginx [[email protected] nginx]# du -sh 872K . [[email protected] conf]# vim /usr/local/nginx/conf/nginx.conf 3 worker_processes auto; 48 location /status { 49 stub_status on; #nginx中的stub_status子產品用于檢視nginx的一些狀态資訊 50 access_log off; #關閉日志記錄 51 } [r[email protected] conf]# /usr/local/nginx/sbin/nginx -t #檢查編輯的檔案是否有文法錯誤 [[email protected] conf]# ln -s /usr/local/nginx/sbin/nginx /sbin/ ##軟連接配接到/sbin/下 [[email protected] conf]# nginx #開啟nginx服務
過濾監控參數(通路次數、連接配接次數…),将過濾出的參數以key-value鍵值對的形式儲存:
[[email protected] nginx]# curl -s 172.25.25.2/status | grep Active | awk {'print $3'}
1
建立nginx的監控項
[[email protected] conf]# curl -s http://localhost/status |grep Active |awk '{print $3}' ##測試是否能夠取得鍵值
[[email protected] conf]# cd /etc/zabbix/zabbix_agentd.d/
[[email protected] zabbix_agentd.d]# ls
userparameter_mysql.conf
[[email protected] zabbix_agentd.d]# cp userparameter_mysql.conf userparameter_nginx.conf #以mysql監控模版複制一份nginx的模版
[[email protected] zabbix_agentd.d]# vim userparameter_nginx..conf #添加nginx監控項 [[email protected] zabbix_agentd.d]# cat userparameter_nginx.conf
UserParameter=nginx.active,curl -s http://localhost/status |grep Active |awk '{print $3}'
UserParameter=nginx.access,curl -s http://localhost/status |awk NR==3 |awk '{print $1}'
UserParameter=nginx.handled,curl -s http://localhost/status |awk NR==3 |awk '{print $2}'
UserParameter=nginx.request,curl -s http://localhost/status |awk NR==3 |awk '{print $3}'
[[email protected] zabbix_agentd.d]# systemctl restart zabbix-agent ##重新開機監控端口
zabbix-server端檢測是否能拿到資料
[[email protected] ~]# zabbix_get -s 172.25.25.2 -p 10050 -k "nginx.active"
1
[[email protected] ~]# zabbix_get -s 172.25.25.2 -p 10050 -k "nginx.request"
19
配置 ->主機-> 點選server2-> 點選監控項 ->建立監控項
添加監控項,這裡的鍵值要和建立監控項是的一緻;所有的監控項都以這種方法添加(建立後記得更新)
添加圖形,點選剛才的監控項
點選圖形->建立圖形->名稱->添加監控項(可同時選擇多個)->添加
添加成功後預覽:
如果不支援文字
1.)下載下傳喜歡的字型,到server1 下的/use/share/zabbix/fonts目錄替換
[[email protected] 4.0]# cd /usr/share/zabbix/fonts/
[[email protected] fonts]# ls
graphfont.ttf
[[email protected] fonts]# ls
graphfont.ttf simkai.ttf ## simkai.ttf 自己下的字型
[[email protected] fonts]# cd ..
[[email protected] zabbix]# cd include/
[[email protected] include]# vim defines.inc.php #編輯該檔案
:%s/graphfont/simkai/g #将所有的graphfont 改成simkai
監控mysql服務
1)可以先給server 主機添加自帶的監控mysql的模版
配置->主機(zabbix server)->模版
但是自帶的模版監控項比較少,我們可以添加模版增加監控項
配置mysql
[[email protected] ~]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm #安裝percona子產品
[[email protected] ~]#cd /var/lib/zabbix/percona/templates/
[[email protected] templates]#cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/ #将子產品檔案複制到zabbix監控目錄下
[[email protected] templates]#systemctl restart zabbix-agent #重新開機監控服務
[[email protected] templates]#cd /var/lib/zabbix/percona/scripts/
[[email protected] scripts]#vim ss_get_mysql_stats.php.cnf #由于該子產品監控腳本為php語言,是以這裡提供的資料庫與密碼也使用php語言
<?php
$mysql_user = 'root';
$mysql_pass = 'redhat';
[[email protected] scripts]#/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg #測試腳本
[[email protected] scripts]#cd /tmp/
[[email protected] tmp]#rm -fr localhost-mysql_cacti_stats.txt #由于此檔案所有者為root使用者,zabbix無法檢視,是以删除,zabbix檢視時會以自己的身份重建此檔案
導入percona-zabbix模版
配置->模版->導入->導入檔案->選擇
模版導入成功
給zabbix server 添加模版