configuration - 为什么不应该使用Chef/Puppet逐行更改配置文件?

标签 configuration chef-infra puppet

为什么在Chef或Puppet中将更改配置文件中的行视为反模式?
据我了解,这是一种坏习惯。我假设此文件编辑以某种幂等的方式并使用高级工具(例如augeas)完成。

为什么使用ERB模板部署整个文件被认为是首选方法?

您可以找到很多示例,其中dev-ops建议使用模板而不是文件编辑。例如hereherehere等。

最佳答案

实际上,在DevOps社区中,有很大一部分看到接受配置文件的系统/软件包默认值,并且仅通过augeas修改所需的内容作为首选方法,Github devops就是其中之一(如果您碰巧在Puppet Conf上找到了它们2012)。

我认为采用始终使用模板的默认模式会产生过高的维护负担,并且几乎总是需要针对堆栈中的所有内容锁定特定版本,否则您可能会冒用与该资源的较新版本不兼容的模板的风险。

两种选择都有用例,但总的来说,我赞成“尽可能少地拥有”实践,而不是“即使没有必要也要拥有一切”实践。

关于configuration - 为什么不应该使用Chef/Puppet逐行更改配置文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14885267/

相关文章:

powershell - 与Powershell脚本相关的错误

database - 如何在运行时更改 Play 2 Framework DB 配置?

postgresql - 无法评估 : Error evaluating 'unless' clause

linux - 如何告诉 Puppet 在关闭时停止服务而不保持其运行?

arrays - puppet 中的数组转换,用于最终加入和包含在命令中

r - 读取和使用自定义配置文件

database - 将选项存储在数据库中还是文件中?

chef-infra - 如何使用 Chef 验证之前的安装和配置是否正确完成?

chef-infra - 如何使 Chef 与特定用户一起执行并加载其环境值

python - Chef 安装 uwsgi libiconv.so.2 没有那个文件或目录