基于docker一键部署 x86的cpu_mem_hog 用于生成CPU和内存负载,用于服务器cpu和内存使用不达标的

  1. 拉取镜像
bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/qiluo-images/cpu_mem_hog:latest

cpu_mem_hog 镜像,用于生成CPU和内存负载。

bash 复制代码
docker run -d \
  --privileged=true \
  --name cpu-mem-test \
  --restart unless-stopped \
  --cpus 4.0 \            
  --memory 8g \
  -e CPU_CORES=4 \
  -e MEMORY_GB=6 \
registry.cn-hangzhou.aliyuncs.com/qiluo-images/cpu_mem_hog:latest

命令说明:

bash 复制代码
docker run -d \
  --privileged=true \            # 赋予容器特权模式
  --name cpu-mem-test \          # 容器名称
  --restart unless-stopped \     # 重启策略
  --cpus 4.0 \                  # 限制使用4个CPU核心
  --memory 8g \                 # 限制使用8GB内存
  -e CPU_CORES=4 \              # 环境变量:使用4个CPU核心
  -e MEMORY_GB=6 \              # 环境变量:分配6GB内存
  registry.cn-hangzhou.aliyuncs.com/qiluo-images/cpu_mem_hog:latest

参数说明

容器配置参数

--privileged=true:容器以特权模式运行,可以访问主机设备

--name cpu-mem-test:指定容器名称便于管理

--restart unless-stopped:除非手动停止,否则自动重启

--cpus 4.0:限制容器最多使用4个CPU核心

--memory 8g:限制容器最多使用8GB内存

环境变量

CPU_CORES=4:告诉测试程序使用4个CPU核心进行压力测试

MEMORY_GB=6:告诉测试程序分配6GB内存进行测试

功能用途

这个容器主要用于:

系统压力测试:模拟高CPU和内存使用场景

资源限制验证:测试Docker资源限制是否生效

监控系统测试:验证监控告警系统在资源紧张时的表现

容器编排测试:测试K8s或其他编排系统的资源调度能力

使用场景

  1. 开发测试
bash 复制代码
# 快速创建一个测试环境
docker run -d --cpus 2 --memory 4g -e CPU_CORES=2 -e MEMORY_GB=3 ...
  1. 监控验证
bash 复制代码
# 测试监控系统能否正确捕获资源异常
docker run -d --cpus 1 --memory 1g -e CPU_CORES=1 -e MEMORY_GB=0.9 ...
bash 复制代码
3. 清理容器# 停止并删除测试容器
docker stop cpu-mem-test
docker rm cpu-mem-test

注意事项

资源限制:虽然设置了环境变量要求6GB内存,但容器实际被限制在8GB内

特权模式:--privileged=true 给了容器较高权限,生产环境需谨慎使用

资源竞争:在资源有限的机器上运行可能影响其他服务

监控建议:运行时应监控主机资源使用情况

安全建议

对于生产环境测试:

使用非特权模式(如果测试允许)

设置明确的资源限制

在隔离的测试环境中进行

测试完成后及时清理容器

这个工具非常适合在可控环境中进行系统压力测试和资源管理验证。

相关推荐
^—app5668661 天前
游戏运存小启动不起来临时解决方法
运维·服务器
摇滚侠1 天前
expdp 查看帮助
java·数据库·oracle
:1211 天前
java基础
java·开发语言
志栋智能1 天前
超自动化安全:构建智能安全运营的核心引擎
大数据·运维·服务器·数据库·安全·自动化·产品运营
曹牧1 天前
Spring:@RequestMapping注解,匹配的顺序与上下文无关
java·后端·spring
daixin88481 天前
cursor无法正常使用gpt5.5等模型解决方案
java·redis·cursor
韦禾水1 天前
记录一次项目部署到tomcat的异常
java·tomcat
曦月合一1 天前
树莓派安装jdk、tomcat、vnc、谷歌浏览器开机自启等环境配置
java·tomcat·树莓派
Edward111111111 天前
4月28日防火墙问题
linux·运维·服务器
想学后端的前端工程师1 天前
【补充内外网突然不通的情况】
运维·服务器