Como provisionar um nó via fantoche se ele estiver usando uma tecnologia de virtualização baseada em imagem?

2

Estou tentando integrar o fantoche e o vSphere por meio deste módulo:

link

Este módulo permite criar servidores através de algumas linhas de código de fantoches.

Eu tenho um modelo de vm do qual estou clonando. Tem ferramentas de vmware e cliente de fantoche instalado nele.

O nó aparece, mas o mestre de marionetes acha que todos os clones sucessivos são o mesmo nó, provavelmente porque eles têm o mesmo certificado SSL.

Então, como isso funciona? Eu posso consertar o problema SSL em um único nó, mas eu quero ser capaz de criar 100 nós de maneira automatizada.

Parece que puppet resource vsphere_vm deve mostrar o ip do convidado, o que eu imagino que poderia ser alimentado no fantoche e ter o nó provisionado a partir dele, mas esse comando não está produzindo nenhuma informação ip atualmente.

Deve haver alguém usando esse plugin vsphere de fantoches que o esteja usando para criar nós de maneira automatizada. Isso também implica uma pergunta mais geral: como você automatiza a criação e o provisionamento de um servidor com fantoche se estiver usando uma tecnologia de virtualização baseada em imagem como o vSphere?

Como item de nota, estou usando o fantoche enterprise 2015.2.

    
por cat pants 02.11.2015 / 22:29

2 respostas

0

Você tem que detectar quais informações são usadas pelo servidor de marionetes para detectar o mesmo nó e preparar o script para alterá-lo. O script estará preparado para rodar logo após o boot do novo nó e re-uniq aquelas informações, o servidor de fantoches irá achar que este é o novo servidor e irá gerenciá-lo.

    
por 02.11.2015 / 22:44
0

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

    
por 15.12.2015 / 16:25