为什么改变配置文件中的行认为是一个反模式的厨师或木偶? 这有点像不好的习惯,我的理解。 我认为这个文件的编辑以某种方式幂等,并用先进的工具(augeas例如)来完成。
为什么部署整个文件,与ERB模板,被认为是首选的方法?
你可以找到很多的地方DEV-OPS所提出的建议的模板使用,而不是文件编辑的例子。 例如这里 , 这里 , 这里 ,等。
为什么改变配置文件中的行认为是一个反模式的厨师或木偶? 这有点像不好的习惯,我的理解。 我认为这个文件的编辑以某种方式幂等,并用先进的工具(augeas例如)来完成。
为什么部署整个文件,与ERB模板,被认为是首选的方法?
你可以找到很多的地方DEV-OPS所提出的建议的模板使用,而不是文件编辑的例子。 例如这里 , 这里 , 这里 ,等。
实际上存在的DevOps社区的很大一部分是看到接受系统/包默认的配置文件,只修改你需要通过augeas
作为首选方法,Github上DEVOPS会是其中之一(如果你正巧赶上他们在木偶的conf 2012)。
我认为有总是使用模板默认模式产生过高的维护负担的,几乎总是需要你锁定在特定的版本在您的堆栈一切,或你的风险具有针对该资源的新版本不兼容的模板。
还有的用例这两个选项,但总的来说,我赞成“自己尽可能少地”的做法VS了“自己的一切,即使你没有”的做法。
在你的系统设置到已知状态而言,部署整个文件要比编辑好,因为你是确保该文件是完全一样的意图,当你完成。
如果你发现身边的问题和手编辑一些配置文件可能的解决方案修修补补,你不用担心你做住的周围环境的不可控部分的手动修改。 您运行厨师客户端的下一次,你知道,国家将完全作为厨师配方指定,将不包括您的编辑。
此外,它只是一般的困难和复杂得多,它是只产生一个有力编辑文件。 你可能会写东西,在基本情况下幂等,但如果该文件包含语法错误或无效的东西,比你的编辑不再起作用。
与往常一样,虽然,有时候你没有选择,和编辑是唯一的出路。