Подтвердить что ты не робот

Кукольный node имя хоста

Я использую марионетку для настройки серверов. Я хочу напечатать текущее имя машины (node) в шаблоне *.erb. Существует переменная имени хоста, но в ней содержится имя хоста кукловода. Есть ли хорошая ссылка/список по этой теме?

4b9b3361

Ответ 1

Кажется, что я скучаю-смотрел где-то. Я могу получить (печатать) node -hostname просто путем вызова следующего кода в шаблоне *.erb:

<%= @hostname %>

Изменить: с Puppet 3, используя локальные переменные (т.е. hostname устарел, Puppet 4 полностью удалит поддержку для них. Рекомендуемый способ - использовать переменные экземпляра (с префиксом @). Поэтому в этом случае, @hostname. Источник

Ответ 2

Ввод следующей команды в ваш терминал приведет к возврату переменных, доступных в ваших файлах erb:

facter --puppet

Ответ 3

Да всем вышеперечисленным; вы также можете найти переменную fqdn полезной, в зависимости от того, что вы делаете.

Если вам нужна информация о мажоритарном сервере-хозяине в шаблоне, вы можете использовать переменные servername, serverip и serverversion (Из FAQ).

Ответ 4

По-видимому, теперь вы можете использовать

<%= fqdn %> 

и получить обратное имя DNS.

Если вам нужно ввести его в нижний регистр, используйте

<%= fqdn.downcase %>

Ответ 5

Обратите внимание, что это имя хоста, а не имя node (которое вы изначально запрашивали). В 99% случаев они будут одинаковыми. AFAIK нет способа получить фактическое имя node в шаблонах (и если есть, я бы хотел его услышать).