场景
测试环境中,压测常常依赖环境中的各种工具获取基础信息,而这些工具可能集中在某个中控机上,此时想打造的自动化工具的运行模式是:
- 通过中控机工具获取压测所需的基本信息
- 在中控机部署压测工具,实际压测任务分发到负载不高的计算节点运行
- 中控机统一汇总计算节点压测任务日志等信息,方便使用分析脚本统一汇总压测数据
构建思路
步骤:
- 通过docker封装压测工具镜像,在中控机控制远程计算节点docker load镜像
- 通过中控机执行ssh远程命令操作计算节点执行任务
实践
-
- 将压测工具tar包上传到中控机上
-
- 解压压测工具tar包,内含压测脚本 & 压测工具镜像
-
- 通过deploy.sh脚本,将【压测工具镜像】上传到远程计算节点并docker load
-
- 在中控机脚本中,封装以下命令实现压测任务执行
ssh ${remote_ip} sudo docker run --network host -rm image_name:tag ${cmd}