IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Zabbix监控平台部署实验——自定义zabbix监控项目 -> 正文阅读

[系统运维]Zabbix监控平台部署实验——自定义zabbix监控项目

Zabbix系列文章目录

第一章 Zabbix5.0版本的安装教程

第二章?Zabbix监控平台部署实验——自定义zabbix监控项目


目录

Zabbix系列文章目录

前言

二、操作步骤

1.安装配置环境

?2、授权zabbix-server可以进来拉数据

?3、关闭防火墙和selinux

第一步:打开nginx的状态统计功能

?第二步:设置zabbix-agent的参数文件

第四步:zabbix-server服务器端查看数据

第五步:zabbix前端操作

总结



前言

提示:主要是通过zabbix来自定义监控项,监控nginx的状态。


一、Zabbix监控的原理图

?根据Zabbix监控模式——主要是模拟一台zabbix-server,和两台zabbix-agent的监控,其中一台用是用centos-8 的nginx,还有一台是centos-7 的mariadb。

该实验模拟只监控一台nginx的自定义监控,通过nginx编写脚本获取数据,再传到zabbix监控中显示出来。

二、操作步骤

1.安装配置环境

zabbix-agent的配置:

zabbix-agent-nginx的安装:

# 查看centos是哪个版本
[root@LB-2 ~]# cat /etc/centos-release
CentOS Linux release 8.2.2004 (Core) 

#安装zabbix  5.0版本centos8
[root@LB-2 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
[root@LB-2 ~]# yum install zabbix-agent -y       # 安装zabbix-agent
[root@LB-2 ~]# service zabbix-agent start        # 启动agent服务
[root@LB-2 ~]# ps aux|grep zabbix                # 查看zabbix进程是否启动
[root@LB-2 ~]# ss -anplut|grep zabbix            # 查看端口

出现下图说明已经启动zabbix-agent:

?2、授权zabbix-server可以进来拉数据

 # 修改zabbix配置文件
[root@LB-2 ~]# cd /etc/zabbix
# 修改下面两行的ip         
[root@LB-2 zabbix]# vim zabbix_agentd.conf       

Server=192.168.138.100             允许ip地址,过来拿数据
ServerActive=192.168.138.100

#重新启动zabbix-agent
[root@LB-2 ~]# service zabbix-agent restart       

?修改如下图:

?

?3、关闭防火墙和selinux

[root@LB-2 zabbix]# service firewalld stop
Redirecting to /bin/systemctl stop firewalld.service
[root@LB-2 zabbix]# getenforce
Disabled

在zabbix-server上安装一下zabbix_get :是服务器端可以主动去agent端获取数据的命令

[root@zabbix-server ~]# yum install zabbix-get -y

4、开始设置自定义监控项

示例如下:

第一步:打开nginx的状态统计功能

状态统计功能:

开启nginx的状态统计功能,可以看到nginx目前的访问量信息、有多少在线、累计有多少次访问、连接了多少次等

(1)编辑?/usr/local/scnginx8/conf/nginx.conf? ?文件在server下加一个模块:

location = /sc_status{

stub_status;

}

?(2)启动nginx

#启动nginx   直接用安装的目录启动
[root@LB-2 conf]# /usr/local/scxiayuzhen99/sbin/nginx
[root@LB-2 conf]# ps aux|grep nginx    # 看进程是否真的启动nginx
root       27829  0.0  0.1  43384   880 ?        Ss   21:59   0:00 nginx: master process /usr/local/scxiayuzhen99/sbin/nginx
xiayuzh+   27830  0.0  0.6  77412  5424 ?        S    21:59   0:00 nginx: worker process
xiayuzh+   27831  0.0  0.6  77412  5424 ?        S    21:59   0:00 nginx: worker process
root       27836  0.0  0.1  12320   996 pts/0    R+   21:59   0:00 grep --color=auto nginx

?(3)访问nginx页面? ?用刚刚在nginx.conf文件中加的location路径/sc_status

?

?第二步:设置zabbix-agent的参数文件

agent-nginx使用的脚本:

[root@LB-2 zabbix_agentd.d]# pwd   # 进入到该zabbix目录下
/etc/zabbix/zabbix_agentd.d    

[root@LB-2 zabbix_agentd.d]# vim nginx_data.sh    #在agent-nginx上创建nginx脚本
#!/bin/bash

# 填写自己这台nginx的ip地址
HOST="192.168.138.5"   
PORT="80"
    case $1 in
        active)
           /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null| awk '/Active/{print $NF}'
            ;;
        reading)
           /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null| awk '/Reading/{print $2}'
           ;;

        writing)
           /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null| awk '/Writing/{print $4}'
            ;;
        waiting)
           /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null| awk '/Waiting/{print $6}'
            ;;
        accepts)
           /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null| awk 'NR==3 {print $1}'
            ;;
        ping)
             /sbin/pidof nginx | wc -l
            ;;
        handled)
            /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null|  awk 'NR==3{print $2}'
            ;;
        requests)
             /usr/bin/curl --insecure "http://$HOST:$PORT/sc_status" 2>/dev/null| awk 'NR==3{print $3}'
            ;;
