I have a vm template that I'm cloning from. It has vmware tools and
puppet client installed on it.
The node comes up, but then the puppet master thinks all successive
clones are the same node, probably because they have the same SSL
cert.
Para resolver isso, você quer ter um modelo que tenha o cliente fantoche, mas que ainda não tenha gerado o CSR com o servidor de fantoches. Você pode converter o modelo de volta em uma VM e excluir (ou renomear) o diretório ssl do puppet do cliente (não tenho certeza onde ele está armazenado no PE 2015.2, mas no Puppet v4 está em / etc/puppetlabs/puppet/ssl
).
Em seguida, no servidor de fantoches, faça um puppet cert clean <name>
, em que <name>
é o certificado que foi gerado pelo modelo.
Converta a VM de volta para um modelo. Agora, qualquer máquina virtual implantada a partir desse modelo gerará seus próprios CSRs depois de executar puppet agent -t
. A desvantagem é que você terá que assinar cada novo certificado sempre que o CSR for gerado. Para torná-lo mais amigável à automação, você pode configurar seu servidor de marionetes para autosign certs usando autosign = true
no arquivo puppet.conf do servidor. No entanto, isso não é recomendado para manter em ambientes de produção. Este documento entra em mais detalhes sobre autosigning certs:
link