Como executo o hiera standalone para testar valores?

3
Presumivelmente no meu mestre de marionetes eu posso rodar hiera a partir da linha de comando para ver como um nó em particular geraria um conjunto de variáveis, mas é realmente difícil encontrar um exemplo disso.

Eu tentei usar o inventário de marionetes e usar o mcollective, ambos com um erro:

[root@puppet001 hiera]# hiera -c /etc/puppet/hiera.yaml -i pamcontent001.mgs.example.com
Puppet inventory service lookup failed: NoMethodError: undefined method 'features' for Puppet:Module
Could not load Puppet inventory service scope: SystemExit: exit

[root@puppet001 hiera]# hiera -c /etc/puppet/hiera.yaml -m pamcontent001.mgs.example.com 
MCollective lookup failed: LoadError: cannot load such file -- mcollective
Could not load MCollective scope: SystemExit: exit

Pesquisando essas mensagens de erro, descobrem alguns bugs antigos e suas correções, mas nada disso me dará uma consulta de teste.

Como você testa e depura uma pesquisa heira quando recebe um valor inesperado?

    
por Mojo 16.09.2015 / 18:45

1 resposta

1

Você não pode despejar a totalidade dos dados hiera para um nó. Se você olhar a API para criar back-ends personalizados para o hiera, verá que não há nada para retornar o conjunto de dados inteiro ou uma lista de chaves, apenas uma maneira de obter o valor associado a uma chave específica. Tenha em mente que uma ampla gama de back-ends é possível.

Você pode procurar o valor de uma chave específica. por exemplo:

hiera -c /etc/puppet/hiera.yaml \
key \
fqdn=pamcontent001.mgs.example.com \
environment=production

Exatamente o que as variáveis de escopo que você precisa fornecer dessa maneira dependerão de quais você usa em seu arquivo hiera.yaml. Você pode encontrar este útil.

    
por 08.03.2016 / 14:09

Tags