Чи можна сказати маріонетці скласти каталог для одного (або всіх) вузлів (-ів) і зберегти ці дані десь?
Мені спеціально цікаво отримати всі необхідні пакети та їх версії на вузол, але загальний підхід для отримання будь-яких даних також підходить.
Чи можна сказати маріонетці скласти каталог для одного (або всіх) вузлів (-ів) і зберегти ці дані десь?
Мені спеціально цікаво отримати всі необхідні пакети та їх версії на вузол, але загальний підхід для отримання будь-яких даних також підходить.
Відповіді:
ОНОВЛЕННЯ
Ця оригінальна відповідь зараз застаріла. Оновлена команда для Puppet 3.x:
puppet resource package
Якщо ви шукаєте всі пакунки та версії, встановлені на вузлі, незалежно від того, встановлені вони Puppet чи ні, вбудована наступна команда і може бути запущена на будь-якому ляльковому вузлі:
ralsh package
Це виведе дані у формі маніфестації ляльок для stdout.
Ralsh буде працювати для будь-якого типу ресурсів, у якому instances
реалізований метод (користувачі, групи тощо).
Якщо ви хочете централізовано перевірити каталог YAML для всіх ресурсів, визначених у маніфестах ляльок, ваш Puppetmaster вже кешує цю інформацію, /var/lib/puppet/client_yaml/catalog
і вам просто потрібно розібрати її з вашим вибором YAML-аналізатора. Служба інвентаризації ляльок, яка була представлена зовсім недавно, також може бути для вас хорошим варіантом; ви можете робити з storeconfigs, якщо ви працюєте на більш старій версії, наприклад 0.25.x.
rpmorphan
.
package
ресурсів, який Маріонетка перераховує у каталозі для вузла? Якщо ви не хочете розбирати кешований каталог, найкращим варіантом буде запит у PuppetDB. API запитів доступний тут .
Чесно кажучи, це така річ, яка була побудована колективом. Зокрема, постачальник пакетів для mcollective: http://projects.puppetlabs.com/projects/mcollective-plugins/wiki/AgentPackage
Це повністю пропускає маріонетку і навіть не вимагає встановлення ляльки.