Puppet基础设施搭建与自动化配置指南
1. Git与Puppet集成基础
1.1 Git跟踪与同步机制
Git能够跟踪文件的更改并存储所有更改的完整历史记录,仓库的历史由提交(commit)组成。每次使用git commit命令创建提交时,都会记录仓库在特定时间点的状态,并可添加注释说明。当我们将Puppet清单文件添加到仓库并创建第一个提交后,这些更改仅存在于本地工作副本中。若要与远程仓库git.example.com同步,需使用git push命令,它会推送自上次同步以来的所有更改。
1.2 中央Git仓库的选择与使用
拥有用于Puppet清单的中央Git仓库后,我们可以在不同位置检出多个副本,并在提交更改前进行工作。团队协作时,每个成员可拥有自己的本地副本,并通过中央服务器与其他成员同步更改。中央Git仓库服务器可选择GitHub,它为公共仓库提供免费托管服务,若不想让Puppet代码公开,可付费使用其高级服务。此外,还有其他Git前端工具,如用Go编写的Gogs(https://gogs.io/ )、类似于GitHub的Gitlab(https://about.gitlab.com/ ),以及自托管系统如gitolite(http://gitolite.com/gitolite/index.html )。
2. 去中心化Puppet架构配置
2.1 架构选择依据
Puppet是用于配置和防止大量客户端计算机配置漂移的工具。若所有客户端计算机可通过中央位置轻松访问,可选择中央