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

Настройка ключей SSL при использовании шаблона профилей ролей с Puppet

Вот такой сценарий. У меня есть два веб-приложения (назовем их webapp1 и webapp2), которым нужны apache, php (с некоторыми модулями) и сам код веб-приложения. Я установил это следующим образом (используя шаблон профилей ролей):

modules/
  apache/
  php/
  webapp1/ # responsible for cloning the repo and setting up config files
  webapp2/ # responsible for cloning the repo and setting up config files
  profiles/
    manifests/
      webapp1.pp # responsible for putting the stack together
      webapp2.pp # responsible for putting the stack together

профили / манифесты / webapp1.pp выглядит примерно так:

class profiles::webapp1 {
  include ::apache
  include ::php
  include ::webapp1
}

а профили / манифесты / webapp1.pp выглядят примерно так:

class profiles::webapp2 {
  include ::apache
  include ::php
  include ::webapp2
}

Теперь оба приложения также должны обслуживаться через HTTPS и иметь одинаковый набор сертификатов SSL (представьте, что webapp1 и webapp2 обслуживаются из разных поддоменов домена, и у нас есть сертификат с подстановочными знаками, поэтому оба приложения могут использовать один и тот же сертификат). Теперь я не могу выбрать манифест для настройки SSL (т.е. настройки ключей и сертификатов с использованием file тип. Причина в том, что, по крайней мере, сейчас у меня будут и webapp1, и webapp2 в одном манифесте роли, но я хотел бы быть гибким, чтобы я мог перемещать webapp1 и webapp2 в разных ролях, не беспокоясь о настройке SSL по-разному.

Я бы выделил их в отдельный класс, например "wildcard_ssl_", и, вероятно, включить его из обоих классов 'webappX' или, возможно, вместо этого из обоих профилей.