Как мне понизить puppetdbquery?

Я получаю сообщение об ошибке при запуске puppet, использующем запросы puppetdb:

Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undefined method `server_urls' for #<Puppet::Util::Puppetdb::Config:0x00000003cd66c8> at /etc/puppet/local-modules/monitoring/manifests/init.pp:14 on node hostname.goes.here
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

Управляя марионеткой с --verboseЯ получаю предупреждение, которое выглядит полезным:

Warning: It looks like you are using a PuppetDB version < 3.0.
This version of puppetdbquery requires at least PuppetDB 3.0 to work.
Downgrade to puppetdbquery 1.x to use it with PuppetDB 2.x.

PuppetDB 3.0 не доступен на рассматриваемой машине, поэтому я смотрю на понижение puppetdbquery, Тем не менее, я не могу найти, где / как это установлено. Пока я проверил dpkg (Я работаю с Debian Jessie), gem а также librarian-puppet, но ни один из них, кажется, не установил puppetdbquery,
Можно ли как-нибудь найти, откуда он взялся и как его понизить?

2 ответа

Решение

Чтобы отследить файл (спасибо ответу ssm за ссылку на источник), я сделал:

find / -name connection.rb

Затем я собрал результаты для тех, которые включали "Похоже, вы используете версию PuppetDB < 3.0.", Я получил один файл:

/var/lib/gems/2.1.0/gems/ruby-puppetdb-2.1.1/lib/puppetdb/connection.rb

Сначала это меня смутило, потому что в нем ничего не говорится о puppetdbquery, но при более внимательном рассмотрении хранилища я увидел, что включенный в него gemspec называет себя "ruby-puppetdb", а не puppetdbquery. Поэтому, исправление должно было бежать:

gem uninstall ruby-puppetdb --version 2.1.1

У меня были установлены более старые версии гема, поэтому система вернулась к их использованию.

Подводя итог:Когда установлен как драгоценный камень, puppetdbquery называется ruby-puppetdb

puppetdbquery - это модуль puppet, и хотя он может отсутствовать в вашем Puppetfile, он может быть установлен как зависимость одного из ваших других модулей.

Взгляните на каталоги, перечисленные в модульном пути вашего мастера кукол.

Указанное вами сообщение об ошибке находится в lib / puppetdb / connection.rb в этом модуле.

Другие вопросы по тегам