本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon EKS 集群的运行时间覆盖和故障排除
启用 Runtime Monitoring 并手动EKS或通过自动代理配置安装 GuardDuty 安全代理(附加组件)后,就可以开始评估EKS集群的覆盖范围了。
查看覆盖率统计数据
与您自己的账户或成员账户关联的EKS集群的覆盖率统计数据是健康EKS集群占所选集群中所有EKS集群的百分比 AWS 区域。下式将其表示为:
(正常集群/所有集群)*100
选择一种访问方法来查看您账户的覆盖率统计数据。
如果您的EKS集群的覆盖状态为 “运行状况不佳”,请参阅对 Amazon EKS 运行时覆盖问题进行故障排除。
保险状态会随着 EventBridge通知而变化
您账户中EKS集群的覆盖状态可能显示为 “不健康”。要检测覆盖状态何时变为不正常,我们建议您定期监控覆盖状态,并在状态变为不正常时进行问题排查。或者,您可以创建 Amazon EventBridge 规则,以便在保险状态从变Unhealthy
为Healthy
或其他状态时通知您。默认情况下,会在EventBridge 公交车上为您的账户 GuardDuty 发布此内容。
示例通知架构
在 EventBridge 规则中,您可以使用预定义的示例事件和事件模式来接收覆盖状态通知。有关创建 EventBridge 规则的更多信息,请参阅 Amazon EventBridge 用户指南中的创建规则。
此外,您还可以使用以下示例通知架构来创建自定义事件模式。确保替换账户的值。要在您的 Amazon EKS 集群的覆盖状态从变Healthy
为时收到通知Unhealthy
,detail-type
应为 GuardDuty Runtime
Protection Unhealthy
。 要在保险状态从变为时收到通知Healthy
,Unhealthy
请将的detail-type
值替换为 GuardDuty Runtime Protection Healthy
.
{ "version": "0", "id": "event ID", "detail-type": "GuardDuty Runtime Protection
Unhealthy
", "source": "aws.guardduty", "account": "AWS 账户 ID", "time": "event timestamp (string)", "region": "AWS 区域", "resources": [ ], "detail": { "schemaVersion": "1.0", "resourceAccountId": "string", "currentStatus": "string", "previousStatus": "string", "resourceDetails": { "resourceType": "EKS", "eksClusterDetails": { "clusterName": "string", "availableNodes": "string", "desiredNodes": "string", "addonVersion": "string" } }, "issue": "string", "lastUpdatedAt": "timestamp" } }
对 Amazon EKS 运行时覆盖问题进行故障排除
如果EKS集群的覆盖率状态为Unhealthy
,则可以在 GuardDuty 控制台的 “问题” 列下或使用CoverageResource数据类型查看相应的错误。
使用包含或排除标签来有选择地监控您的EKS集群时,这些标签可能需要一些时间才能同步。这可能会影响关联EKS群集的覆盖状态。您可以再次尝试删除并添加相应的标签(包含或排除)。有关更多信息,请参阅《亚马逊EKS用户指南》中的为您的亚马逊EKS资源添加标签。
覆盖问题的结构是 Issue type:Extra information
。通常,问题会有一个可选的额外信息,其中可能包括特定的客户端异常或有关问题的描述。根据额外信息,下表提供了解决EKS集群覆盖问题的推荐步骤。
问题类型(前缀) |
额外信息 |
建议的问题排查步骤 |
---|---|---|
插件创建失败 |
插件 |
确保你使用的是支持部署插件的 Kubernetes 版本之一。 |
插件创建失败 插件更新失败 插件状态不健康 |
EKS插件问题- |
有关特定插件问题代码的推荐步骤的信息,请参阅Troubleshooting steps for Addon creation/updatation error with Addon issue code。 有关您可能在此问题中遇到的插件问题代码列表,请参阅AddonIssue。 |
VPC终端节点创建失败 |
VPC共享不支持创建端点 VPC |
运行时监控现在支持在组织VPC内使用共享。确保您的账户满足所有先决条件。有关更多信息,请参阅 使用共享的先决条件 VPC。 |
仅当使用VPC与自动代理配置共享时 所有者账户 ID |
共享VPC所有者账户必须为至少一种资源类型(Amazon EKS 或 Amazon ECS (AWS Fargate))启用运行时监控和自动代理配置。有关更多信息,请参阅 特定于 GuardDuty 运行时监控的先决条件。 | |
启用私有DNS需要两者兼 |
确保将以下VPC属性设置为 如果您使用亚马逊VPC控制台创建亚马逊VPC,请务必同时选择 “启用DNS主机名” 和 “启用DNS解析”。https://console.aws.amazon.com/vpc/ |
|
共享VPC端点删除失败 |
不允许删除账户 ID 的共享VPC端点 |
可能的步骤:
|
本地EKS集群 |
EKS本地前哨集群不支持插件。 |
不可操作。 如需了解更多信息,请参阅 Amazon EKS 关于 AWS 前哨基地。 |
EKS未授予运行时监控启用权限 |
(可能显示额外信息,也可能不显示额外信息) |
|
EKS运行时监控启用资源调配正在进行中 |
(可能显示额外信息,也可能不显示额外信息) |
不可操作。 启用EKS运行时监控后,覆盖范围的状态可能会保持不变, |
其他(任何其他问题) |
由于授权失败而导致的错误 |
切换 “EKS运行时监控” 以将其关闭,然后再次将其打开。确保 GuardDuty 代理也已通过自动部署 GuardDuty 或手动部署。 |
插件创建或更新错误 |
故障排除步骤 |
---|---|
EKS插件问题- |
|
EKS插件问题- |
|
EKS插件问题- |
创建或更新插件时,请提供 你可以先删除插件,然后重新安装。 |
EKS插件问题- |
您必须
现在,您可以使用以下命令
|
EKS插件问题- |
您必须禁用控制器或让控制器接受来自 Amazon EKS 集群的请求。 在创建或更新插件之前,您还可以创建一个 GuardDuty 命名空间并将其标记为 |
EKS插件问题- |
您必须明确允许准入控制器 webhook 访问您所在地区的注册表,如中所EKS代理版本 1.6.0 或更高版本的存储库述。 |