我刚刚首次设置了 Foreman,但不确定如何将所有配置置于版本控制之下。我知道我可以对我在 Puppet Master 上安装的每个模块使用 Git,但我更喜欢更全面的解决方案,它不仅包含模块,还包含与每个主机关联的类以及在主机上设置的任何变量。任何建议以及相关的工作流程都将不胜感激。如果相关的话,我确实在网站上设置了 GitLab 作为中央 Git 服务器,并计划很快设置一个 CI 服务器,例如 Jenkins。
答案1
使用角色、配置文件和 Hiera 来管理不同的配置,并混合使用模块。查看 PuppetLabs 的介绍:http://puppetlabs.com/presentations/designing-puppet-rolesprofiles-pattern。
在 Foreman 中,您可以按组织、环境和组对主机进行分组。不过我不确定如何对 Foreman 的配置进行版本控制。Foreman 使用 DB 服务器进行设置。
根据 Foreman 层次结构为所有模块和 Hiera 创建包。