Tornar os manifestos / módulos do Puppet disponíveis para um público amplo

6

Nossa equipe lançou o boneco em nossos sistemas nos últimos seis meses. Estamos gerenciando todos os tipos de recursos, e alguns deles têm dados confidenciais (senhas de banco de dados para backups automatizados, chaves de licença para software proprietário, etc.).

Outras equipes querem se envolver no desenvolvimento de (ou pelo menos poder ver) nossos módulos e manifestos. O que outras pessoas fizeram para continuar a ter dados seguros movendo-se através do Puppet, enquanto compartilhavam os módulos e se manifestavam com um público maior?

    
por Kyle Smith 04.04.2012 / 13:23

3 respostas

6

Use Hiera com GPG (você precisará do plugin Hiera GPG) para armazenar qualquer coisa sensata (senhas, etc.) e acessá-lo quando necessário. É como um chaveiro para fantoches (ou qualquer outra coisa que precise de acesso a segredos compartilhados).

Verifique também este pequeno guia para obter uma impressão aqui .

Hiera também pode fazer muito mais!

    
por 04.04.2012 / 14:59
2

O truque em minha mente é ter um arquivo de manifesto de marionete que não esteja no sistema de controle de versão regular. Faça uma classe secrets e armazene todas as informações privadas lá. A outra coisa que fiz para propósitos próprios para garantir que cada sistema tenha uma senha diferente sem ter que armazenar uma senha diferente para cada um era gerar uma única string aleatória na minha classe de segredos e usar o hash disso combinado com um valor de serviço individual . Conhecer o valor do serviço não ajuda você a adivinhar o segredo mestre, mas age como um sal. Consulte Como gerenciar senhas de serviço com o Puppet de como eu fiz isso e como algumas outras pessoas se aproximaram a ideia.

Mediawiki também usa a "classe única de segredos" para seus dados: link

    
por 04.04.2012 / 15:30
0

Usamos o github (repositórios públicos e privados) para compartilhar módulos e coordenar o desenvolvimento. Módulos são cometidos individualmente no github (dividido a partir do repositório principal usando git-subtree ).

Todas as alterações são feitas nos repositórios de usuários no github e passam por solicitações pull, onde todos os usuários podem comentar sobre elas antes de serem mescladas e enviadas de volta para os mastrelas de fantoches.

    
por 04.04.2012 / 13:35