我正在尝试创建一些容量规划报告,其中一项要求是了解一些 Unix 服务器的内存使用情况。
现在我对Unix的了解非常少。我通常只是登录并运行一些脚本。
但是对于这份报告,我需要收集 VMStat 数据并根据前几周按小时细分的数据生成报告,这是每 10 秒获取的 Vmstat 数据的平均值。
所以第一个问题:VMStat 是否默认登录,如果是,数据输出到服务器上的哪个位置?
如果没有,我该如何设置?
谢谢
vmstat
是您运行的命令。
以 10 秒为间隔(减去最后一个)生成一周的虚拟内存统计信息为 60,479 10 秒间隔
所以你想要的命令是:
nohup vmstat 10 604879 > myvmstatfile.dat &
这将创建一个非常大的文件 myvmstatfile.dat
编辑:RobKielty(&
将把这个工作放在后台,nohup
当你退出命令 shell 时会阻止任务挂起。如果你运行这个命令,监视这个文件被写入的磁盘分区是谨慎的to.df -h /path/to/directory/where/outputfile/resides
用于监控磁盘空间使用情况。)
我不知道你需要如何处理这些数据,所以我无法帮助你。
像这样创建一个crontab条目(crontab -e)
0 0 * * 0 /path/to/my/vmstat_script.sh
该文件vmstat_script.sh
将包含以下 bash 脚本命令。
#!/bin/bash
# vmstat_script.sh
vmstat 10 604879 > myvmstatfile.dat
mv myvmstatfile.dat myvmstatfile.dat.`date +%Y-%m-%d`
这将每周创建一个文件,其名称如下myvmstatfile.dat.2012-07-01
我用于监控 Linux vm 指标的命令如下: nohup vmstat 10 720| (读取时;做 echo "$(date +%d-%m-%Y" "%H:%M:%S) $REPLY"; done) >> nameofLogfile.log
这里 nohup 用于在后台运行进程。它将以 10 秒的间隔运行 2 小时。这是生成图表和报告的最佳命令,因为时间戳也将与不同的指标一起包含在日志中,以便我们可以相应地过滤日志。