【问题标题】:How do I create a cron job via a chef receipe using the cron resource?如何使用 cron 资源通过厨师食谱创建 cron 作业?
【发布时间】:2022-09-25 12:27:01
【问题描述】:

我在cron.rb 文件中有以下内容。

cookbook \'cron\', \'~> 7.0.4\', :supermarket

cron \'Check-In to Chef Manage\' do
   minute \'*/2\'
   command \'chef-client\'
 end

我已经通过 Chef Manage 验证了该配方在节点上,但它并未在节点上运行。

我不明白是否需要配置其他任何东西。

  • 你知道是否在节点上创建了 cron 作业吗? root 用户的 crontab -l 的输出是什么(假设 chef-client 以 root 身份运行)。
  • 我检查了,它不是在节点上创建的。这就是我遇到的问题。我不明白上面的食谱有什么问题。因为它是上传到厨师基础设施服务器的。显示在运行列表中的说明书中。我手动转到服务器并运行“厨师客户端”来应用食谱的食谱。
  • 你最好使用 cron_d 资源而不是 cron 资源并将文件放入 /etc/cron.d
  • @seshadri_c 原来我不需要第一行。其次,问题是在 default.rb 文件中没有调用 cron 配方。我是厨师新手,没有意识到这是一项要求。
  • @lamont 我会考虑这个。

标签: chef-infra


【解决方案1】:

不需要第一行。将配方(即 cron.rb)保留为:

cron 'Check-In to Chef Manage' do
   minute '*/2'
   command 'chef-client'
 end

其次,cron.rb 必须在 default.rb 文件中调用;即include_recipe "<cookbook nam>::cron"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多