В настоящее время я работаю над профилем, чтобы заблокировать сервер, убедившись, что службы и пользователи отключены. Например, Apache.
Это вызывает проблемы, когда другой профиль хочет управлять ресурсом, потому что тогда у меня будет два ресурса Service [apache].
Теперь я мог бы использовать что-то вроде определения, но мой предпочтительный метод был бы некоторым способ, которым profile :: apache может общаться с profile :: lockdown и сообщать ему, чтобы он оставил apache в покое.
Я думаю, что вам нужно использовать hiera для архивирования того, что вы хотите.
class profiles::apache {
class { '::apache': }
}
Теперь, если мой класс profiles :: apache
будет использоваться для 1000 узлов, а я хотите остановить службу на одном конкретном сервере, в hiera я могу использовать что-то вроде этого.
Пример конфигурации hiera 3 hiera.yaml
---
:backends:
- yaml
- json
:yaml:
:datadir: "/etc/puppetlabs/code/environments/%{::environment}/hieradata"
:json:
:datadir: "/etc/puppetlabs/code/environments/%{::environment}/hieradata"
:hierarchy:
- "nodes/%{::trusted.certname}"
- "virtual/%{::virtual}"
- "common"
Теперь в / etc / puppetlabs / code / environments / production / hieradata / node / servername.domain.local.yaml
вставьте этот apache :: service_ensure: Stop
С помощью hiera вы можете управлять параметрами классов по узлам или чему-то еще