cloudinit如何在引导vm时安排定期任务

时间:2015-02-17 21:00:46

标签: cloud-init

使用Nova boot创建vm时,我正在为它提供一个用户数据脚本 (cloud-init脚本)。

我想知道的是,如何在该cloud init脚本中指定(或以其他任何方式执行此操作): - 安排一个cron作业每2小时运行一次

我想说要运行“du -s njain /” 每2小时查找一次我的目录大小

我知道“runcmd”可以用来做一次..但是我如何让它定期运行?  du -s ../ njain /

2 个答案:

答案 0 :(得分:13)

现在可能为时已晚,但通过cloud-init执行此操作的正确方法就是使用cloud-config write_files模块并在/etc/cron.d中创建一个cron条目文件

对于您的示例,cloud-init userdata看起来像:

#cloud-config 

write_files:
  - owner: root:root
    path: /etc/cron.d/your_cronjob
    content: * */2 * * * [USER] du -s njain/

注意:您必须将[USER]替换为您要运行cronjob的用户。

答案 1 :(得分:-4)

而不是使用cloud-init我使用了crontab crontab可用于定期安排任务。 由于我不确定如何使用cloud init来做...我最终用cronjob制作了一个图像模板

sudo crontab -e