在代理策略中启用自定义设置
编辑在代理策略中启用自定义设置编辑
在某些情况下,启用 Fleet 中不可用的自定义设置并覆盖 Elastic Agent 的默认行为可能很有用。例如,限制代理消耗的 CPU 量、配置代理下载超时以及覆盖用于监控的默认端口。
请谨慎使用这些自定义设置,因为它们仅适用于特殊情况。我们不会测试传递给 Elastic Agent 组件的所有可能的设置组合,因此某些自定义配置可能会导致故障。
限制 CPU 使用率编辑
如果需要限制 CPU 消耗量,可以使用 agent.limits.go_max_procs
配置选项。此参数限制了每个 Go 进程中可以同时执行 Go 代码的操作系统线程数。agent.limits.go_max_procs
选项接受一个不小于 0
的整数值,该值是表示“所有可用 CPU”的默认值。
agent.limits.go_max_procs
限制独立应用于代理及其监管的每个底层 Go 进程。例如,如果在策略中将 Elastic Agent 配置为使用 agent.limits.go_max_procs: 2
监管两个 Beats,则总 CPU 限制为 6,其中三个进程(一个 Elastic Agent 和两个 Beats)中的每一个都可以在两个 CPU 上独立执行。
此设置类似于 Beats max_procs
设置。有关更多详细信息,请参阅 Go 运行时文档中的 GOMAXPROCS 函数。
要启用 agent.limits.go_max_procs
,请从 Kibana 开发工具控制台运行 Fleet API 请求以覆盖当前的 Elastic Agent 策略并添加 go_max_procs
参数。例如,要将 Elastic Agent 监管的 Go 进程限制为每个操作系统线程两个,请运行
PUT kbn:/api/fleet/agent_policies/<policy-id> { "name": "<policy-name>", "namespace": "default", "overrides": { "agent": { "limits": { "go_max_procs": 2 } } } }
配置代理下载超时编辑
您可以配置 Elastic Agent 等待升级包下载完成的时间。这在网络连接缓慢或断断续续的情况下很有用。
PUT kbn:/api/fleet/agent_policies/<policy-id> { "name": "Test policy", "namespace": "default", "overrides": { "agent": { "download": { "timeout": "120s" } } } }
覆盖默认监控端口编辑
您可以覆盖 Elastic Agent 用于发送监控数据的默认端口。如果您在部署代理的机器上运行了应用程序,并且该应用程序正在使用相同的端口,则能够调整此设置非常有用。
PUT kbn:/api/fleet/agent_policies/<policy-id> { "name": "Agent policy 1", "namespace": "default", "overrides": { "agent.monitoring.http.port": 6792 } }