esac

继续操作zabbix-server:

zabbix-agent使用的参数文件:
在zabbix-agent上执行
[root@LB-2 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d       --》路径

# 编辑自定义的用户参数文件
[root@LB-2 zabbix_agentd.d]# vim userparameter_nginx.conf    写入下面这行内容
UserParameter=sc.nginx.status[*],/etc/zabbix/zabbix_agentd.d/nginx_data.sh $1

# 授予权限
[root@LB-2 zabbix_agentd.d]# chmod +x nginx_data.sh 
[root@LB-2 zabbix_agentd.d]# ll
总用量 8
-rwxr-xr-x 1 root root 1085 8月   5 20:12 nginx_data.sh
-rw-r--r-- 1 root root   78 8月   5 16:58 userparameter_nginx.conf

# 刷新服务
[root@LB-2 zabbix_agentd.d]# service zabbix-agent restart
Redirecting to /bin/systemctl restart zabbix-agent.service

第四步:zabbix-server服务器端查看数据

在zabbix-server上添加监控项--》出图、触发器

监控项的key是sc.nginx.status[ping]

监控项的key是sc.nginx.status[active]

监控项的key是sc.nginx.status[requests]

zabbix服务器端:
[root@zabbix-server ~]# curl http://192.168.138.5/sc_status   # 获取前端页面信息
Active connections: 1 
server accepts handled requests
 310 310 303 
Reading: 0 Writing: 1 Waiting: 0 

# 使用zabbix-get命令获取相关信息
sc.nginx.status[]   定义好的格式
[root@zabbix-server ~]# zabbix_get -k sc.nginx.status[active]  -s 192.168.138.5
1
[root@zabbix-server ~]# zabbix_get -k sc.nginx.status[requests]  -s 192.168.138.5
305

第五步:zabbix前端操作

1、建立应用集——监控项——图形——触发器——添加聚合图形

2、关掉agent-nginx的服务

[root@LB-2 zabbix_agentd.d]# /usr/local/scxiayuzhen99/sbin/nginx -s stop

3、查看zabbix监控是否变化 看仪表盘——看聚合图形

4、启动agent-nginx

[root@LB-2 zabbix_agentd.d]# /usr/local/scxiayuzhen99/sbin/nginx

5、再次查看是否恢复

首先,登录进去创建一个主机。

?配置主机:

?配置模板:

主机群组选择Templates之后,再进来选择其他的。

?

?创建应用集:

?

?创建监控项:

键值要跟nginx配置文件的一致。

?

?创建触发器:

?创建图形:

?创建主机成功!

?在查看监控主机:

?点击图形:这样说明有数据展示

也可以添加到聚合图形中。

在仪表盘中查看是否警告:

如果这个时候后台nginx是启动的,就会显示绿色——是;如果关掉nginx,就会显示——否。可以通过开启或者关闭nginx,来查看监控警报。

启动agent-nginx:

[root@LB-2 zabbix_agentd.d]# /usr/local/scxiayuzhen99/sbin/nginx

关掉agent-nginx的服务:

[root@LB-2 zabbix_agentd.d]# /usr/local/scxiayuzhen99/sbin/nginx -s stop

查看端口是否启动nginx:

[root@LB-2 conf]# ps aux|grep nginx


总结

以上就是今天要讲的内容,本文介绍了使用zabbix来监控nginx,下次还可以用这样的方法试着监控其他的数据。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-08-06 10:14:35  更:2021-08-06 10:15:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/12 21:22:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码