Очень мало места в site.pp, обычно для него есть более удобное место.
apache
и mysql
классы, а не класс роли lamp
. ( документы: Язык: Классы ) apache :: service
с apache
), предоставляя Puppet способ эффективно находить классы без загрузки каждого файла и содержать связанные файлы и шаблоны. . Тогда ваш класс Apache может находиться в /etc/puppetlabs/code/environments/production/modules/apache/manifests/init.pp
или подобном. ( документы: Основы модуля ) hiera_include
( docs: Назначение классов узлам с помощью Hiera ) для добавления классов к узлам и обычные данные Hiera для хранения параметров класса ( docs : Автоматический поиск параметров ). ENC - это внешние сценарии, которые могут запрашивать любой источник данных, который у вас уже есть или который предоставляется другими приложениями, такими как Foreman .