Привет, кукольники :),
Надеюсь, ты поможешь мне с ситуацией. А именно, я буду использовать марионетку для развертывания многих (я имею в виду действительно многих) узлов с установленным Apache. У меня проблема в том, что на данный момент единственный способ создать виртуальный хост с указанным ServerName - это указать имя сервера в основном файле puppetmaster (site.pp). Это выглядит примерно так:
case $::hostname {
hostname1: {vhost_default { 'hostname1.domain': }}
hostname2: {vhost_default { 'hostname2.domain': }}
Есть ли способ создать файл vhost без необходимости указывать имя. Это означает, что марионеточный мастер считывает имя хоста и записывает его самостоятельно в шаблон. Шаблон выглядит следующим образом (только важная часть):
<VirtualHost *:80>
ServerName <%= fqdn %>
ServerAlias www.<%= fqdn %>
И init.pp для apache с частью шаблона: define vhost_default () {
file { "/etc/apache2/sites-available/domain.conf":
owner => 'root',
group => 'root',
mode => 644,
content => template( 'apache/default_vhost.erb' ),
require => [ Package[ 'apache2' ] ]
Или вы можете подумать о другом способе развертывания файлов apache vhost? (Может быть, без директивы ServerName?) Заранее спасибо.