为 Amazon EKS 配置 GuardDuty 安全代理(附加组件)参数
您可以为 Amazon EKS 配置 GuardDuty 安全代理的特定参数。此支持适用于 GuardDuty 安全代理版本 1.5.0 及更高版本。有关最新附加组件版本的信息,请参阅适用于 Amazon EKS 资源的 GuardDuty 安全代理版本。
- 我为什么要更新安全代理配置架构
-
GuardDuty 安全代理的配置架构对于 Amazon EKS 集群中的所有容器都是相同的。当默认值与相关工作负载和实例大小不一致时,可以考虑配置 CPU 设置、内存设置、
PriorityClass和dnsPolicy设置。无论您通过哪种方式来管理 Amazon EKS 集群的 GuardDuty 代理,都可以配置或更新这些参数的现有配置。
配置了参数的自动配置代理配置行为
当 GuardDuty 代表您管理安全代理(EKS 附加组件)时,将会根据需要更新该附加组件。GuardDuty 会将可配置参数的值设置为某个默认值。但您仍然可以将参数更新为需要的值。如果这导致冲突,则默认的 resolveConflicts 选项为 None。
可配置的参数和值
有关配置附加组件参数的步骤的信息,请参阅:
以下表格列举了可用于手动部署 Amazon EKS 附加组件或更新现有附加组件设置的范围和值。
- CPU 设置
-
参数
默认值
可配置范围
请求
200m
200m 至 10000m,含首尾数
限制
1000m
- 内存设置
-
参数
默认值
可配置范围
请求
256Mi
256Mi 至和 20000Mi,含首尾数
限制
1024Mi
PriorityClass设置-
当 GuardDuty 为您创建 Amazon EKS 附加组件时,分配的
PriorityClass为aws-guardduty-agent.priorityclass。这意味着不会根据代理容器组(pod)的优先级执行任何操作。您可以选择以下PriorityClass选项之一来配置此附加组件参数:可配置的
PriorityClasspreemptionPolicy值preemptionPolicy描述容器组(pod)值
aws-guardduty-agent.priorityclassNever无需操作
1000000
aws-guardduty-agent.priorityclass-highPreemptLowerPriority分配此值将优先于运行优先级值低于代理容器组值的容器组。
100000000
system-cluster-critical1PreemptLowerPriority2000000000
system-node-critical1PreemptLowerPriority2000001000
1 Kubernetes 提供了两个
PriorityClass选项,分别为system-cluster-critical和system-node-critical。有关更多信息,请参阅《Kubernetes 文档》中的 PriorityClass。
dnsPolicy设置-
选择 Kubernetes 支持的以下 DNS 策略选项之一。如果未指定任何配置,则将使用默认值
ClusterFirst。-
ClusterFirst -
ClusterFirstWithHostNet -
Default
有关这些策略的更多信息,请参阅《Kubernetes 文档》中的 Pod's DNS Policy
。 -
验证配置架构更新
配置好参数后,请执行以下步骤来验证配置架构是否已更新:
从以下位置打开 Amazon EKS 控制台:https://console.aws.amazon.com/eks/home#/clusters
。 -
在导航窗格中,选择集群。
-
在集群页面上,选择要验证更新的集群名称。
-
选择资源选项卡。
-
从资源类型窗格的工作负载下,选择 DaemonSets。
-
选择 aws-guardduty-agent。
-
在 aws-guardduty-agent 页面上,选择原始视图以查看未格式化的 JSON 响应。验证可配置参数是否显示您提供的值。
通过验证后,切换到 GuardDuty 控制台。选择相应的 Amazon Web Services 区域,然后查看 Amazon EKS 集群的覆盖率状态。有关更多信息,请参阅 Amazon EKS 集群的运行时覆盖率和故障排除。