2019.11.2 Zabbix agent端监控及自定义监控项配置

一、Linux-agent端的操作:

vim /etc/hostname

HOSTNAME=agent.zabbix.com

hoastname agent.zabbix.com

bash

cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.200.111 server.zabbix.com
192.168.200.112 agent.zabbix.com
192.168.200.110 windows10

iptables -F

systemctl stop firewalld

setenforce 0

ping server.zabbix.com -c 4

ping www.baidu.com

1、源码安装zabbix

yum -y install gcc gcc-c++ make

yum -y install libxml2-devel libcurl-devel pcre-devel ntpdate

ntpdate s1a.time.edu.cn

将zabbix-3.4.11.tar.gz 这个包上传并解压

tar xf zabbix-3.4.11.tar.gz -C /usr/src/
cd /usr/src/zabbix-3.4.11/
./configure --prefix=/usr/local/zabbix --enable-agent --with-net-snmp --with-libcurl --with-libxml2 && make-j2 && make install

cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
vim /etc/init.d/zabbix_agentd              /稍微修改

DAEMON=/usr/local/zabbix/sbin/zabbix_agentd

chmod +x /etc/init.d/zabbix_agentd
cd

useradd -M -s /sbin/nologin zabbix

chown -R zabbix:zabbix /usr/local/zabbix/
cd /usr/local/zabbix/
mkdir logs
chown -R zabbix:zabbix logs/
cp /usr/local/zabbix/etc/zabbix_agentd.conf{,.bak}
vim /usr/local/zabbix/etc/zabbix_agentd.conf

PidFile=/tmp/zabbix_agent.pid
Server=192.168.200.111
ServerActive=192.168.200.111
Hostname=agnet.zabbix.com
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
UnsafeUserParameters=1
UserParameter=mysql.version,mysql -V
UserParameter=mysql.status[*],/usr/local/zabbix/etc/chk_mysql.sh $1
UserParameter=mysql.ping,mysqladmin -uroot -p123 -P3306 -h192.168.200.112 ping | grep -c alive

service zabbix_agentd start
Zabbix agent started.
netstat -anpt | grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 83251/zabbix_agentd

下一步就可以做监控了

二、做监控

 点击agent.zabbix.com——>选择模板

 三、zabbix监控mysql数据库

1、server.zabbix.com服务器操作

cd /usr/local/zabbix/etc/
vim zabbix_agentd.conf

PidFile=/tmp/zabbix_agentd.pid
Server=127.0.0.1,192.168.200.111
ServerActive=192.168.200.111
Hostname=server.zabbix.com
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

UnsafeUserParameters=1
UserParameter=mysql.version,mysql -V
UserParameter=mysql.ststus[*],/usr/local/zabbix/etc/chk_mysql.sh $1
UserParameter=mysql.ping,mysqladmin -uroot -p123 -P3306 -h192.168.200.111 ping | grep -c aliv

2、编辑chk_mysql.sh脚本

vim /usr/local/zabbix/etc/chk_mysql.sh

#!/bin/bash
#FileName: check_mysql.sh
# Revision: 1.0
# Date: 2015/06/09
# Author: DengYun
# Email: [email protected]
# Website: www.ttlsa.com
# Description:
# Notes: ~
# -------------------------------------------------------------------------------
# Copyright: 2015 (c) DengYun
# License: GPL

# 用户名
MYSQL_USER=‘root‘

# 密码
MYSQL_PWD=‘123123‘

# 主机地址/IP
MYSQL_HOST=‘192.168.200.111‘

# 端口
MYSQL_PORT=‘3306‘

# 数据连接
MYSQL_CONN="/usr/bin/mysqladmin -u${MYSQL_USER} -p${MYSQL_PWD} -h${MYSQL_HOST} -P${MYSQL_PORT}"

