Pesquisei on-line e vejo que outras pessoas tiveram esse problema em outras listas / quadros. Quando executo o sudo puppetd --waitforcert 60 --test pela segunda vez após assinar o certificado no servidor mestre, recebo esse erro -
notice: Got signed certificate
warning: Certificate validation failed; considering using the certname configuration option
err: /File[/var/lib/puppet/lib]: Failed to generate additional resources during transaction: Certificates were not trusted: hostname was not match with the server certificate
Não sei se entendi qual é o problema ou como corrigi-lo. Então é por isso que pergunto.
Estou configurando o fantoche em dois servidores na minha LAN. O puppetmaster é nomeado 'puppet' e o outro servidor é nomeado 'puppetclient'. Coloquei puppet em / etc / hosts no puppetclient.
executando hostname -f exibirá puppet e pupperclient nos respectivos servidores. Não tenho certeza do que mais tentar. Alguém tem alguma idéia?
fonte
rm -rf /var/lib/puppet/ssl
e reiniciando o puppetmasterSe você quiser usar o DNS CNAME para o seu puppetmaster, poderá iniciá-lo usando:
que fará com que o puppetmaster use em
cname.domain.org
vez do nome de domínio totalmente qualificado padrão.fonte
A
--certname cname.domain.org
opção de sinalização parecia ter feito o truque para mim (no Amazon EC2)fonte
você pode perguntar ao facter (facter fqdn) qual é o nome do host e ver se isso é consistente com o que você espera. Observe também (por padrão) / var / lib / puppet / ssl / e veja como são os certificados, se eles não tiverem os nomes de host corretos que podem ser o seu problema. Como o fantoche faz toda a comunicação por HTTPS, é bastante sensível à resolução e à nomeação de hosts.
fonte
Antes de instalar o Puppet nos clientes e no servidor designados, verifique o arquivo /etc/resolv.conf e verifique se a primeira entrada de domínio na linha "search" é o domínio no qual você deseja executar o Puppet. Por exemplo:
pesquise my.puppetdomain.com my.public.domain.com
nameserver 192.168.1.1 nameserver xxx.xxx.1.1
Durante a fase de instalação do Puppet, o servidor Puppet gerará seus certificados com base na primeira entrada de pesquisa no /etc/resolv.conf. Descobri isso da maneira mais difícil. Se você vir erros relacionados ao certificado em qualquer nó fantoche, execute as seguintes etapas:
1) Edite o /etc/resolv.conf e verifique se o primeiro domínio listado na linha "pesquisa" reflete o domínio em que você deseja que o Puppet seja executado.
2) Desinstale o puppet (deixe o diretório / etc / puppet intacto).
3) rm -rf / var / lib / fantoche
4) Reinstale o Puppet (isso irá gerar um novo diretório / var / lib / puppet).
5) Se estiver fazendo isso no servidor Puppet, execute / usr / sbin / puppetmasterd --mkusers (como alternativa, execute / usr / local / sbin / puppetmasterd --mkusers ). Isso irá gerar todos os arquivos necessários dentro de / var / lib / puppet, incluindo os novos certificados internos usando o nome de domínio apropriado.
6) Se estiver fazendo isso no cliente Puppet, inicie o Puppet no modo detalhado, com o sinalizador --waitforcert ativado: puppetd -server .puppetdomain.com --waitforcert 60 --test Esta etapa enviará uma solicitação de certificado ao servidor Puppet.
7) No servidor Puppet, liste os certificados em espera:
puppetca --list
Você deve ver o nome do host do cliente Puppet fazendo a solicitação:
puppetclient1.puppetdomain.com
8) No servidor Puppet, assine o certificado do cliente Puppet listado:
puppetca --sign puppetclient1.puppetdomain.com
Então você está pronto.
HTH ....
fonte
Puppet e puppetclient resolvem no DNS? Caso contrário, você pode editar o arquivo / etc / hosts para mapear os IPs e nomes de host. IIRC, você só precisa fazer isso no cliente.
fonte