我可能困惑于正确的用法。
我已经使用Hiera设置了我的托运人的configuration:
classes: - os::repo - profiles::logstash::shipper logstash::configfile: 'input_file': content: '/etc/puppet/modules/profiles/manifests/logstash/templates/input_file.erb' order: '10'
我的个人资料:: logstash :: shipper设置为:
class profiles::logstash::shipper() { class { 'logstash': ensure => 'present', version => '1.4.1-1_bd507eb', status => 'enabled', } include logstash }
input_file.erb:
input { file { type => "syslog" path => ["/var/log/secure", "/var/log/messages", "/var/log/syslog"] exclude => ["*.gz", "shipper.log"] sincedb_path => "/var/run/logstash/lssincedbs" } file { type => "logfile" path => ["/tmp/*.log"] sincedb_path => "/var/run/logstash/lssincedbs" } }
(我知道这在技术上不是一个erb,但它最终会)
每当puppet代理执行一个目录运行时,它会在代理的/etc/logstash/conf.d产生一个空的logstash.conf ,充当托运人。
我做错了什么? 我可能感到困惑,因为我不明白在github文件中的东西。
请注意,这个hiera值
logstash::configfile: 'input_file': content: '/etc/puppet/modules/profiles/manifests/logstash/templates/input_file.erb' order: '10'
不隐式创build这个资源
logstash::configfile { 'input_file': content => '...', order => 10 }
如果你将这个调用添加到你的清单,它会这样做
create_resources('logstash::configfile', hiera('logstash::configfile'))
但
如果它是一个选项,将configuration文件从Hiera移动到您的清单本身。