使用puppet的ntp内置类设置ntp

时间:2013-10-16 16:29:38

标签: puppet ntp

以下是我的示例清单,用于在我的机器上设置ntp以连接到我的来源' 10.0.2.15'

class myNtpClass ($ntpSource='10.0.2.15') {

file {'myFile':
        ensure => present,
        path => '/test2',
        content => "servers => ['${ntpSource} iburst']",
}

class { '::ntp':

servers => ['${ntpSource} iburst', 'localhost'],
restrict => ['restrict 127.0.0.1', 'restrict 10.0.2.0/24'],
}

}

include myNtpClass

我正在使用ntp内置类将我的源服务器列表插入到我的ntp配置中。

当我执行此清单时,$ ntpSource变量在我的ntp.conf配置文件中没有被替换。

这是应用puppet清单后的我的ntp.conf文件,

# ntp.conf: Managed by puppet.
#
# Keep ntpd from panicking in the event of a large clock skew
# when a VM guest is suspended and resumed.
tinker panic 0

# Permit time synchronization with our time source, but do not'
# permit the source to query or modify the service on this system.'
restrict 127.0.0.1
restrict 10.0.2.0/24


# Servers
server ${ntpSource} iburst
server localhost


# Driftfile.
driftfile /var/lib/ntp/drift

我不确定我哪里出错了。 当我尝试在文件中打印$ ntpSource变量时;文件按预期创建。

1 个答案:

答案 0 :(得分:0)

使用双引号而不是单引号:

  

servers => [“$ {ntpSource} iburst”,“localhost”],

来自Puppet网站的引用:

  

Puppet中有两种引号:单引号(')和双引号(“)。   主要区别在于双引号允许您进行插值   $变量。