# 参数是否正确
if [ $# -ne "1" ];then
echo "arg error!"
fi

# 获取数据
case $1 in
Uptime)
result=`${MYSQL_CONN} status|cut -f2 -d":"|cut -f1 -d"T"`
echo $result
;;
Com_update)
result=`${MYSQL_CONN} extended-status |grep -w "Com_update"|cut -d"|" -f3`
echo $result
;;
Slow_queries)
result=`${MYSQL_CONN} status |cut -f5 -d":"|cut -f1 -d"O"`
echo $result
;;
Com_select)
result=`${MYSQL_CONN} extended-status |grep -w "Com_select"|cut -d"|" -f3`
echo $result
;;
Com_rollback)
result=`${MYSQL_CONN} extended-status |grep -w "Com_rollback"|cut -d"|" -f3`
echo $result
;;
Questions)
result=`${MYSQL_CONN} status|cut -f4 -d":"|cut -f1 -d"S"`
echo $result
;;
Com_insert)
result=`${MYSQL_CONN} extended-status |grep -w "Com_insert"|cut -d"|" -f3`
echo $result
;;
Com_delete)
result=`${MYSQL_CONN} extended-status |grep -w "Com_delete"|cut -d"|" -f3`
echo $result
;;
Com_commit)
result=`${MYSQL_CONN} extended-status |grep -w "Com_commit"|cut -d"|" -f3`
echo $result
;;
Bytes_sent)
result=`${MYSQL_CONN} extended-status |grep -w "Bytes_sent" |cut -d"|" -f3`
echo $result
;;
Bytes_received)
result=`${MYSQL_CONN} extended-status |grep -w "Bytes_received" |cut -d"|" -f3`
echo $result
;;
Com_begin)
result=`${MYSQL_CONN} extended-status |grep -w "Com_begin"|cut -d"|" -f3`
echo $result
;;

*)
echo "Usage:$0(Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
;;
esac

chmod 777 chk_mysql.sh                 //为脚本加权

mysql -uroot -p123          //mysql授权

Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 5277
Server version: 5.5.64-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

MariaDB [(none)]> grant all on *.* to ‘root‘@‘server.zabbix.com‘ identified by ‘123‘;
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]>exit

killall -9 zabbix_agentd
killall -9 zabbix_server
/usr/local/zabbix/sbin/zabbix_agentd
/usr/local/zabbix/sbin/zabbix_server
netstat -anpt | egrep ‘:10050|10051‘

3、server.zabbix.com测试

[[email protected] etc]# ln -s /usr/local/zabbix/bin/* /usr/local/bin/
[[email protected] etc]# zabbix_get -s 192.168.200.111 -k mysql.ping
1
[[email protected] etc]# zabbix_get -s 192.168.200.111 -k mysql.status[Com_update]            //会有一个数字,这里我没做出来

4、为server.zabbix.com添加服务模板

网页上:配置——>主机——>选择server.zabbix.com——>模板——>选择

点击选择——>添加——>更新

5、创建MySQL服务图形

配置——>主机——>server.zabbix.com下的图形——>创建图形——>名称是:mysql.status、点击添加,找到MYSQL.status选择

原文地址:https://www.cnblogs.com/990624lty-jhc/p/11781514.html

时间: 2024-11-09 19:15:34

2019.11.2 Zabbix agent端监控及自定义监控项配置的相关文章

zabbix agent端启动时报错:“错误1053:服务没有及时响应启动或控制请求”

按照前面文章的方法,又想加一台Windows服务器到zabbix监控,结果在最后一步,点击右键菜单"启动"时,却报错了. 我就是在zabbix agent端服务器的DOS窗口,执行"D:\zabbix_agents_2.4.4.yg\bin\win64>zabbix_agentd.exe -c D:\zabbix_agents_2.4.4.yg\conf\zabbix_agentd.win.conf -d"命令.(注意我的路径,并不一定照搬.) 里面的&quo

zabbix监控之自定义监控项目

