【发布时间】:2019-03-23 09:43:21
【问题描述】:
我正在尝试添加一个 crontab,以便通过用户数据脚本每 5 分钟获取一次使用的磁盘空间和磁盘空间利用率的 cloudwatch 指标。 下面是我的用户数据脚本:
#!/bin/bash
sudo yum install -y perl-Switch perl-DateTime perl-Sys-Syslog perl-LWP-Protocol-https perl-Digest-SHA.x86_64
curl https://aws-cloudwatch.s3.amazonaws.com/downloads/CloudWatchMonitoringScripts-1.2.2.zip -O
unzip CloudWatchMonitoringScripts-1.2.2.zip && rm CloudWatchMonitoringScripts-1.2.2.zip && cd aws-scripts-mon
crontab<<EOF
*/1 * * * * ~/aws-scripts-mon/mon-put-instance-data.pl -mem-util --mem-used --mem-avail --swap-util --disk-space-util --disk-space-used --disk-space-avail --memory-units=megabytes --disk-path=/dev/xvda1 --from-cron
EOF
./mon-put-instance-data.pl -mem-util --mem-used --mem-avail --swap-util --disk-space-util --disk-space-used --disk-space-avail --memory-units=megabytes --disk-path=/dev/xvda1
从 aws-terminal 运行时,所有这些步骤都可以正常工作, cloud-init-logs 中也没有任何步骤失败。我第一次能够获取云监视指标,但之后它们没有通过,所以这意味着 crontab 无法正常工作,如何解决?
【问题讨论】:
-
这实际上适用于用户数据脚本:stackoverflow.com/a/52524986/1736679
标签: amazon-web-services cron aws-sdk cloud-init