Марионетка 5: переменные не интерполированы

Я пытаюсь обновить старую инфраструктуру Puppet 3 до Puppet 5.

Я использую Hiera для получения данные с серверной частью NoSQL. Я написал свой собственный ENC, чтобы получать оттуда данные узла, и это работает хорошо.

Однако, когда я помещаю переменные в Hiera, они не интерполируются. Например, предположим, что я хочу, чтобы виртуальный хост Apache прослушивал fqdn хоста:

 "apache::vhost": {
   "my-vhost": {
     "servername": "%{fqdn}"
   }
 }

(я уменьшил его, чтобы перейти к сути)

Когда я запускаю марионетку на моем узле, переменная не заменяется, и я нахожу ServerName% {fqdn} в моей конфигурации Apache.

У кого-нибудь уже была эта проблема? Я понятия не имею, что делать сейчас ...

Большое спасибо!

С уважением

0
задан 25 July 2018 в 10:15
1 ответ

У вас должна быть возможность использовать один из "% {:: fqdn}" , "% {fact.fqdn}" или "% {fact.networking.fqdn}" .

Какой сервер NoSQL вы используете? Я бы проверил, используя один из бэкэндов YAML или JSON, чтобы исключить серверную часть NoSQL.

0
ответ дан 24 November 2019 в 02:14

Теги

Похожие вопросы