Назад | Перейти на главную страницу

Facter - настраиваемый факт, возвращает пустой набор данных при вызове агентом Puppet

В соответствии с этот статья в puppet labs, я могу создавать собственные факты из сценариев оболочки.

Я создал bash-скрипт, который возвращает единственный факт, он упакован в каталог modules fact.d. Модуль включен в целевую систему через класс ENC. При вызове марионеточного агента на цели он возвращает пустой набор, при ручном запуске на агенте он правильно возвращает факт. У сценария есть разрешение на выполнение на главном сервере, но его нет на агенте.

Я видел отчет об ошибке, связанный с разрешениями и типами файлов, но это были окна, которые должны были быть исправлены в марионеточной версии 3.

Что я делаю не так?

Определение ENC:

--- classes: facttest:

Сценарий оболочки:

#!/bin/bash echo "test_fact1=$(hostname)"

Разрешения:

master: -rwxr-xr-x 1 root root ... modules/facttest/facts.d/testfact.sh agent: -rw-r--r-- 1 root root ... /var/lib/puppet/facts.d/testfact.sh

Сообщение агента:

Fact file /var/lib/puppet/facts.d/testfact.sh was parsed but returned an empty data set

Информация о версии: Puppet master: 3.5.1 (Debian) Facter master: 2.0.1 Puppet agent: 3.6.1 (OpenSUSE) Facter agent: 2.0.1

Это на самом деле ошибка в кукольном 3.6, по-видимому.

Кроме того, обратите внимание, что использование агентов новее, чем главный, обычно не поддерживается.