Использование Puppet 3.2.1 пытается настроить сервер / клиент, оба работают на одном хосте.
Я также использую puppet-dashboard и puppetdb.
Мой манифест / init.pp:
node 'my.fqdn' {
file { '/tmp/test':
ensure => present
}
Бег puppet agent --test --server my.fqdn --report
где my.fqdn и панель управления определены в / etc / hosts
Урожайность:
Info: Retrieving plugin
Info: Loading facts in /etc/puppet/modules/concat/lib/facter/concat_basedir.rb
Info: Loading facts in /etc/puppet/modules/puppi/lib/facter/puppi_projects.rb
Info: Loading facts in /etc/puppet/modules/puppi/lib/facter/last_run.rb
Info: Loading facts in /var/lib/puppet/lib/facter/puppi_projects.rb
Info: Loading facts in /var/lib/puppet/lib/facter/concat_basedir.rb
Info: Loading facts in /var/lib/puppet/lib/facter/last_run.rb
Info: Caching catalog for my.fqdn
Info: Applying configuration version '1369841032'
Notice: Finished catalog run in 0.08 seconds
Changes:
Events:
Resources:
Skipped: 6
Total: 7
Time:
Config retrieval: 0.42
Total: 0.42
Last run: 1369841033
Filebucket: 0.00
Version:
Config: 1369841032
Puppet: 3.2.1
файл /tmp/test
никогда не создается!
Также;
На панели управления Puppet указано, что он не знает никаких узлов (например, отчеты никогда не достигают его)
puppet.conf для отчетов:
reports = store, http
reporturl = http://puppet.armed.us/reports/upload
Что здесь может происходить и как это исправить?
Бег puppet apply /etc/puppet/manifests/init.pp
ДЕЙСТВИТЕЛЬНО работает, но не при попытке получить конфигурацию от мастера марионеток. Как будто получается пустой каталог.
*Редактировать:
puppet.conf:
[main]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
templatedir = /var/lib/puppet/templates
ssldir = $vardir/ssl
usecacheonfailure = true
user = puppet
group = puppet
[agent]
certname = my.fqdn
server = my.fqdn
pluginsync = true
report = true
reportserver = my.fqdn
summarize = true
graph = true
listen = false
runinterval = 1800
classfile = $vardir/classes.txt
localconfig = $vardir/localconfig
[master]
masterport = 8140
bindaddress = 0.0.0.0
autosign = false
storeconfigs = true
environment = production
manifest = $confdir/manifests/site.pp
modulepath = /etc/puppet/modules:/usr/share/puppet/modules
storeconfigs_backend = puppetdb
reports = store, http
reporturl = http://my.fqdn/reports/upload
facts_terminus = active_record
И сертификаты:
root@my:~# puppet cert list --all
+ "my.fqdn" (SHA256) E1:F0:29:1...:31:93:F9
вам, вероятно, следует переименовать manifest / init.pp в manifest / site.pp, так как это то, что вы настроили в puppet.conf
Является my.fqdn
на самом деле имя подписанного сертификата, которое мастер знает агента? Похоже, что имя сертификата может не соответствовать определению вашего узла, и поэтому он игнорирует разделы узла.
Вы можете попробовать принудительно указать имя, сообщаемое агентом, чтобы увидеть, помогает ли это:
puppet agent --test --server my.fqdn --report --certname my.fqdn
Я не знаю, так ли это на вашем сайте, но мне нужен pluginsync = true, чтобы некоторая конфигурация марионетки работала. Без этого внутри /etc/puppet/puppet.conf на узле запуск марионетки не завершится неудачно, но не выполнит все, что я ожидал (например, с использованием file_line).
Я вижу, вы поместили его в главный файл puppet.conf, но проверьте, есть ли он и на узле.
Вы поместили эту директиву в свой узел puppet.conf в раздел [agent] (и перезапустили)? report = true
Мне интересно, понимает ли ваш марионеточный сервер, что вашим клиентом должен быть my.fqdn. Измените узел my.fqdn на узел по умолчанию и посмотрите, получите ли вы файл.