Quais são os prós e contras do uso do fantoche mestre vs. distribuir manifestos de marionete com o git?

4

Comecei a ler sobre fantoches e vejo que há duas maneiras principais de como você distribui seu manifesto de marionete; uma é usar o mestre de marionetes e a segunda é usar o git para distribuí-las.

Quais são os prós e contras entre as duas versões diferentes. O que é recomendado para um ambiente usando servidores Windows e Linux?

    
por Tomas Jansson 17.06.2014 / 09:10

1 resposta

8

As duas maneiras de distribuir manifestos são usando um mestre de marionetes ou em uma configuração sem mestre. Eles não são mutuamente exclusivos e usamos ambas as abordagens no meu trabalho.

Magistral

Com a configuração magistral, você tem um mestre de marionetes que contém uma coleção de todos os módulos da sua infraestrutura. Os nós então relatam (a cada 30 minutos por padrão) e solicitam um catálogo de qual software deve ser instalado.

Este modelo é mais comum. Se sua empresa tiver dezenas ou centenas de servidores, você poderá definir facilmente a configuração uma vez e ela será enviada magicamente para todos os nós.

Vantagens:

  • Gerenciamento de configuração distribuída simples e escalável
  • Reverte automaticamente alterações acidentais a cada execução de fantoche
  • O painel de fantoches fornece feedback em tempo real e relatórios

Desvantagens:

  • O agente fantoche não é dimensionado para dezenas de milhares de nós facilmente. (Grandes empresas como o PayPal usam o cron para seus relatórios)
  • Ao adicionar ou remover nós com frequência, torna-se tedioso gerenciar os certificados.

Masterless

Masterless ainda usa as vantagens do fantoche, mas faz isso manualmente chamando módulos. Basicamente, basta executar puppet apply foo --modulepath=bar no seu servidor. Eu escrevi uma explicação muito mais detalhada deste modelo aqui: link

Vantagens:

  • Forneça facilmente laptops e estações de trabalho que não precisam ser gerenciados centralmente
  • Não há necessidade de usar laptops de cowboys que frequentemente saem e entram na infraestrutura
  • Módulos fantoches sem masterização são tão simples quanto escrever scripts bash, porém eles são mais fáceis de manter, facilmente feitos para serem multiplataformas.
  • Ainda dá a você a vantagem da camada de abstração que o fantoche fornece (tente escrever um script bash para instalar pacotes com nomes diferentes. Por exemplo, openssl-devel em todas as máquinas CentOS, mas openssl-dev em máquinas Ubuntu, yuck).

Desvantagens:

  • Mais difícil de distribuir para nós, precisa de polpa, git ou outra técnica de distribuição

Eu recomendo que você dê uma olhada nos seguintes recursos

por 17.06.2014 / 20:56

Tags