AWS实例修补了多个实例的更新

时间:2013-07-26 19:43:41

标签: amazon-web-services linux-kernel batch-updates

我在AWS中在VPC下的多个地区运行了大约40个Linux实例。现在我需要修补linux kernal,为apache,php,mysql运行更新。登录每台服务器非常困难。如何自动执行此过程或一次在所有服务器上轻松运行更新。

2 个答案:

答案 0 :(得分:0)

对于这种情况,您可能或多或少地被迫手动执行此操作,但在将来进行设计改造是为了让您的生活更容易处理这样的事情。我建议您查看puppet或Chef,因为它们使您能够编写基础结构脚本,并且当您需要进行更新/更改时,将它们应用于相关系统或仅重新构建系统。

对于这种情况,如果您要使用Chef,您只需更新脚本并告诉厨师更新您的所有系统。

当然,我知道这些信息对你目前的困境没有帮助,但是建议未来的环境来缓解这些问题。

答案 1 :(得分:0)

签出AWS Systems Manager (SSM)

This is a nice walk尽管使用SSM运行补丁。 SSM允许您:

  • 选择维护时段
  • 白名单或黑名单补丁
  • 确定补丁的接受程度(例如,高与严重)
  • 将补丁接受的时间延迟指定的时间(如果补丁被发现是不好的,是否要等待一天?)
  • 将补丁应用于有特殊标记的实例(如果需要,您可以运行多个补丁组)

设置起来有点麻烦。

选项2

根据您的需求,您可能只想安装并配置 yum-cron(在Ubuntu上,您将使用无人值守的升级)。我已经这样做了很多年,从字面上看,安全补丁的计数为零会导致破坏性回归。我宁愿让每台主机自动打补丁并处理辐射(如果中断),而不是未打补丁的主机。请注意,我禁用了自动重启功能,因此内核更新直到重启后才会生效。

选项3 如果您只想在所有主机上执行“即发即弃”风格的操作,则可以探索dsh(分布式ssh,您可能会猜到需要了解的所有内容;-)。我已经成功地使用了它。我也使用过Ansible和Chef(两者都需要一些设置和学习技巧)