Desculpe pela verbosidade. Use a ferramenta que facilita o trabalho. Esse é o ponto da automação, certo?
História: Eu usei fantoches em shows anteriores e no mês passado passei cerca de uma semana tentando me acostumar com o chef para ver se eu faria a troca no meu novo show.
Eu não pulei.
Jargão: Um problema infeliz com esses dois sistemas é a sobrecarga de jargão. (receitas, modelos, nós, funções, atributos, provedores) Ele continua e continua. Encontrei Chef deu um passo adiante. (Faca, Shef, etc.)
Maturidade do código: Basta dizer que eu achei o Chef um pouco cru demais. Parece muito com o que as marionetes sentiram no período de 0,21 / 0,22, há 3-4 anos. Há muito fluxo acontecendo.
Para não dizer que também não aconteceu em fantoches. (Eu descobri muitos recursos excelentes em bonecos que só apareceram nos últimos anos. - correspondência de expressões regulares!)
Ruby: Eu não gostei de toda a sobrecarga de rubi no Chef. (você precisa de gem e rake antes mesmo de começar) Você pode usar o ruby para resolver problemas complexos no puppet a'la facter, mas você não precisa se não quiser.
Complexidade: não gostei do foco da GUI no chef. Sei que é bonito e o boneco tem uma interface da Web em andamento como um complemento, mas acho que isso deve ser mais dissociado.
Chef tem uma arquitetura muito mais complexa. Pode escalar melhor, mas existem muitos pontos potenciais de falha.
http://wiki.opscode.com/display/chef/Architecture
O Chef precisa de couchdb, rabbitmq e solr, além do servidor da API e da interface da web.
Eu só quero uma interface cliente / servidor simples que não precise de uma estrutura MVC e um armazenamento de dados complexo por trás dela.
O Puppet é muito mais simples nesse departamento. (para não dizer que não há muitos complementos para torná-lo mais confuso)
Concluindo o trabalho: no final, fui com o que sabia. Depois de passar uma semana trabalhando lado a lado e mal conseguindo fazer o básico com o Chef, pude voltar ao fantoche e esgotar minhas necessidades básicas em poucas horas. (gerenciamento de pacotes, gerenciamento de usuários, modelos de arquivo de configuração)
Advertência sobre os módulos: O Puppet mudou recentemente para o uso de "módulos", que são contribuídos por terceiros. Eu não acabei usando isso e encontrei uma ampla variedade de qualidade. Não deixe de espiar embaixo das cobertas e ver o que e como elas estão funcionando antes de se aprofundar nelas.