我们有大约 300 台 RHEL 服务器目前正在连接到 Puppetmaster 服务器。然而,我们注意到一些性能瓶颈,这是我们系统的故障点。一般来说,我对 Puppet 还很陌生,我正在考虑创建一个分散的 Puppet 架构,而不是让 Puppet 客户端连接到 Puppetmaster 服务器。除了我怀疑会发生的事情(例如性能提升和缺乏为新机器签署和交换 SSL 证书)之外,设置去中心化架构的其他优点和缺点是什么?
我们有大约 300 台 RHEL 服务器目前正在连接到 Puppetmaster 服务器。然而,我们注意到一些性能瓶颈,这是我们系统的故障点。一般来说,我对 Puppet 还很陌生,我正在考虑创建一个分散的 Puppet 架构,而不是让 Puppet 客户端连接到 Puppetmaster 服务器。除了我怀疑会发生的事情(例如性能提升和缺乏为新机器签署和交换 SSL 证书)之外,设置去中心化架构的其他优点和缺点是什么?
去中心化。
制作 ssh 密钥而不是签署证书。不要把钥匙给非管理员
您可以使用 Git 作为您的传输工具而不是颠覆,然后您可以为不同的机器/角色创建分支,然后对您的更改进行版本控制,并允许...但此时您必须了解 DVCS 技巧。
它速度更快,设置起来也不那么挑剔。添加一些用于完整性检查的提交挂钩。
现在,此时,您已将 puppetmaster 替换为其客户端-服务器模型,并使用 ssh 和 git,两者的规模都比 puppetmaster 好。
现在,您的组织可能需要层次结构。没问题,只需将包含最终分支的 git 存储库存储在安全的地方。
奖金:
将允许您查看谁进行了更改。
http://bitfieldconsulting.com/scaling-puppet-with-distributed-version-control
https://www.braintreepayments.com/braintrust/decentralize-your-devops-with-masterless-puppet-and-supply-drop?
你在乘客中运行木偶吗?存储配置?只要您处理基本的设置问题,您真的不应该在 300 个节点上遇到可伸缩性问题。
去中心化是最好的方式,因为每个客户端都从清单源的本地副本编译自己的清单。每次你从 say git 服务器推送更新时,它都会更新。更有效地利用带宽,因为客户端不必在每次运行时都联系人偶大师。还消除了单点故障,因为客户端可以从任何地方更新。