长话短说:大老公司,很多UNIX /
Linux服务器.
我继承了几年前留下的一堆脚本的责任.其中一个是一个脚本,每隔几个月运行一次,全局更新所有服务器的root密码.
该脚本是Shell Script和Expect的混乱,它适用于我们所有服务器和中央命令和控制服务器之间建立的SSH信任.
问题是,脚本是一个巨大的混乱. Expect命令试图考虑存在于任何UNIX / Linux机器上的“passwd”的每个可能版本 – 它们的变化很大.
当我们扩展和升级我们的许多基础架构时,脚本变得非常难以管理.
解决方法
使用
Puppet.
Puppet非常灵活,易于维护并使用SSL.
可能听起来有点矫枉过正,你需要付出额外的努力来构建Puppet系统.
但.很可能这不是您将对这些机器进行的最后一次批量更新.当实际开始大量更新程序并且脚本非常易读/可重用时,Puppet将为您节省大量时间.
至少这几年前对我有用,但我仍然可以重复使用其中一些Puppet食谱(也就是脚本).我也在较小的环境中使用它,只需确保每台机器实际上都处于已知状态.
我已经多次(在很多公司)证明了所有定制的部署脚本在一段时间后或下一个人介入时会变得很痛苦.只要你带着手机,旧脚本就会困扰你.
如果您认为这听起来确实不错,那么这是一个让您入门的great Puppet tutorial with virtual environment included.