图文讲解Zabbix 分布式监控平台添加服务监控项

一、导语

我的上一篇博客 图文讲解Zabbix 分布式监控平台安装过程 分享了怎么安装Zabbix 分布式监控平台,接下来我们来看看 zabbix 是怎样添加服务监控项的

二、添加 http 服务监控项

利用 zabbix 自带的监控模版

点击 配置->主机-> server2 ->模版 ->选择 -> Template App HTTP Service
这里写图片描述
这里写图片描述
这里写图片描述

再点击 添加 -> 更新
这样主机 server2的监控项中就出现了 HTTP 服务
这里写图片描述

三、监控 zabbix server 上的 mysql 服务

1.配置mysql

在/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf 文件中指定了 zabbix agent 如何获取 mysql服务的各种信息,并在/var/lib/zabbix 目录中新建“.my.cnf”文件,用以指定 zabbix agent 如何登陆数据库,默认使用的是 zabbix 用户,可以在 zabbix_server.conf 文件中找到密码。

[root@zabbix_server ~]# cd /etc/zabbix/zabbix_agentd.d
[root@zabbix_server zabbix_agentd.d]# ls
userparameter_mysql.conf
[root@zabbix_server zabbix_agentd.d]# cat userparameter_mysql.conf | grep mysql

# Flexible parameter to grab global variables. On the frontend side, use keys like mysql.status[Com_insert].
# Key syntax is mysql.status[variable].
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/var/lib/zabbix mysql -N | awk '{print $$2}'
# Flexible parameter to determine database or table size. On the frontend side, use keys like mysql.size[zabbix,history,data].
# Key syntax is mysql.size[<database>,<table>,<type>].
UserParameter=mysql.size[*],bash -c 'echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema=\"$1\"")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name=\"$2\"");" | HOME=/var/lib/zabbix mysql -N'
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
UserParameter=mysql.version,mysql -V

[root@zabbix_server zabbix_agentd.d]# mkdir -p /var/lib/zabbix

[root@zabbix_server ~]# mysql_secure_installation      ##添加秘码
[root@zabbix_server ~]# mysql -ppasswd     ##测试登陆
MariaDB [(none)]> 
[root@zabbix_server ~]# mysqladmin -uroot -ppasswd ping | grep -c alive        ##测试获取 mysql服务的信息
1
[root@zabbix_server zabbix]# cd /var/lib/zabbix/
[root@zabbix_server zabbix]# vim .my.cnf

[mysql]
host=localhost
user=root
password=passwd
socket=/var/lib/mysql/mysql.sock

[mysqladmin]
host=localhost
user=root
password=passwd
socket=/var/lib/mysql/mysql.sock

[root@zabbix_server zabbix]# systemctl restart zabbix-agent.service
[root@zabbix_server el7]# yum install -y zabbix-get-3.2.6-1.el7.x86_64.rpm
[root@zabbix_server ~]# zabbix_get -s 127.0.0.1 -k mysql.version
mysql  Ver 15.1 Distrib 5.5.44-MariaDB, for Linux (x86_64) using readline 5.1

[root@zabbix_server ~]# zabbix_get -s 127.0.0.1 -k mysql.ping      ##测试获取 mysql服务的信息
1

##如果是监控远程主机的 mysql 服务需要创建 zabbix 用户并授权
MariaDB [(none)]> GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY 'passwd';
MariaDB [(none)]> FLUSH PRIVILEGES;

点击 配置->主机-> Zabbix server ->模版 ->选择 -> Template App MySQL

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

点击 配置->主机->Zabbix server 图形 可以看到两个新的监控图形
这里写图片描述

四、监控 zabbix server 上的 nginx 服务

1.安装nginx

##agent
[root@server2 ~]# yum install -y gcc-c++ pcre-devel zlib-devel
[root@server2 ~]# tar -zxf nginx-1.12.0.tar.gz
[root@server2 ~]# cd nginx-1.12.0
[root@server2 nginx-1.12.0]# ./configure --with-http_stub_status_module --prefix=/usr/local/nginx
[root@server2 nginx-1.12.0]# make && make install
[root@server2 nginx-1.12.0]# cd /etc/zabbix/zabbix_agentd.d/
[root@server2 zabbix_agentd.d]# vim nginx.conf

UserParameter=nginx.active,curl -s http://172.25.27.2/status | grep Active | awk '{print $NF}'
UserParameter=nginx.server,curl -s  http://127.0.0.1/status |awk NR==3 | awk '{print $1}'
UserParameter=nginx.accept,curl -s  http://127.0.0.1/status |awk NR==3 | awk '{print $2}'
UserParameter=nginx.handled,curl -s  http://127.0.0.1/status |awk NR==3 | awk '{print $3}'

[root@server2 zabbix_agentd.d]# /etc/init.d/zabbix-agent restart

[root@server2 zabbix_agentd.d]# vim /usr/local/nginx/conf/nginx.conf

        location / {
            root   html;
            index  index.html index.htm;
        }
        location /tatus {
                stub_status on;
                access_log off;
                }

[root@server2 ~]# ln -s /usr/local/nginx/sbin/nginx /sbin/
[root@server2 ~]# nginx -t
[root@server2 ~]# /etc/init.d/httpd stop
[root@server2 ~]# nginx

http://172.25.27.2/status 测试

这里写图片描述

##server测试是否能拿到数据
[root@zabbix_server ~]# zabbix_get -s 172.25.27.2 -k nginx.server
8
[root@zabbix_server ~]# zabbix_get -s 172.25.27.2 -k nginx.accept
9
[root@zabbix_server ~]# zabbix_get -s 172.25.27.2 -k nginx.handled
12

2.添加监控项并创建图形

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述
这里写图片描述

这里写图片描述

未完待续

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值