Справьтесь включают - отключают nginx сайт марионеткой Hiera?

Эта проблема часто до клиента, не бывшего способного связываться с контроллером домена, обычно потому что клиенты основной сервер DNS не установлены на IP сервера SBS.

3
задан 5 December 2013 в 09:29
2 ответа

Ваши вопросы очень похожи на Проблемы создания хэшей Hiera для create_resources , на которые есть ответ. Здесь я сделаю резюме.

Согласно документации для create_resources , хеш должен иметь вид {title => {параметры}} . Вы должны отредактировать данные своего hiera, чтобы установить параметры. Поскольку их нет, я думаю, это могло бы выглядеть так:

common.yaml

---
classes:
    - nginx

nginx::enabled:
    abc.com: {}
    xyz.com: {}
nginx::disabled:
    test.com: {}
    test2.com: {}

Затем вам нужно фактически загрузить правильные данные из hiera. Вы хотите загрузить nginx :: enabled , а не все nginx

init.pp

class nginx{
    create_resources("site_enabled", hiera("nginx::enabled"))
}

define site_enabled($name){
    file { '/etc/nginx/sites_enabled/${name}':
       ensure => 'link',
       target => '/etc/nginx/site_available/${name}',
    }
}
3
ответ дан 3 December 2019 в 06:35

Спасибо Sciunus за ваш быстрый ответ.

Могу я задать этот вопрос? я хотел бы сделать мои данные yaml в следующем формате:

nginx:

 включен:
 abc.com
 xyz.com
отключен:
 test.com
 test2.com

Я НЕ хочу создавать такой формат:

nginx :: enabled:

 abc.com: {}
xyz.com: {} 

nginx :: disabled:

 test.com: {}
test2.com: {}

Как сделать так, чтобы сценарий марионетки работал должным образом. Я также читал документ Hiera, поскольку я знаю, что он также поддерживает три типа данных поиска: hiera, hiera_hash и hiera_array. но я не смог заставить его работать так, как я ожидал, следуя описанному выше формату файла yaml

Извините, я новичок в hiera.

Заранее спасибо.

0
ответ дан 3 December 2019 в 06:35

Теги

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