我刚刚首次设置了 Foreman,但不确定如何将所有配置置于版本控制之下。我知道我可以对我在 Puppet Master 上安装的每个模块使用 Git,但我更喜欢更全面的解决方案,它不仅包含模块,还包含与每个主机关联的类以及在主机上设置的任何变量。任何建议以及相关的工作流程都将不胜感激。如果相关的话,我确实在网站上设置了 GitLab 作为中央 Git 服务器,并计划很快设置一个 CI 服务器,例如 Jenkins。
答案1
有一个插件可以保存 Foreman 中的基础设施定义,基本上是 Git 中数据的序列化版本,并上传(和更改基础设施)更改。也许这对你有用
答案2
使用 foreman,您应该能够查看所有类以及主机详细信息中分配的任何配置变量。请参阅:http://theforeman.org/manuals/1.4/index.html。
答案3
我不确定我是否理解了你的问题,但你有没有遇到过“puppet librarian”https://github.com/rodjek/librarian-puppet? 您可以在此处定义要使用的 puppet 模块版本/sha1。
答案4
我认为你所追求的非常简单。
Puppet 配置位于/etc/puppet
。最简单的选项就是运行
git init /etc/puppet/
然后您可以将 Gitlab 添加为远程并推送到它。
或者你可以尝试我描述的方法这里这不是以 Foreman 为中心的,但我看不出你为什么不能用它作为灵感。