Puppet Error: método indefinido 'captures'

5

Eu postei essa pergunta no site SE da engenharia de rede, mas estava determinado que ela estava fora do assunto ... blá.

Estou brincando com a idéia de usar o fantoche para a configuração do dispositivo de rede principal para aumentar a precisão das configurações que minha equipe está gerando. Eu queria começar configurando uma demonstração e aprendendo mais sobre como o boneco funciona em geral.

Eu instalei o fantoche em nosso nó de rede de equipes (um Ubuntu 12.04 LTS VM) e configurei um único dispositivo no meu ~ usuário / .puppet / device.conf que se parece com algo como ....

[XX-core01.XXX.local]
        type cisco
        url ssh://user:[email protected]/

Eu corri o dispositivo de marionetes - verbose e emiti um certificado. Mas quando o fiz, recebi um erro que não consegui encontrar nenhuma informação sobre.

info: starting applying configuration to XX-core01.XXX.local at ssh://user:[email protected]/
info: Creating a new SSL key for XX-core01.XXX.local
info: Caching certificate for ca
info: Creating a new SSL certificate request for XX-core01.XXX.local
info: Certificate Request fingerprint (md5): 18:B8:55:F9:A0:F6:8E:A3:F5:53:59:87:4C:00:48:23
info: Caching certificate for XX-core01.XXX.local
info: Caching certificate_revocation_list for ca
err: Could not retrieve local facts: undefined method 'captures' for nil:NilClass

Alguém pode me apontar na direção certa? Além disso, é possível usar fantoche para "andar" o dispositivo? Eu estaria interessado em ver quais opções estão disponíveis para configurar nos meus diferentes dispositivos.

Obrigado!

    
por Anthony Mattke 25.05.2013 / 00:02

1 resposta

0

Parece que facter está falhando ao relatar os fatos para puppet . O que provavelmente acontece é que um plugin não consegue recuperar um objeto, mas ainda funciona com o resultado (que é nil ) e tenta chamar o método captures .

Tente executar facter --trace --debug --puppet (que executa o facet com os plug-ins fantoches ativados) e veja se isso também falha.

Se ele for restringido com uma chamada simples para facter --trace --debug , que falhará se for um plugin básico, mas funcione se for um plugin de fantoche.

Depois disso, você sabe onde procurar. O recurso de faceta relacionado a fantoches provavelmente está em /var/lib/puppet/lib/facter/ , enquanto o conteúdo principal está em /usr/share/ruby/vendor_ruby/facter/ . Certifique-se de ter também uma olhada em /etc/facts.d/ e talvez em ~/facts.d/ .

Você, então, precisará descobrir qual fato cria o problema e corrigi-lo (mas talvez possamos ajudar quando chegarmos a esse ponto).

    
por 08.06.2017 / 15:54