目录
一.安装Docker(除了压力机每台服务器都需要按照如下步骤安装Docker)
七.应用服务器安装node-exporter(所有要被监控资源的服务器都要安装)
十.集成Grafaba+prometheus+node-exporter
十一.数据库服务器安装mysqld-exporter(MySQL安装可参考Docker安装MySQL与Redis)
十二.集成Grafana+Prometheus+mysqld-exporter
十四.集成Grafana+Prometheus+cadvisor
十五.数据库服务器安装redis_exporter(Redis安装可参考Docker安装MySQL与Redis)
十六.集成Grafana+Prometheus+redis_exporter
十七.集成SprintBoot+Prometheus+Grafana
前言
在上一篇《压测监控平台环境搭建》中主要写了关于常用的性能监控Docker+Jmeter+InfluxDB+Grafana+Prometheus+Exporter 的环境搭建方式,这些已经基本覆盖了我在公司做性能测试时候的基础监控,但对于系统级的监控这些还是远远不够的,通常有项目或需求需要进行性能测试的时候都是在独立的环境进行的。像数据库服务,应用服务,应用的链路追踪都是需要重新部署的,以及对Docker也是需要进行监控的,性能是一个很大的工程,涉及到的部门和技术都是很广的,性能测试不仅仅只是写写脚本,执行一下这简单,前期是需要对性能需求进行分析,评估,设计性能方案,性能策略等等,性能团队及相关人员对这些也会进行评审。
在前期工作评审通过后就进入到实施环节,在这环节我们首先要准备环境,而系统级性能监控环境需要性能团队完成,在基础服务和应用服务环境部署完成后,性能团队还要和开发,运维一起联调环境。今天带着大家从0搭建性能系统级监控环境,即使是没有任何基础的人员也可以通过这篇文章完成环境搭建工作落地。
可能有人会好奇上一篇文章已经写了为什么还会在重复写一遍呢?第一点,这篇文章除Java外所有用的都是最新版本,比如InfluxDb最新版本替换掉了1.8版本,整个过程遇到很多问题,对上一篇环境搭建也做了一些优化,这套环境所用到的工具全部是通过docker进行管理的,另外对大家的知识广度也会有一定的帮助。第二点,为了让大家实操起来方便,我会把上一篇文章的内容也融入到这里,这里写的更细更具体,以后在公司使用的时候直接看这一篇文章就够啦,这是一套真正0基础人员可以拿到公司中使用的性能环境。
环境部署流程
监控部署架构
环境部署实操
一.安装Docker(除了压力机每台服务器都需要按照如下步骤安装Docker)
1.把yum更新到最新
sudo yum update
中间部分省略.............................
2.安装需要的软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3.设置yum源为阿里云,配置yum源的代理
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4.安装Docker
sudo yum install docker-ce
执行安装命令后出现如下问题
解决方案
进入yum.repos.d目录,删除掉mirrors.aliyun.com_docker-.repo重新安装即可
cd yum.repos.d
rm -rf mirrors.aliyun.com_docker-.repo
sudo yum install docker-ce
重新安装过程
5.启动docker
systemctl start docker
6.查看当前docker使用的版本
docker -v
二.压力机部署Jmeter环境
-
上传Jmeter的安装包到压力机所在的服务器
rz(如果服务器上没有rz命令通过 yum install -y lrzsz 安装)
在弹出的对话框到Jmeter安装包存放的路径下选择并点击
点击【打开】即可上传
2.上传到服务器后在指定的目录下解压Jmeter安装包
unzip apache-jmeter-5.5.zip
ls
3.解压完成后是没有执行权限的,需要为/bin目录下jmeter,jmeter.sh文件赋予权限,这里为了方便就把整个目录都赋予执行权限啦
chmod 755 -R apache-jmeter-5.5 这里指的是为apache-jmeter-5.5目录及子目录递归赋予755的权限
cd bin
ll
4.验证Jmeter是否可用,由于Jmeter依赖java环境,需要提前安装JDK
./jmeter -v 执行后出现下图代表jmeter可正常使用
5.环境验证通过后在本地编写接口脚本并上传到压力机
6.压力机上执行jmeter脚本验证环境,要替换成自己的路径
cd xxxx/bin 进入到jmeter的bin目录下
./jmeter -n -t /自己的脚本存放路径/test.jmx
小经验:通常我们在公司会把jmeter配置环境变量,这样就不用到jmter的bin目录下执行脚本啦,这里就不说明了,jmeter的环境变量需要自己配置。
7.Jmeter在压力机的服务器上就安装完成啦,接下来安装InfluxDB
三.监控服务器上安装InfluxDB
1.下载InfluxDB的镜像,默认下的是最新版本
docker pull influxdb
2.创建容器并后台运行
docker run -d --name influxdb -p 8086:8086 -p 8083:8083 influxdb
docker run 常用参数总结
-d:表示该容器后台运行
-p:服务器端口:容器端口 将容器端口映射到服务器
--name:为容器设置一个名称
-v:服务器目录:容器目录 将所在服务器的目录挂载到容器的目录
-it:交互模式启动一个容器
3.查看在运行的容器
docker ps
# docker ps -a 查看全部容器
4.进入influxdb容器
docker exec -it influxdb /bin/bash
5.连接InfluxDB数据库,由于是InfluxDB最新版本,根据提示需要使用influx v1 shell进入
最新版本:influx v1 shell
历史&#x