zabbix搭建好后,除了调用默认的模板,还要监控其它常用的进程,有redis,rsync,nginx,gunicorn,mysql等等都要进行监控. 自定义监控的配置过程如下: 1.编写进程监控脚本,获取监控项的具体值 2.在zabbix_agentd.conf文件中定义UserParameter 3.在界面配置item,通过键值来控制传参 4.查看监控数据情况 5.配置触发器,用来报警 6.宕服务测试 对于zabbix的安装与邮件报警设置,可参考两篇文章. http://yangrong.b

ansible-playbook基于role的配置一键安装zabbix客户端以及拉取自定义监控脚本

在IT工作中,您可能会一遍又一遍地执行相同的任务:没有人喜欢重复的任务.通过Ansible,IT管理员可以开始自动化日常任务中的苦差事.自动化解放了管理人员,专注于通过加快应用交付时间和建立在成功文化基础之上,为业务提供更多价值的努力.最终,Ansible为团队提供了他们永远无法获得足够的一件事:时间.让聪明的人专注于聪明的事情. Ansible是一种简单的自动化语言,可以完美地描述IT应用程序基础结构.它易于学习,自我记录,并且不需要毕业级的计算机科学学位来阅读.自动化不应该比它正在取代的任务

Spring Boot 揭秘与实战(九) 应用监控篇 - 自定义监控端点

文章目录 1. 继承 AbstractEndpoint 抽象类 2. 创建端点配置类 3. 运行 4. 源代码 Spring Boot 提供的端点不能满足我们的业务需求时,我们可以自定义一个端点. 本文,我将演示一个简单的自定义端点,用来查看服务器的当前时间,它将返回两个参数,一个是标准的包含时区的当前时间格式,一个是当前时间的时间戳格式. 继承 AbstractEndpoint 抽象类 首先,我们需要继承 AbstractEndpoint 抽象类.因为它是 Endpoint 接口的抽象实现,此

Zabbix Agent端配置文件说明

由于工作中经常接触到zabbix,所以将agent配置整理一下,方便日常查看. # This is a config file for the Zabbix agent daemon (Unix) # To get more information about Zabbix, visit http://www.zabbix.com ############ GENERAL PARAMETERS ################# ### Option: PidFile #   Name of P

zabbix agent 端自动注册

参考文档:https://www.zabbix.com/documentation/3.4/manual/appendix/config/zabbix_agentd agent端设置 修改配置文件vim zabbix_agentd.conf #运行执行远程命令 EnableRemoteCommands=1 #使用远程命令日志 LogRemoteCommands=1 #指定server端 Server=server端IP #agent端使用端口 ListenPort=agent端口 #监听地址,可

Zabbix(一):server,agent端 安装配置及主机,监控项,触发器,动作,媒介配置步骤

Zabbix(一):server端配置.agent端配置及创建主机组.主机.Application.Item.Trigger步骤详解 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题.  Zabbix的逻辑组件: - 主机(host):被监控的网络设备,通常可以使用IP或DNS名称来指定: - 主机组(hostgroup):主机的逻

zabbix3.0之agent端加入监控

zabbix客户端: [[email protected] ~]#rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0- 1.el6.noarch.rpm [[email protected] ~]#yum install -y zabbix-agent [[email protected] ~]#/etc/init.d/zabbix-agent start zabbix_agent配置 [[ema

zabbix详解:(四)添加自定义的监控项目并使用

从安装的第一天,就必然有人会有疑问,默认的监控模板不好用,或者说根本没有自己想要的,这可怎么办呢?没关系,zabbix和nagios一样,可以自定义监控项目,当然包括报警规则和视图了,也不是很复杂. 添加自定义的监控项目: 操作之前要知道原理:原理是server端调用agent端配置的键值参数调用脚本,然后脚本参数传输给server端,server端写进数据库,然后获取到新的数值再进行处理并在前端显示给用户看. 所以我们需要做的事情有三个: 第一,编写监控脚本 第二,修改zabbix_agent