【发布时间】:2015-07-28 17:47:39
【问题描述】:
puppet 处理大文件的效率如何?给你一个具体的例子:
假设我们正在处理以千兆字节为单位的配置数据(存储在文件中)。 Puppet 需要确保文件在每次代理运行时都是最新的。
问题:puppet 是预先执行某种文件摘要类型的操作,还是只是在代理运行期间虚拟复制每个配置文件?
【问题讨论】:
标签: puppet
puppet 处理大文件的效率如何?给你一个具体的例子:
假设我们正在处理以千兆字节为单位的配置数据(存储在文件中)。 Puppet 需要确保文件在每次代理运行时都是最新的。
问题:puppet 是预先执行某种文件摘要类型的操作,还是只是在代理运行期间虚拟复制每个配置文件?
【问题讨论】:
标签: puppet
使用file { 'name': source => <URL> }时,文件内容不会通过网络发送,除非master和agent之间存在校验和不匹配。默认校验和类型为 md5。
注意file 的content 属性。它的价值是目录的一部分。不要通过file() 或template() 函数为其分配大文件的内容。
所以是的,您可以通过 Puppet 从技术上管理任意大小的文件。在实践中,我尽量避免它,因为 Puppet 的所有文件都应该是 git repo 或类似文件的一部分。不要把你的 tarball 推到里面。 Puppet 可以通过其他方式(包、HTTP 等)部署它们。
【讨论】:
我现在不完全确定 puppets 文件服务器在最新更新中工作,但在以前的版本中,Puppet 将文件读入内存,这就是为什么不建议使用文件服务器传输大于 1gb 的文件的原因。我建议你仔细阅读这些答案,看看是否有意义https://serverfault.com/a/398133
【讨论】: