zabbix 压测

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix 压测相关的知识,希望对你有一定的参考价值。

参考技术A 前景:
trapper 模式,zabbix 有个trapper 模式
trapper模式是通过 zabbix_send 往 key 里面供数

大体架构
agent 一台 (只做自动发现 items 用)
server 一台 (用来自动生成item和接受 值以及 发现告警信息)
自动发送key脚本 (部署在 server上,死循环往 key里供数)

压测的值 :value processed by zabbix server per second 这个 item的 值
压测的表达:当压测值达到一定值是,如果来了一条告警,是否立马能 获得 告警

规则就是 只有esb后面的 数字不一样, 1-4000

名称: zidongsend1.sh
内容:

4.数据计算:(假设 这个脚本执行完一次需要两秒)
每2秒insert 增加的值 = (1主item+6子item)*200 = 1400

1) 多开几个脚本一起跑(这里1-200循环,完全可以再开一个201-400循环,但是当脚本开的个数 到一定数量,基本就增长不了了,shell还是有瓶颈的)
2) 优化脚本,使其执行更快(比如用python多行程搞)
3)多开 子 item,这个效率是 最高的 ,翻倍翻得厉害
多开item,记得 value 变量的值要增长

这个值 是 我们的指标,有两种取值方法:

select * from history where itemid = 19261 ;
根据得到的itemid 获取他的 值,可以 把value processed by zabbix server per second这个监控项 刷新时间调到5s (默认1m)

本次测试的内容是 value processed by zabbix server per second 到达一定值的时候 ,这时候 有告警进来是否能立马收到

上面的 主item ,选一个 不在for 循环 里面的
然后 手动往 这个 item里 发值
给他的 子item创 tragger
实时刷新 problem ,看能否里获取告警或者恢复告警

jmeter安装配置教程及使用

背景:

因为双11,黑五快到了,所有的互联网电商行业都要做一件事情,那就是压测,常见的压测很多区分,接口压测和全链路压测、线上压测和线下压测,单元压测和功能压测。我们这里介绍一下接口压测和全链路压测。

常见使用的工具包括:zabbix、zuul、netdata、arthas、nginx流量监测。

常见压测工具包括:gatling 、jmeter等等

安装方法:

一、在Linux服务器先安装sdk(目前所有服务器均安装了java,可先查看java-version)

1、先从客户端下载jdk1.8.0_144.tar.gz,再上传到服务器

2、解压:tar -xzf jdk1.8.0_144.tar.gz,生成文件夹 jdk1.8.0_144

3、在/usr/local目录下创建java文件夹,再将 jdk1.8.0_144目录移动到/usr/local/java中

1)cd /usr/local

2) mkdir java

3)mv jdk1.8.0_144 /usr/local/java

3、配置java环境变量

1)vi /etc/profile

2)在最后面增加两行

     export JAVA_HOME=/usr/local/java/jdk1.8.0_144

     export PATH=$JAVA_HOME/bin:$PATH

    重启虚拟机后配置才会生效

3)执行命令:source /etc/profile,无需重启,配置的环境变量立马生效

     或者执行以下命令(必须是root角色,普通角色没有权限)

     # export JAVA_HOME=/usr/local/java/jdk1.8.0_144

     # export PATH=$JAVA_HOME/bin:$PATH

4、查看是否安装成功,执行命令:java-version

 技术图片

二、安装Jmeter 

1、将本地的Jmeter文件打包成zip文件:apache-jmeter-3.1.zip,再上传到服务器(路径/usr/local)

2、在服务器解压缩,生成apache-jmeter-3.1目录

1)安装unzip:apt-get install unzip 

2)解压缩:unzip apache-jmeter-3.1.zip

3、配置Jmeter环境变量。vi /etc/profile,再添加如下变量

export JMETER_HOME=/usr/local/apache-jmeter-3.1

export PATH=$JMETER_HOME/bin:$PATH

export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH

 技术图片

4、source /etc/profile (让配置文件立马生效)

5、查看是否安装成功,执行命令:jmeter -v

 技术图片

注意如果之前有数据或者切换了jmeter新版本,会发现少jar包,需要copy jar包到apache-jmeter-5.1libext  下。

 

三、接口测试

计数器:

技术图片

 

 随机变量:

 技术图片

BeanShell 后置处理程序:

技术图片

 

 

 

1、用例中涉及的Beanshell和csv、txt等文件上传(路径/usr/local/apache-jmeter-3.1/tools)

 技术图片

2、修改用例中的配置文件路径

(1)user_linux.txt存储多用户名,方便循环多用户登录。修改该文件的配置路径。

 技术图片

(2)修改Beanshell的路径

 技术图片

3、将本地生成的jmx文件上传到服务器(路径/home/jmx)

 技术图片 

4、输入命令后台运行:# nohup jmeter -n -t /home/jmx/login_circle.jmx -l log.jtl &

      (前台运行jmeter -n -t /home/jessica/httpThread.jmx -l log.jtl       

查看cat log.jtl,注意此方法返回即退出运行)

     参数说明:

     -n:以NoGUI方式运行脚本

            -t:后面接脚本名称

            -l:后面接日志名称,保存运行结果

 技术图片

5、查看后台运行过程 tailf nohup.out  (查找nobup.out所在路径 find / -name nohup.out )

技术图片

6、查看用例报告,vi /home/jmx/log.jtl

技术图片 

 7、图形化报表导出命令:

./jmeter -n -t /jpTest.jmx -l  /test20191018001.jtl -e -o /report/

 

以上是关于zabbix 压测的主要内容,如果未能解决你的问题,请参考以下文章

jmeter安装配置教程及使用

数据库性能衡量

Zabbix——Zabbix的安装和基本配置

生产环境全链路压测建设历程4:技术体系的发力

zabbix怎么监控hpunix

zabbix监控之迁移zabbix监控