【问题标题】:EC2 Automatically Install UpdatesEC2 自动安装更新
【发布时间】:2018-12-28 21:17:58
【问题描述】:

我最近加入了一家公司,担任 DevOps 工程师,我的职责之一是在 OpsWorks 中配置基础设施(ELB 后面的 EC2 实例与 Aurora 数据库通信)。

我被要求审核有关应用更新的当前解决方案。

在阅读了几个答案后,我突然发现,如果我想自动将安全更新应用到我们的 (Centos) EC2 实例,那么选项是:

  1. Lambda 作业启动新实例(将运行 yum 更新),将其附加到 ELB,然后终止“旧”实例
  2. 为每个实例(大约有十几个)添加一个 cron 作业,每天左右运行 yum update --security
  3. 将自定义 JSON 添加到 OpsWorks 层,以便在每次部署后运行 yum 更新

还有许多其他方法可以做到这一点,各有利弊,所以我想知道关于定期自动更新多个实例的“最佳实践”的共识是什么。

注意:这些实例 24/7 365 全天候运行(即我们从不重新启动它们),代码部署的范围可以从每天到每月不等,具体取决于实例!

【问题讨论】:

  • 您查看过 Amazon System Manager 服务吗?它是专门为处理这类事情而设计的。

标签: amazon-web-services amazon-ec2 centos aws-lambda


【解决方案1】:

好的,这个会有很多意见的。

不要自动安装更新,即使是安全更新。有一天你会发现你所有的系统都宕机了,你会争先恐后地找出原因。然后管理层将争先恐后地计算云供应商 XYZ 上的企业系统崩溃的成本。

任何更新,无论大小,安全或应用程序补丁,都不应盲目安装。您应该有安装补丁和更新并验证对系统、应用程序等的影响的测试实例。这些步骤应该记录为 devops 过程。

只有在验证补丁或更新按预期执行后,您才会推出实例更新策略(滚动、蓝/绿等)。

有些人会争辩说,这意味着您将等待太长时间来安装关键安全补丁。我认为拥有良好的 devops 程序意味着您不断地监控补丁和更新(比如每天早上)。根据错误的严重程度,您将确定是否应该进行紧急更新或让标准 OP(操作实践)继续。

【讨论】:

  • 接受这个,因为这是一个绝妙的答案,你是绝对正确的。似乎很多人都没有这样做,但这似乎是有风险的业务。我一定会考虑一下,非常感谢!
猜你喜欢
  • 2015-07-22
  • 2017-05-08
  • 1970-01-01
  • 2021-10-19
  • 2019-01-01
  • 1970-01-01
  • 2018-03-08
  • 2017-03-22
  • 2018-10-20
相关资源
最近更新 更多