脚本 – 为什么使用Chef / Puppet而不是shell脚本?

前端之家收集整理的这篇文章主要介绍了脚本 – 为什么使用Chef / Puppet而不是shell脚本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Puppet和Chef工具的新功能.看起来他们正在做的工作可以通过 shell脚本来完成.也许它是在shell脚本中完成的,直到它们出现.

我同意他们更具可读性.但是,除了可读性之外,还有其他优于shell脚本的优势吗?

特定于域的语言会对您编写的代码量产生很大影响.例如,你可以说,之间没有太大区别:
chmod 640 /my/file

file { "/my/file":
    mode => 640,}

但这些之间存在很大差异:

FILE=/my/file
chmod 640 $FILE
chown foo $FILE
chgrp bar $FILE
wget -O $FILE "http://my.puppet.server/dist/$FILE"
     # where the URL contains "Hello world"

file { "/my/file":
    mode => 640,owner => foo,group => bar,content => "Hello world",}

如果wget失败会怎么样?你的脚本将如何处理?如果在你的脚本中有一些东西需要$FILE来存在正确的内容,会发生什么?

你可能会争辩说,人们可以把回声“Hello world”>脚本中的$FILE,除了在第一个示例中脚本必须在客户端上运行,而puppet在服务器上编译所有这些.因此,如果您更改内容,则只需在服务器上更改内容,然后根据您想要的内容将其更改为多个系统.并且puppet会自动处理依赖关系并为您传输问题.

没有比较 – 正确的配置管理工具可以节省您的时间和复杂性.你尝试的越多,shell脚本就越不合适,用puppet做的就越省力.

猜你在找的Bash相关文章