Ambientes do diretório Puppet e a variável $ environment

3

Como muitos (espero), estou me preparando para o Puppet 4, separando meus manifestos em ambientes. Eu pretendo ter 3 ambientes separados: qa, staging, prod. Na configuração dos manifestos inicialmente, eu tinha configurado um fato personalizado para o ambiente para apontar para o ambiente específico (ou seja, criado /etc/facter/facts.d/environment que definia o ambiente como prod).

Quando executo um teste usando um único manifesto que imprime a variável $ environment, isso me dá o valor do meu fato personalizado, mas quando o agente fala com o Puppet Master, ele ainda está usando o ambiente padrão "production" .

Alguma idéia do porquê isso está acontecendo? O facter não pode ser usado como um ENC?

    
por Cesar 20.10.2014 / 19:35

1 resposta

4

A variável $environment não é tecnicamente um fato - ela é definida pelo agente de seu puppet.conf , em vez de um fato. Você precisará editá-lo no puppet.conf do agente, em vez de facts.d .

Um ENC pode definir o ambiente de um nó (sobrescrevendo o que o agente seleciona como seu próprio ambiente), mas o mestre precisaria ser o responsável por substituí-lo, não pelo agente.

    
por 20.10.2014 / 19:58