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

Автоматическое развертывание Puppet Apache Vhost

Привет, кукольники :),

Надеюсь, ты поможешь мне с ситуацией. А именно, я буду использовать марионетку для развертывания многих (я имею в виду действительно многих) узлов с установленным 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?) Заранее спасибо.