Implantações instantâneas de fantoches com MCollective

3

Observação: não sei ao certo onde esta pergunta pertence. Talvez isso seja melhor em Falha do servidor , mas como eu estou basicamente pedindo hackers e redes domésticas, estou perguntando aqui. Além disso, provavelmente ele sairia do site em menos de 10 -100 segundos, e é por isso que evito usar o Server Fault.

Eu estou olhando para configurar e começar a mexer com um mestre de marionetes e vários clientes de marionetes para ter a sensação de trabalhar com Puppet com um mestre real. Por padrão, as instâncias do cliente Puppet são atualizadas (até onde eu sei) a cada 30 minutos, solicitando ao mestre sua configuração mais recente e aplicando-a quando ela é baixada.

Ouvi dizer que o MCollective pode fazer essas mudanças essencialmente instantaneamente, pois usa uma fila de mensagens e um paralelismo para enviar comandos em tempo real para os clientes.

Eu tenho tentado descobrir como fazer isso com um Puppet Master e Puppet Clients, mas parece que o MCollective é muito maior de um projeto do que apenas um plugin em tempo real para um Puppet Master.

Como eu configuro um Puppet Master simples, um MCollective Server (e uma fila de mensagens) e meus Puppet Clients para obter alterações na configuração do Puppet em tempo real?

(eu geralmente entendo como apt-get install redis-server puppetmaster mcollective , mas estou tentando entender como a integração do MCollective com o Puppet Master realmente funciona.)

    
por Naftuli Kay 16.06.2014 / 22:32

1 resposta

3

Eu não brinquei com isso, mas parece o que você está procurando:

trecho

This agent manages the puppet agent, unlike the older puppetd plugin this one supports Puppet 3 and recent changes made to its locking and status files.

In addition to basic support for Puppet 3 this adds a number of new features, most them usable under both Puppet 2.7 and 3.

  • Supports noop runs or no-noop runs
  • Supports limiting runs to certain tags
  • Support splay, no splay, splaylimits
  • Supports specifying a custom environment
  • Supports specifying a custom master host and port
  • Support Puppet 3 features like lock messages when disabling
  • Use the new summary plugins to provide convenient summaries where appropriate
  • Use the new validation plugins to provider richer input validation and better errors
  • Data sources for the current puppet agent status and the status of the most recent run

Além disso, há este trecho:

Running all enabled Puppet nodes

Often after committing a change you want the change to be rolled out to your infrastructure as soon as possible within the performance constraints of your infrastructure.

The performance of a Puppet Master generally comes down to the maximum concurrent Puppet nodes that are applying a catalog it can sustain.

Using the MCollective infrastructure we can determine how many machines are currently enabled and applying catalogs.

Thus to do a Puppet run of your entire infrastructure keeping the concurrent Puppet runs as close as possible to 10 nodes at a time you would do:

  $ mco puppet runall 10
    
por 17.06.2014 / 11:47

Tags