Implantações instantâneas de fantoches com MCollective

Implantações instantâneas de fantoches com MCollective

Nota: não tenho certeza de onde esta pergunta pertence. Talvez pertencesse melhor aFalha no servidor, mas como estou pedindo principalmente para fins de hacking e rede doméstica, estou perguntando aqui. Além disso, ele provavelmente seria eliminado do site em menos de 10 a 100 segundos, e é por isso que evito usar a falha do servidor.

Estou querendo configurar e começar a brincar com um Puppet Master e vários clientes Puppet para ter a sensação de trabalhar com o 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 a configuração mais recente e aplicando-a à medida que ela cai.

Ouvi dizer que o MCollective pode fazer essas alterações essencialmente instantaneamente, pois usa uma fila de mensagens e paralelismo para enviar comandos em tempo real aos clientes.

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

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

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

Responder1

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

excerto

Este agente gerencia o agente puppet, ao contrário do plugin puppetd mais antigo, este suporta o Puppet 3 e as alterações recentes feitas em seus arquivos de bloqueio e status.

Além do suporte básico para o Puppet 3, isso adiciona uma série de novos recursos, a maioria deles utilizáveis ​​no Puppet 2.7 e 3.

  • Suporta execuções noop ou no-noop
  • Suporta limitação de execuções para determinadas tags
  • Suporte para splay, sem splay, splaylimits
  • Suporta a especificação de um ambiente personalizado
  • Suporta a especificação de um host e porta mestre personalizados
  • Suporta recursos do Puppet 3, como bloquear mensagens ao desativar
  • Use os novos plug-ins de resumo para fornecer resumos convenientes quando apropriado
  • Use os novos plug-ins de validação para fornecer validação de entrada mais rica e melhores erros
  • Fontes de dados para o status atual do agente fantoche e o status da execução mais recente

Também há este trecho:

Executando todos os nós Puppet habilitados

Muitas vezes, depois de confirmar uma alteração, você deseja que ela seja implementada em sua infraestrutura o mais rápido possível, dentro das restrições de desempenho de sua infraestrutura.

O desempenho de um Puppet Master geralmente se resume ao número máximo de nós Puppet simultâneos que aplicam um catálogo que ele pode sustentar.

Usando a infraestrutura MCollective podemos determinar quantas máquinas estão atualmente habilitadas e aplicando catálogos.

Assim, para executar uma execução do Puppet em toda a sua infraestrutura, mantendo as execuções simultâneas do Puppet o mais próximo possível de 10 nós por vez, você faria:

  $ mco puppet runall 10

informação relacionada