Depois de instalar o Puppet, o Foreman, o Hiera e o Facter, como faço para que todos trabalhem juntos?
A GUI do Foreman está funcionando corretamente e pode ser visualizada usando um navegador.
O Hiera é instalado e, por guias que eu leio na Internet, parece que ele está configurado corretamente e o Facter também funciona corretamente, mas os agentes não estão obtendo módulos do servidor Puppet.
Eu adicionei um módulo MOTD muito simples e o configurei para executar em common.yaml
.
Mas o módulo não está instalado nas máquinas do agente e nenhum erro é exibido.
A execução de puppet agent -t
no servidor e nos clientes funciona:
[root@puppet production]# puppet agent -t
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Caching catalog for puppet.nj.peer39.com
Info: Applying configuration version '1425802774'
Notice: Finished catalog run in 0.05 seconds
[root@puppet production]#
hiera.yaml
parece com isso:
[root@puppet production]# cat /etc/puppet/hiera.yaml
:backends:
- yaml
:yaml:
:datadir: '/etc/puppet/hieradata/%{::environment}'
:hierarchy:
- fqdns/%{::fqdn}
- roles/%{::role}
- domains/%{::domain}
- common
environment.conf
parece com isso:
[root@puppet production]# pwd
/etc/puppet/environments/production
[root@puppet production]# cat environment.conf
modulepath = modules
manifest = /etc/puppet/environments/production/manifests/
[root@puppet production]#
Eu também tentei carregar o módulo através de um arquivo fqdn.yaml
, mas sem sucesso e nenhum erro foi exibido.
/etc/puppet/puppet.conf
parece com isso:
[master]
autosign = $confdir/autosign.conf { mode = 664 }
reports = foreman
external_nodes = /etc/puppet/node.rb
node_terminus = exec
ca = true
ssldir = /var/lib/puppet/ssl
certname = puppet.company.com
strict_variables = false
environmentpath = $confdir/environments
Editar # 1:
Meu common.yaml
é assim:
classes:
- motd
Quando eu disse fqdn.yaml
, quis dizer:
[root@puppet fqdns]# pwd
/etc/puppet/hieradata/production/fqdns
[root@puppet fqdns]# ll
total 8
-rw-r--r-- 1 root root 23 Mar 11 09:26 pnd01.company.yaml
-rw-r--r-- 1 root root 17 Mar 12 08:24 puppet.company.com.yaml
[root@puppet fqdns]#
Esse é o meu site.pp
, que está localizado em /etc/puppet/environments/production/manifests
:
[root@puppet manifests]# cat site.pp
hiera_include("classes", [])
Package { allow_virtual => false, }
node default {
}