使用步骤:
1.monitor.sh脚本拷贝到待监控的linux服务,存放路径最好在/data;
2.赋予monitor.sh可执行的权限,一般 ‘chmod 777 monitor.sh;
3.运行monitor.sh
./monitor.sh dockerID 抓取次数 每次抓取的间隔多少秒
例如:./monitor.sh 582e8ae7eee4 10 30
监控时长=10*30=300秒
监控内容:
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O
4.最后生成的文件:hostname_开始运行的实际.csv
例如:whzbslave18_20210701210340.csv
脚本(monitor.sh):
#!/bin/bash Hostname=$(hostname) Date=$(date +%Y%m%d%H%M%S) filename=${Hostname}_${Date}.csv n=0 while(($n<$2)) do date +%Y%m%d%H%M%S >> $filename docker stats --no-stream $1 --format "table{{.Container}} {{.CPUPerc}} {{.MemUsage}} {{.MemPerc}} {{.NetIO}} {{.BlockIO}}" >> $filename let "n++" sleep $3 done
实现效果: