在 Amazon Linux 2 托管式节点上使用 Kernel Live Patching
适用于 Amazon Linux 2 的 Kernel Live Patching 使您能够将安全漏洞和严重错误补丁应用于正在运行的 Linux 内核,而无需重启或中断正在运行的应用程序。这让您能够从改进的服务和应用程序可用性中受益,同时保持基础设施的安全和最新状态。在运行 Amazon Linux 2 的 Amazon EC2 实例、Kernel Live Patching 核心设备和本地虚拟机上支持 AWS IoT Greengrass。
有关 Kernel Live Patching 的一般信息,请参阅《Amazon EC2 用户指南》中的 Amazon Linux 2 上的 Kernel Live Patching。
在 Amazon Linux 2 托管式节点上启用 Kernel Live Patching 之后,您可使用 Patch Manager(AWS Systems Manager 的一项功能)将内核实时补丁应用到托管式节点。使用 Patch Manager 是使用节点上的现有 yum 工作流来应用更新的替代方法。
开始前的准备工作
要使用 Patch Manager 将内核实时补丁应用到 Amazon Linux 2 托管式节点上,请确保节点基于正确的架构和内核版本。要了解有关信息,请参阅《Amazon EC2 用户指南》中的支持的配置和先决条件。
主题
使用 Patch Manager 的 Kernel Live Patching
- 更新内核版本
-
应用内核实时补丁更新后,无需重启托管式节点。但是,AWS 为 Amazon Linux 2 内核版本提供内核实时补丁,最长可达其发布后三个月。在三个月期限之后,您必须更新到更高版本的内核才能继续接收内核实时补丁。我们建议使用维护时段至少每三个月一次安排重启节点,以提示内核版本更新。
- 卸载内核实时补丁
-
无法使用 Patch Manager 卸载内核实时补丁。相反,您可以关闭 Kernel Live Patching,从而删除所应用的内核实时补丁的 RPM 程序包。有关更多信息,请参阅 使用 Run Command 来关闭 Kernel Live Patching。
- 内核合规性
-
在某些情况下,从当前内核版本的实时补丁安装所有 CVE 补丁可能会使该内核进入与较新内核版本相同的合规性状态。发生这种情况时,较新版本报告为
Installed
,而托管式节点报告为Compliant
。但是,对于较新的内核版本,不会报告安装时间。 - 一个内核实时补丁,多个 CVE
-
如果一个内核实时补丁解决多个 CVE,并且这些 CVE 具有各种分类和严重性值,则只针对该补丁报告 CVE 中的最高分类和严重性。
本节的其余部分介绍如何使用 Patch Manager 将内核实时补丁应用于满足这些要求的托管式节点。
使用 Patch Manager 的 Kernel Live Patching 的原理
AWS 为 Amazon Linux 2 发布了两种类型的内核实时补丁:安全更新和错误修复。要应用这些补丁类型,请使用仅针对下表列出的分类和严重性的补丁基准文档。
分类 | 严重性 |
---|---|
Security |
Critical , Important |
Bugfix |
All |
您可以创建仅针对这些补丁的自定义补丁基准,也可以使用预定义的 AWS-AmazonLinux2DefaultPatchBaseline
补丁基准。换句话说,您可以将 AWS-AmazonLinux2DefaultPatchBaseline
与启用 Kernel Live Patching 的 Amazon Linux 2 托管式节点一起使用,并且系统会应用内核实时更新。
注意
AWS-AmazonLinux2DefaultPatchBaseline
配置指定发布最后更新补丁后的 7 天等待期,然后才会自动安装补丁。如果您不想等待 7 天再自动批准内核实时补丁,则可以创建并使用自定义补丁基准。在补丁基准中,您可以不指定自动批准等待期,也可以指定较短或更长的等待期。有关更多信息,请参阅 使用自定义补丁基准。
我们建议使用以下策略通过内核实时更新来修补托管式节点:
-
在 Amazon Linux 2 托管式节点上启用 Kernel Live Patching。
-
使用 Run Command(AWS Systems Manager 的一项功能)在托管式节点上运行
Scan
操作,这些节点使用预定义AWS-AmazonLinux2DefaultPatchBaseline
或自定义补丁基准,该基准也仅针对严重性分类为Critical
和Important
,以及All
的严重性为Bugfix
的Security
更新。 -
使用合规性(AWS Systems Manager 的一项功能)查看是否报告了任何已扫描的托管式节点中修补不合规情况。如果是这样,请查看节点合规性详细信息,以确定托管式节点中是否缺少任何内核实时补丁。
-
要安装缺少的内核实时补丁,请将 Run Command 与之前指定的相同补丁基准一起使用,但这次运行
Install
操作而不是Scan
操作。由于无需重启即可安装内核实时补丁,因此您可以为此操作选择
NoReboot
重启选项。注意
如果托管式节点上安装的其他类型补丁需要,或者要更新到较新的内核,您仍然可以重启托管式节点。在这些情况下,请改为选择
RebootIfNeeded
重启选项。 -
返回到合规性以验证安装了内核实时补丁。