1.圖形管理
開啓zabiix_server;zabbix_agent;數據庫服務
systemctl start mariadb
systemctl enable mariadb
systemctl start zabbix-server
systemctl enable zabbix-server
systemctl start zabbix-agent
systemctl enable zabbix-agent
rpm -ivh zabbix-get-3.4.6-1.el7.x86_64.rpm
zabbix_get -s 172.25.30.2 -p 10050 -k 'nginx.active'
systemctl start httpd
systemctl enable httpd
1.1>安裝nginx添加status模塊
安裝nginx
rpm -ivh nginx-1.8.0-1.el6.ngx.x86_64.rpm
vim /etc/nginx/conf.d/default.conf
部署設置只有本機可以訪問
nginx -t
在監控中取出Active connetcions:第一步我們需要用awk取出我們想要的數據;第二步在配置文件設置其鍵值;第三步在監控項裏添加該鍵值;第四步將監控項添加到圖形
cd /etc/zabbix/zabbix_agentd.d
cp userparameter_mysql.conf userparameter_nginx.conf
vim userparameter_nginx.conf
UserParameter=nginx.active,curl -s http://127.0.0.1/status |grep Active |awk '{print $3}'
[root@server2 bin]# curl -s http://127.0.0.1/status |grep Active |awk '{print $3}'
1
/etc/init.d/zabbix-agent start
/etc/init.d/zabbix-agent restart
systemctl start mariadb
chkconfig zabbix-agent on
1.2>創建監控項:鍵值在配置文件中寫入的名稱自定義
1.3>創建圖形:添加監控項:
1.4> 預覽圖形:該圖形1h更新一次我們可以自己設置時間
2.添加多個監控項並繪製到圖形:
相同的方法:編輯配置文件:定義不同的鍵值爲監控項
vim userparameter_nginx.conf
UserParameter=nginx.active,curl -s http://127.0.0.1/status |grep Active |awk '{print $3}'
UserParameter=nginx.active1,curl -s http://127.0.0.1/status |awk NR==3 |awk '{print $1}'
UserParameter=nginx.active2,curl -s http://127.0.0.1/status |awk NR==3 |awk '{print $2}'
UserParameter=nginx.active3,curl -s http://127.0.0.1/status |awk NR==3 |awk '{print $3}'
3 .添加percona-zabbix-templates模塊
[root@server1 ~]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
[root@server1 ~]# cd /var/lib/zabbix/
[root@server1 zabbix]# cd percona/scripts/
[root@server1 scripts]# ls
get_mysql_stats_wrapper.sh ss_get_mysql_stats.php
[root@server1 scripts]# cd /var/lib/zabbix/percona/templates
[root@server1 templates]# cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d
[root@server1 templates]# cd /etc/zabbix/zabbix_agentd.d/
[root@server1 zabbix_agentd.d]# ls
userparameter_mysql.conf userparameter_percona_mysql.conf
[root@server1 zabbix_agentd.d]# vim userparameter_percona_mysql.conf #文件中有很多模塊
[root@server1 zabbix_agentd.d]# systemctl restart zabbix-agent
[root@server1 ~]# cd /var/lib/zabbix/
[root@server1 zabbix]# cd percona/scripts/
[root@server1 scripts]# vim ss_get_mysql_stats.php.cnf
<?php
$mysql_user = 'root';
$mysql_pass = 'westos';
[root@server1 scripts]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
4
[root@server1 scripts]# cd /tmp
[root@server1 tmp]# ls
localhost-mysql_cacti_stats.txt
systemd-private-341c793ecd2a49cbad1475ad17be3378-httpd.service-ZU3wFj
systemd-private-341c793ecd2a49cbad1475ad17be3378-mariadb.service-5JtpOe
systemd-private-e30b2052b8c6427981d22b219c6ca377-httpd.service-XpezEC
systemd-private-e30b2052b8c6427981d22b219c6ca377-mariadb.service-IE1y50
[root@server1 tmp]# rm -f localhost-mysql_cacti_stats.txt
[root@server1 ~]# yum install -y net-tools
[root@server1 ~]# zabbix_get -s 127.0.0.1 -p 10050 -k 'MySQL.Threads-cached'
0
[root@server1 ~]# vim ~zabbix/.my.cnf
[client]
user=root
password=westos
在真機下載
zbx_percona_mysql_template.xml :在zabbix圖形模塊導入該模塊:
Template Percona MySQL Server
5.添加jdk模塊
5.1>zabbix_agent安裝jdk並修改jdk端口爲8888
server2:
rpm -ivh jdk-8u121-linux-x64.rpm
tar zxf apache-tomcat-7.0.90.tar.gz -C /usr/local
cd /usr/local
ln -s apache-tomcat-7.0.90/ tomcat
cd tomcat/
bin/startup.sh
bin/shutdown.sh
cd bin/
vim catalina.sh #tomcat端口
CATALINA_OPTS='-Dcom.sun.managerment.jmxremote
-Dcom.sun.management.jmxremote.port=8888
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false'
./shutdown.sh
./startup.sh
netstat antlup | grep 8888
tcp 0 0 :::8888 :::* LISTEN 7208/java
tcp 0 0 ::ffff:172.25.30.2:8888 ::ffff:172.25.30.1:60122 ESTABLISHED 7208/java
5.2> zabbix_server安裝java_gateway添加java網關:
yum install zabbix-java-gateway-3.4.6-1.el7.x86_64.rpm
cd /etc/zabbix/
vim zabbix_java_gateway.conf
systemctl start zabbix-java-gateway
netstat -antlp |grep 10052
vim zabbix_server.conf #修改java網關
systemctl restart zabbix_server
在zabbix添加模塊:
zbx_percona_mysql_template.xml
6.添加alert報警模塊在監控中
安裝註冊onealert:
首先需要保證我們的監控服務是能夠和外界通信這樣才能發起報警引擎
6.1> 虛擬機聯網:
#真機加僞裝
iptables -t nat -I POSTROUTING -s 172.25.30.0/24 -j MASQUERADE
# 虛擬機加網關
route add default gw 172.25.30.250
# 添加解析114.114.114.114
vim /etc/resolv.conf
2>安裝註冊onealert
tar zxf oneitsm_zabbix_release-1.2.0.tar.gz
cd oneitsm/bin/
安裝+腳本+key
bash install.sh 2b79074c-146a-5ac9-92c9-c571528c2c04 安裝key
start to create config file...
Zabbix管理地址: http://172.25.30.1/zabbix
Zabbix管理員賬號: admin
Zabbix管理員密碼:
create action success!
安裝成功.
當關閉zabbix-agent:監控中server2的zbx就會顯示紅色證明該服務宕掉此時我們在onealert中設置的報警設置就會啓動,然後發郵件提醒;分派任務;我們還可以設置危險解除再次發送郵件;這些方式都可以自定義。
解決問題:/etc/init.d/zabbix-agent start:
7.克隆操作系統
點擊全克隆——>重命名—–>添加——>批量操作(將類型修改爲主動)
當操作系統設置爲主動時agent爲被動是不會被自動發現的;因爲他並沒有開啓10050端口
# 被動agent
vim /etc/zabbix/zabbix_agentd.conf
#Server=127.0.0.1
StartAgents=0
ServerActive=172.25.30.1
Hostname=server3
/etc/init.d/zabbix-agent restart
netstat -antlp #沒有開啓10050端口:
主動agent:當監控沒有主動尋找監控項時她自己主動連接將數據送到監控從而減小監控的壓力
vim /etc/zabbix/zabbix_agentd.conf
Server=172.25.30.1
StartAgents=3
ServerActive=172.25.30.1
8 . 安裝proxy反向代理:也可以支持橫向拓展:
原理圖:zabbix_server去內網取數據要經過一層火牆而當他把任務分配給內網中的proxy代理代理就會幫他在agent取數據從內部送出這比他自己從外部取更加方便快捷
數據流向:master——->proxy1;proxy2;…——>agent(22,80,21,3306)——->proxy—->master
監控過程:採集——>存儲—–>展示
我們選用server3作proxy代理但是proxy和agent衝突所以先關閉server3上的zabbix_agent
Proxy:
yum install zabbix-proxy-mysql-3.4.6-1.el6.x86_64.rpm fping-2.4b2-16.el6.x86_64.rpm -y
yum install -y mysql-server
vim /etc/zabbix/zabbix_proxy.conf
Mysql:安裝數據庫爲了將server2的數據取出來存儲加速傳遞給zabbix_server;我們並沒有對proxy的數據庫進行操作而是利用他的代理作用將server2---->proxy
mysql> create database zabbix_proxy character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'westos';
cd /usr/share/doc/zabbix-proxy-mysql-3.4.6/
zcat schema.sql.gz | mysql -u zabbix -p zabbix_proxy
Enter password:
/etc/init.d/zabbix-proxy start
添加代理----->server3----->代理主機server2
將server2agent——>server3:
agent是通過proxy和外界連接的所以我們需要將其的server指向他的代理
vim /etc/zabbix/zabbix_agentd.conf
/etc/init.d/zabbix-agent restart