Puppet:Crons via Hiera?
Puppet: Crons via Hiera?
我正在尝试为我的 crons 使用 hiera。不幸的是,这不适用于 cron_core
?
# common.yaml
---
my_module::cron::job::multiple:
'my_cronjobs':
jobs:
# job1
- {
minute: 30,
hour: 10,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 120',
description: 'sleep for 2 min',
}
# job2
- {
minute: 0,
hour: 11,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 60',
description: 'sleep for 1 min',
}
在我的 class 我试过了
class my_module(){
# enable crons
include cron
}
但随后失败 Evaluation Error: Error while evaluating a Function Call, Could not find class ::cron
有没有办法用 puppetlabs/cron_core
解决这个问题?
有两点需要注意。首先,您不需要使用 cron_core
。 cron
资源类型作为标准包含在内。其次,cron
是一种资源类型,而不是 class,所以你不能 include
它。
如果您想使用 Hiera 创建 cron 作业,请尝试使用 create_resources
函数。重组您的 Hiera 使其看起来像
my_module::cron::job::multiple:
'sleep for 2 minutes': {
minute: 30,
hour: 10,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 120',
description: 'sleep for 2 min',
}
'sleep for 1 minute': {
minute: 0,
hour: 11,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 60',
description: 'sleep for 1 min',
}
然后您将能够使用
添加资源
$cron_job_hash = lookup('my_module::cron::job::multiple', Hash, 'hash', {})
create_resources('cron', $cron_job_hash)
我正在尝试为我的 crons 使用 hiera。不幸的是,这不适用于 cron_core
?
# common.yaml
---
my_module::cron::job::multiple:
'my_cronjobs':
jobs:
# job1
- {
minute: 30,
hour: 10,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 120',
description: 'sleep for 2 min',
}
# job2
- {
minute: 0,
hour: 11,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 60',
description: 'sleep for 1 min',
}
在我的 class 我试过了
class my_module(){
# enable crons
include cron
}
但随后失败 Evaluation Error: Error while evaluating a Function Call, Could not find class ::cron
有没有办法用 puppetlabs/cron_core
解决这个问题?
有两点需要注意。首先,您不需要使用 cron_core
。 cron
资源类型作为标准包含在内。其次,cron
是一种资源类型,而不是 class,所以你不能 include
它。
如果您想使用 Hiera 创建 cron 作业,请尝试使用 create_resources
函数。重组您的 Hiera 使其看起来像
my_module::cron::job::multiple:
'sleep for 2 minutes': {
minute: 30,
hour: 10,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 120',
description: 'sleep for 2 min',
}
'sleep for 1 minute': {
minute: 0,
hour: 11,
date: '*',
month: '*',
weekday: '*',
user: user,
command: '/bin/sleep 60',
description: 'sleep for 1 min',
}
然后您将能够使用
添加资源$cron_job_hash = lookup('my_module::cron::job::multiple', Hash, 'hash', {})
create_resources('cron', $cron_job_hash)