Elastic Agent 命令参考
编辑Elastic Agent 命令参考
编辑Elastic Agent 提供用于运行 Elastic Agent、管理 Fleet Server 和执行常见任务的命令。此处列出的命令适用于 Fleet 管理的 和 独立的 Elastic Agent。
限制
请注意运行 Elastic Agent 命令的以下限制:
- 您可能需要以 root 用户身份(或 Windows 上的管理员身份)登录才能运行此处描述的命令。Elastic Agent 服务安装并运行后,请确保运行这些命令时不要在前面添加
./
,以免调用错误的二进制文件。 - 不支持使用 Windows PowerShell ISE 运行 Elastic Agent 命令。
elastic-agent diagnostics
编辑收集来自 Elastic Agent 及其运行的组件/单元的诊断信息。此命令生成包含以下内容的存档:
- version.txt - 版本信息
- pre-config.yaml - 变量替换前的预配置
- variables.yaml - 来自提供程序的当前变量上下文
- computed-config.yaml - 变量替换后的配置
- components-expected.yaml - 来自 computed-config.yaml 的预期计算组件模型
- components-actual.yaml - 运行时管理器报告的实际运行组件模型
- state.yaml - 所有正在运行的组件的当前状态信息
-
组件目录 - 来自每个正在运行的组件的诊断信息
- goroutine.txt - goroutine 转储
- heap.txt - 活动对象的内存分配
- allocs.txt - 采样过去的内存分配
- threadcreate.txt - 导致创建新的操作系统线程的跟踪
- block.txt - 导致在同步原语上阻塞的堆栈跟踪
- mutex.txt - 争用互斥锁持有者的堆栈跟踪
- 单元目录 - 如果给定的单元提供特定的诊断信息,则将其放置在此处。
请注意,存档中可能不会删除凭据;它们可能以纯文本形式出现在存档中的配置文件或策略文件中。
此命令仅用于调试目的。存档的输出格式和结构可能会在不同版本之间发生变化。
概要
编辑elastic-agent diagnostics [--file <string>] [--cpu-profile] [--exclude-events] [--help] [global-flags]
选项
编辑-
--file
- 指定输出存档名称。默认为
elastic-agent-diagnostics-<timestamp>.zip
,其中时间戳是 UTC 中的当前时间。 -
--help
- 显示
diagnostics
命令的帮助信息。 -
--cpu-profile
- 此外,还会对每个正在运行的组件运行 30 秒的 CPU 配置文件。这将为每个组件生成一个额外的
cpu.pprof
文件。 -
--p
--cpu-profile
的别名。-
--exclude-events
- 从诊断存档中排除事件日志文件。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent diagnostics
elastic-agent enroll
编辑将 Elastic Agent 注册到 Fleet。
使用此命令可将 Elastic Agent 注册到 Fleet,无需将其作为服务安装。如果您是从 DEB 或 RPM 包安装 Elastic Agent 并计划使用 systemd 命令启动和管理服务,则需要执行此操作。此命令也适用于在安装 Elastic Agent 之前对其进行测试。
如果您已经安装了 Elastic Agent,请使用此命令修改 Elastic Agent 运行的设置。
要注册 Elastic Agent *并*将其作为服务安装,请改用 install
命令。作为服务安装是最常见的场景。
建议您以 root 用户身份运行 enroll
(或 install
)命令,因为某些集成需要 root 权限才能收集敏感数据。此命令会覆盖代理目录中的 elastic-agent.yml
文件。
此命令包含用于设置 Fleet Server 的可选标志。
概要
编辑将 Elastic Agent 注册到 Fleet
elastic-agent enroll --url <string> --enrollment-token <string> [--ca-sha256 <string>] [--certificate-authorities <string>] [--daemon-timeout <duration>] [--delay-enroll] [--elastic-agent-cert <string>] [--elastic-agent-cert-key <string>] [--elastic-agent-cert-key-passphrase <string>] [--force] [--header <strings>] [--help] [--insecure ] [--proxy-disabled] [--proxy-header <strings>] [--proxy-url <string>] [--staging <string>] [--tag <string>] [global-flags]
将 Elastic Agent 注册到 Fleet 并设置 Fleet Server
elastic-agent enroll --fleet-server-es <string> --fleet-server-service-token <string> [--fleet-server-service-token-path <string>] [--ca-sha256 <string>] [--certificate-authorities <string>] [--daemon-timeout <duration>] [--delay-enroll] [--elastic-agent-cert <string>] [--elastic-agent-cert-key <string>] [--elastic-agent-cert-key-passphrase <string>] [--fleet-server-cert <string>] [--fleet-server-cert-key <string>] [--fleet-server-cert-key-passphrase <string>] [--fleet-server-client-auth <string>] [--fleet-server-es-ca <string>] [--fleet-server-es-ca-trusted-fingerprint <string>] [--fleet-server-es-cert <string>] [--fleet-server-es-cert-key <string>] [--fleet-server-es-insecure] [--fleet-server-host <string>] [--fleet-server-policy <string>] [--fleet-server-port <uint16>] [--fleet-server-timeout <duration>] [--force] [--header <strings>] [--help] [--non-interactive] [--proxy-disabled] [--proxy-header <strings>] [--proxy-url <string>] [--staging <string>] [--tag <string>] [--url <string>] [global-flags]
如果没有指定 |
|
在 Elasticsearch 中使用自签名证书时需要。 |
|
在使用自定义证书注册到 Fleet Server 时需要。URL 必须与用于生成 |
有关自定义证书的更多信息,请参阅 为自管理 Fleet Server 配置 SSL/TLS。
选项
编辑-
--ca-sha256 <string>
- 用于证书验证的证书颁发机构哈希引脚的逗号分隔列表。
-
--certificate-authorities <string>
- 用于服务器验证的根证书的逗号分隔列表。
-
--daemon-timeout <duration>
- 等待 Elastic Agent 守护程序的超时时间。
-
--delay-enroll
- 延迟注册,以便在 Elastic Agent 服务首次启动时发生。此设置在您不希望 Elastic Agent 在下一次重新引导或手动启动服务之前注册时很有用,例如,当您正在准备包含 Elastic Agent 的镜像时。
-
--elastic-agent-cert
- 用作 Elastic Agent 与 Fleet Server 连接的客户端证书的证书。
-
--elastic-agent-cert-key
- 用作 Elastic Agent 与 Fleet Server 连接的私钥。
-
--elastic-agent-cert-key-passphrase
-
包含 Elastic Agent 用于连接到 Fleet Server 的相互 TLS 私钥的密码的文件的路径。该文件只能包含密码字符,不能包含换行符或其他非打印字符。
仅当
--elastic-agent-cert-key
已加密并需要密码才能使用时才使用此选项。 -
--enrollment-token <string>
- 用于将 Elastic Agent 注册到 Fleet 的注册令牌。您可以将相同的注册令牌用于多个代理。
-
--fleet-server-cert <string>
- 用于公开的 Fleet Server HTTPS 端点的证书。
-
--fleet-server-cert-key <string>
- 用于公开的 Fleet Server HTTPS 端点的私钥。
-
--fleet-server-cert-key-passphrase <string>
- 如果使用加密的私钥,则用于解密 Fleet Server 私钥的密码文件路径。
-
--fleet-server-client-auth <string>
none
、optional
或required
之一。默认为none
。Fleet Server 的client_authentication
选项,用于客户端 mTLS 连接。如果指定optional
或required
,则将使用--certificate-authorities
标志中指定的 CA 验证客户端证书。-
--fleet-server-es <string>
- 在启动 Elastic Agent 时启动 Fleet Server 进程,并连接到指定的 Elasticsearch URL。
-
--fleet-server-es-ca <string>
- 用于与 Elasticsearch 通信的证书颁发机构的路径。
-
--fleet-server-es-ca-trusted-fingerprint <string>
- 用于自签名 Elasticsearch 证书的证书颁发机构的 SHA-256 指纹(哈希)。此指纹将用于验证 Fleet Server 提供的自签名证书以及 Elastic Agent 为通信启动的任何输入。在 Elasticsearch 中使用自签名证书时,需要此标志。
-
--fleet-server-es-cert
- Fleet Server 连接到 Elasticsearch 时将使用的客户端证书的路径。
-
--fleet-server-es-cert-key
- Fleet Server 连接到 Elasticsearch 时将使用的私钥的路径。
-
--fleet-server-es-insecure
-
允许 fleet server 在以下情况下连接到 Elasticsearch:
- 连接到 HTTP 服务器时。
- 连接到 HTTPS 服务器并且无法验证证书链时。内容已加密,但未验证证书。
使用此标志时,证书验证将被禁用。
-
--fleet-server-host <string>
- Fleet Server HTTP 绑定主机(覆盖策略)。
-
--fleet-server-policy <string>
- 在启动自管理 Fleet Server 时使用,允许使用特定策略。
-
--fleet-server-port <uint16>
- Fleet Server HTTP 绑定端口(覆盖策略)。
-
--fleet-server-service-token <string>
- 用于与 Elasticsearch 通信的服务令牌。与
--fleet-server-service-token-path
互斥。 -
--fleet-server-service-token-path <string>
- 用于与 Elasticsearch 通信的服务令牌文件。与
--fleet-server-service-token
互斥。 -
--fleet-server-timeout <duration>
- 等待 Fleet Server 准备好开始注册的超时时间。
-
--force
-
强制覆盖当前配置,无需提示确认。此标志在使用自动化软件或脚本部署时很有用。
如果 Elastic Agent 已安装在主机上,使用
--force
可能会导致不可预测的行为,即 Fleet 中会出现重复的 Elastic Agent。 -
--header <strings>
- 用于与 elasticsearch 通信的标头。
-
--help
- 显示
enroll
命令的帮助信息。 -
--insecure
-
允许 Elastic Agent 通过不安全连接连接到 Fleet Server。在以下情况下需要此设置
- 连接到 HTTP 服务器时。API 密钥将以明文形式发送。
- 连接到 HTTPS 服务器并且无法验证证书链时。内容已加密,但未验证证书。
- 使用 Elastic Agent 生成的自签名证书时。
我们强烈建议您使用安全连接。
-
--non-interactive
- 以非交互模式安装 Elastic Agent。此标志在使用自动化软件或脚本部署时很有用。如果 Elastic Agent 已安装在主机上,则安装将终止。
-
--proxy-disabled
- 禁用代理支持,包括环境变量。
-
--proxy-header <strings>
- 与 CONNECT 请求一起使用的代理标头。
-
--proxy-url <string>
- 配置代理 URL。
-
--staging <string>
- 配置代理以从暂存版本下载工件。
-
--tag <string>
-
应用于 Fleet 管理的 Elastic Agent 的标签的逗号分隔列表。您可以使用这些标签来过滤 Fleet 中的代理列表。
目前,无法删除或编辑现有标签。要更改标签,必须注销 Elastic Agent,然后使用新标签重新注册它。
-
--url <string>
- 用于将 Elastic Agent 注册到 Fleet 的 Fleet Server URL。
有关更多标志,请参阅 全局标志。
示例
编辑将 Elastic Agent 注册到 Fleet
elastic-agent enroll \ --url=https://cedd4e0e21e240b4s2bbbebdf1d6d52f.fleet.eu-west-1.aws.cld.elstc.co:443 \ --enrollment-token=NEFmVllaa0JLRXhKebVKVTR5TTI6N2JaVlJpSGpScmV0ZUVnZVlRUExFQQ==
将 Elastic Agent 注册到 Fleet 并设置 Fleet Server
elastic-agent enroll --fleet-server-es=http://elasticsearch:9200 \ --fleet-server-service-token=AbEAAdesYXN1abMvZmxlZXQtc2VldmVyL3Rva2VuLTE2MTkxMzg3MzIzMTg7dzEta0JDTmZUcGlDTjlwRmNVTjNVQQ \ --fleet-server-policy=a35fd520-26f5-11ec-8bd9-3374690g57b6
启动使用 Fleet Server 的 Elastic Agent(运行在自定义 CA 上)。此示例假定您已使用以下名称生成证书
-
ca.crt
:根 CA 证书 -
fleet-server.crt
:Fleet Server 证书 -
fleet-server.key
:Fleet Server 私钥 -
elasticsearch-ca.crt
:用于连接到 Elasticsearch 的 CA 证书
elastic-agent enroll \ --url=https://fleet-server:8220 \ --fleet-server-es=https://elasticsearch:9200 \ --fleet-server-service-token=AAEBAWVsYXm0aWMvZmxlZXQtc2XydmVyL3Rva2VuLTE2MjM4OTAztDU1OTQ6dllfVW1mYnFTVjJwTC2ZQ0EtVnVZQQ \ --fleet-server-policy=a35fd520-26f5-11ec-8bd9-3374690g57b6 \ --certificate-authorities=/path/to/ca.crt \ --fleet-server-es-ca=/path/to/elasticsearch-ca.crt \ --fleet-server-cert=/path/to/fleet-server.crt \ --fleet-server-cert-key=/path/to/fleet-server.key \ --fleet-server-port=8220
然后将另一个 Elastic Agent 注册到在上一个示例中启动的 Fleet Server
elastic-agent enroll --url=https://fleet-server:8220 \ --enrollment-token=NEFmVllaa0JLRXhKebVKVTR5TTI6N2JaVlJpSGpScmV0ZUVnZVlRUExFQQ== \ --certificate-authorities=/path/to/ca.crt
elastic-agent help
编辑显示特定命令的帮助。
概要
编辑elastic-agent help <command> [--help] [global-flags]
选项
编辑-
命令
- 命令的名称。
-
--help
- 显示
help
命令的帮助。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent help enroll
elastic-agent inspect
编辑显示当前的 Elastic Agent 配置。
如果未指定参数,则显示完整的 Elastic Agent 配置。
概要
编辑elastic-agent inspect [--help] elastic-agent inspect components [--show-config] [--show-spec] [--help] [id]
选项
编辑-
组件
-
显示组件的当前配置。此命令接受其他标志
-
--show-config
- 用于显示所有单元中的配置。
-
--show-spec
- 用于获取组件的输入/输出运行时规范。
-
-
--help
- 显示
inspect
命令的帮助。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent inspect elastic-agent inspect components --show-config elastic-agent inspect components log-default
elastic-agent privileged
编辑以完全超级用户权限运行 Elastic Agent。这是 Elastic Agent 的常用默认运行模式。privileged
命令允许您在以unprivileged
模式运行代理后切换回以完全管理员权限运行代理。
有关详细信息,请参阅在没有管理员权限的情况下运行 Elastic Agent。
示例
编辑elastic-agent privileged
elastic-agent install
编辑将 Elastic Agent 永久安装在系统上,并使用系统的服务管理器进行管理。安装完成后,代理将自动启动。在 Linux(tar 包)上,此命令需要系统和服务管理器,例如 systemd。
如果您从 DEB 或 RPM 包安装了 Elastic Agent,则install
命令将跳过安装本身,并充当enroll
命令的别名。请注意,使用 DEB 或 RPM 升级 Elastic Agent 后,需要重新启动 Elastic Agent 服务。
您必须以 root 用户(或 Windows 上的管理员)身份运行此命令才能将文件写入正确的目录。此命令将覆盖代理目录中的elastic-agent.yml
文件。
运行此命令的语法因平台而异。有关特定于平台的示例,请参阅安装 Elastic Agent。
概要
编辑要将 Elastic Agent 作为服务安装,请将其注册到 Fleet 并启动elastic-agent
服务
elastic-agent install --url <string> --enrollment-token <string> [--base-path <string>] [--ca-sha256 <string>] [--certificate-authorities <string>] [--daemon-timeout <duration>] [--delay-enroll] [--elastic-agent-cert <string>] [--elastic-agent-cert-key <string>] [--elastic-agent-cert-key-passphrase <string>] [--force] [--header <strings>] [--help] [--insecure ] [--non-interactive] [--privileged] [--proxy-disabled] [--proxy-header <strings>] [--proxy-url <string>] [--staging <string>] [--tag <string>] [--unprivileged] [global-flags]
要将 Elastic Agent 作为服务安装,请将其注册到 Fleet 并启动fleet-server
进程以及elastic-agent
服务
elastic-agent install --fleet-server-es <string> --fleet-server-service-token <string> [--fleet-server-service-token-path <string>] [--base-path <string>] [--ca-sha256 <string>] [--certificate-authorities <string>] [--daemon-timeout <duration>] [--delay-enroll] [--elastic-agent-cert <string>] [--elastic-agent-cert-key <string>] [--elastic-agent-cert-key-passphrase <string>] [--fleet-server-cert <string>] [--fleet-server-cert-key <string>] [--fleet-server-cert-key-passphrase <string>] [--fleet-server-client-auth <string>] [--fleet-server-es-ca <string>] [--fleet-server-es-ca-trusted-fingerprint <string>] [--fleet-server-es-cert <string>] [--fleet-server-es-cert-key <string>] [--fleet-server-es-insecure] [--fleet-server-host <string>] [--fleet-server-policy <string>] [--fleet-server-port <uint16>] [--fleet-server-timeout <duration>] [--force] [--header <strings>] [--help] [--non-interactive] [--privileged] [--proxy-disabled] [--proxy-header <strings>] [--proxy-url <string>] [--staging <string>] [--tag <string>] [--unprivileged] [--url <string>] [global-flags]
如果没有指定 |
|
在 Elasticsearch 端使用自签名证书时需要。 |
|
在使用自定义证书注册到 Fleet Server 时需要。URL 必须与用于生成 |
有关自定义证书的更多信息,请参阅 为自管理 Fleet Server 配置 SSL/TLS。
选项
编辑-
--base-path <string>
-
在默认位置以外的位置安装 Elastic Agent。指定安装的自定义基本路径。
目前不支持使用Elastic Defend使用
--base-path
选项。 -
--ca-sha256 <string>
- 用于证书验证的证书颁发机构哈希引脚的逗号分隔列表。
-
--certificate-authorities <string>
- 用于服务器验证的根证书的逗号分隔列表。
-
--daemon-timeout <duration>
- 等待 Elastic Agent 守护程序的超时时间。
-
--delay-enroll
- 延迟注册,以便在 Elastic Agent 服务首次启动时发生。此设置在您不希望 Elastic Agent 在下一次重新引导或手动启动服务之前注册时很有用,例如,当您正在准备包含 Elastic Agent 的镜像时。
-
--elastic-agent-cert
- 用作 Elastic Agent 与 Fleet Server 连接的客户端证书的证书。
-
--elastic-agent-cert-key
- 用作 Elastic Agent 与 Fleet Server 连接的私钥。
-
--elastic-agent-cert-key-passphrase
-
包含 Elastic Agent 用于连接到 Fleet Server 的相互 TLS 私钥的密码的文件的路径。该文件只能包含密码字符,不能包含换行符或其他非打印字符。
仅当
--elastic-agent-cert-key
已加密并需要密码才能使用时才使用此选项。 -
--enrollment-token <string>
- 用于将 Elastic Agent 注册到 Fleet 的注册令牌。您可以将相同的注册令牌用于多个代理。
-
--fleet-server-cert <string>
- 用于公开的 Fleet Server HTTPS 端点的证书。
-
--fleet-server-cert-key <string>
- 用于公开的 Fleet Server HTTPS 端点的私钥。
-
--fleet-server-cert-key-passphrase <string>
- 如果使用加密的私钥,则用于解密 Fleet Server 私钥的密码文件路径。
-
--fleet-server-client-auth <string>
none
、optional
或required
之一。默认为none
。Fleet Server 的client_authentication
选项,用于客户端 mTLS 连接。如果指定optional
或required
,则将使用--certificate-authorities
标志中指定的 CA 验证客户端证书。-
--fleet-server-es <string>
- 在启动 Elastic Agent 时启动 Fleet Server 进程,并连接到指定的 Elasticsearch URL。
-
--fleet-server-es-ca <string>
- 用于与 Elasticsearch 通信的证书颁发机构的路径。
-
--fleet-server-es-ca-trusted-fingerprint <string>
- 用于自签名 Elasticsearch 证书的证书颁发机构的 SHA-256 指纹(哈希)。此指纹将用于验证 Fleet Server 提供的自签名证书以及 Elastic Agent 为通信启动的任何输入。在 Elasticsearch 中使用自签名证书时,需要此标志。
-
--fleet-server-es-cert
- Fleet Server 连接到 Elasticsearch 时将使用的客户端证书的路径。
-
--fleet-server-es-cert-key
- Fleet Server 连接到 Elasticsearch 时将使用的私钥的路径。
-
--fleet-server-es-insecure
-
允许 fleet server 在以下情况下连接到 Elasticsearch:
- 连接到 HTTP 服务器时。
- 连接到 HTTPS 服务器并且无法验证证书链时。内容已加密,但未验证证书。
使用此标志时,证书验证将被禁用。
-
--fleet-server-host <string>
- Fleet Server HTTP 绑定主机(覆盖策略)。
-
--fleet-server-policy <string>
- 在启动自管理 Fleet Server 时使用,允许使用特定策略。
-
--fleet-server-port <uint16>
- Fleet Server HTTP 绑定端口(覆盖策略)。
-
--fleet-server-service-token <string>
- 用于与 Elasticsearch 通信的服务令牌。与
--fleet-server-service-token-path
互斥。 -
--fleet-server-service-token-path <string>
- 用于与 Elasticsearch 通信的服务令牌文件。与
--fleet-server-service-token
互斥。 -
--fleet-server-timeout <duration>
- 等待 Fleet Server 准备好开始注册的超时时间。
-
--force
-
强制覆盖当前配置,无需提示确认。此标志在使用自动化软件或脚本部署时很有用。
如果 Elastic Agent 已安装在主机上,使用
--force
可能会导致不可预测的行为,即 Fleet 中会出现重复的 Elastic Agent。 -
--header <strings>
- 用于与 elasticsearch 通信的标头。
-
--help
- 显示
enroll
命令的帮助信息。 -
--insecure
-
允许 Elastic Agent 通过不安全连接连接到 Fleet Server。在以下情况下需要此设置
- 连接到 HTTP 服务器时。API 密钥将以明文形式发送。
- 连接到 HTTPS 服务器并且无法验证证书链时。内容已加密,但未验证证书。
- 使用 Elastic Agent 生成的自签名证书时。
我们强烈建议您使用安全连接。
-
--non-interactive
- 以非交互模式安装 Elastic Agent。此标志在使用自动化软件或脚本部署时很有用。如果 Elastic Agent 已安装在主机上,则安装将终止。
-
--privileged
- 以完全超级用户权限运行 Elastic Agent。这是 Elastic Agent 的常用默认运行模式。
--privileged
选项允许您在以unprivileged
模式运行代理后切换回以完全管理员权限运行代理。
有关详细信息,请参阅--unprivileged
选项和在没有管理员权限的情况下运行 Elastic Agent。
-
--proxy-disabled
- 禁用代理支持,包括环境变量。
-
--proxy-header <strings>
- 与 CONNECT 请求一起使用的代理标头。
-
--proxy-url <string>
- 配置代理 URL。
-
--staging <string>
- 配置代理以从暂存版本下载工件。
-
--tag <strings>
-
应用于 Fleet 管理的 Elastic Agent 的标签的逗号分隔列表。您可以使用这些标签来过滤 Fleet 中的代理列表。
目前,无法删除或编辑现有标签。要更改标签,必须注销 Elastic Agent,然后使用新标签重新注册它。
-
--unprivileged
- 在没有完全超级用户权限的情况下运行 Elastic Agent。此选项在限制 Linux 或 macOS 系统上
root
访问权限或 Windows 系统上admin
访问权限的组织中很有用。有关在此模式下运行 Elastic Agent 的详细信息和限制,请参阅在没有管理员权限的情况下运行 Elastic Agent。
请注意,如果代理当前注册到包含需要管理员访问权限的集成的策略中(例如 Elastic Defend 集成),则会阻止更改为unprivileged
模式。
-
--url <string>
- 用于将 Elastic Agent 注册到 Fleet 的 Fleet Server URL。
有关更多标志,请参阅 全局标志。
示例
编辑将 Elastic Agent 作为服务安装,将其注册到 Fleet 并启动elastic-agent
服务
elastic-agent install \ --url=https://cedd4e0e21e240b4s2bbbebdf1d6d52f.fleet.eu-west-1.aws.cld.elstc.co:443 \ --enrollment-token=NEFmVllaa0JLRXhKebVKVTR5TTI6N2JaVlJpSGpScmV0ZUVnZVlRUExFQQ==
将 Elastic Agent 作为服务安装,将其注册到 Fleet 并启动fleet-server
进程以及elastic-agent
服务
elastic-agent install --fleet-server-es=http://elasticsearch:9200 \ --fleet-server-service-token=AbEAAdesYXN1abMvZmxlZXQtc2VldmVyL3Rva2VuLTE2MTkxMzg3MzIzMTg7dzEta0JDTmZUcGlDTjlwRmNVTjNVQQ \ --fleet-server-policy=a35fd620-26f6-11ec-8bd9-3374690f57b6
启动使用 Fleet Server 的 Elastic Agent(运行在自定义 CA 上)。此示例假定您已使用以下名称生成证书
-
ca.crt
:根 CA 证书 -
fleet-server.crt
:Fleet Server 证书 -
fleet-server.key
:Fleet Server 私钥 -
elasticsearch-ca.crt
:用于连接到 Elasticsearch 的 CA 证书
elastic-agent install \ --url=https://fleet-server:8220 \ --fleet-server-es=https://elasticsearch:9200 \ --fleet-server-service-token=AAEBAWVsYXm0aWMvZmxlZXQtc2XydmVyL3Rva2VuLTE2MjM4OTAztDU1OTQ6dllfVW1mYnFTVjJwTC2ZQ0EtVnVZQQ \ --fleet-server-policy=a35fd520-26f5-11ec-8bd9-3374690g57b6 \ --certificate-authorities=/path/to/ca.crt \ --fleet-server-es-ca=/path/to/elasticsearch-ca.crt \ --fleet-server-cert=/path/to/fleet-server.crt \ --fleet-server-cert-key=/path/to/fleet-server.key \ --fleet-server-port=8220
然后安装另一个 Elastic Agent 并将其注册到在上一个示例中启动的 Fleet Server
elastic-agent install --url=https://fleet-server:8220 \ --enrollment-token=NEFmVllaa0JLRXhKebVKVTR5TTI6N2JaVlJpSGpScmV0ZUVnZVlRUExFQQ== \ --certificate-authorities=/path/to/ca.crt
elastic-agent otel
编辑此功能处于技术预览阶段,可能会在将来的版本中更改或删除。Elastic 将努力解决任何问题,但技术预览中的功能不受正式 GA 功能的支持 SLA 的约束。
将 Elastic Agent 作为OpenTelemetry 收集器运行。
概要
编辑elastic-agent otel [flags] elastic-agent otel [command]
您还可以运行./otelcol
命令,该命令调用./elastic-agent otel
并将任何参数传递给它。
可用命令
编辑-
validate
- 验证 OpenTelemetry 收集器配置,无需运行收集器。
标志
编辑-
--config=file:/path/to/first --config=file:path/to/second
- 指向配置文件的位置。请注意,每个标志条目只能设置一个位置,例如
--config=file:/path/to/first --config=file:path/to/second
。 -
--feature-gates flag
- 功能门标识符的逗号分隔列表。以
-
为前缀禁用该功能。以+
为前缀或不加前缀将启用该功能。 -
-h, --help
- 获取
otel
子命令的帮助。使用elastic-agent otel [command] --help
了解更多有关命令的信息。 -
--set string
- 设置任意组件配置属性。该组件必须在配置文件中定义,并且标志具有更高的优先级。数组配置属性将被覆盖,映射将被合并。例如,
--set=processors::batch::timeout=2s
。
示例
编辑使用提供的otel.yml
配置文件将 Elastic Agent 作为 OTel 收集器运行。
./elastic-agent otel --config otel.yml
将 Elastic Agent OTel 配置中的默认详细程度设置从detailed
更改为normal
。
./elastic-agent otel --config otel.yml --set "exporters::debug::verbosity=normal"
elastic-agent restart
编辑重新启动当前运行的 Elastic Agent 守护程序。
概要
编辑elastic-agent restart [--help] [global-flags]
选项
编辑-
--help
- 显示
restart
命令的帮助。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent restart
elastic-agent run
编辑启动elastic-agent
进程。
概要
编辑elastic-agent run [global-flags]
全局标志
编辑每当您在命令行上运行elastic-agent
时,这些标志都是有效的。
-
-c <string>
- 要使用的配置文件。如果未指定,Elastic Agent 将使用
{path.config}/elastic-agent.yml
。 -
--e
- 登录 stderr 并禁用 syslog/文件输出。
-
--environment <environmentVar>
- 代理将运行的环境。
-
--path.config <string>
- Elastic Agent 在其中查找其配置文件的目录。默认值因平台而异。
-
--path.home <string>
-
Elastic Agent 的根目录。
path.home
确定配置文件和数据目录的位置。如果未指定,Elastic Agent 将使用当前工作目录。
-
--path.logs <string>
- Elastic Agent 日志输出的路径。默认值因平台而异。
-
--v
- 将日志级别设置为 INFO。
示例
编辑elastic-agent run -c myagentconfig.yml
elastic-agent status
编辑返回正在运行的 Elastic Agent 守护程序和 Elastic Agent 中每个进程的当前状态。还返回 Fleet 服务器的最后已知状态。output
选项控制信息的详细程度和格式。
概要
编辑elastic-agent status [--output <string>] [--help] [global-flags]
选项
编辑-
--output <string>
- 以
human
(默认值)、full
、json
或yaml
格式输出状态信息。human
在 Elastic Agent 处于HEALTHY
状态时返回有限的信息。如果任何组件或单元未处于HEALTHY
状态,则将显示该组件或单元的完整详细信息。full
、json
和yaml
始终返回完整的状态信息。组件映射到 Elastic Agent 下运行的单个进程,例如 Filebeat 或 Endpoint Security。单元映射到该进程内的离散配置单元,例如 Filebeat 输入或 Metricbeat 模块。
当输出为json
或yaml
时,状态代码将作为数值返回。可以使用下表映射状态代码
+
代码 | 状态 |
---|---|
0 |
|
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
-
--help
- 显示
status
命令的帮助信息。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent status
elastic-agent uninstall
编辑永久卸载系统中的 Elastic Agent。
您必须以 root 用户身份(或 Windows 上的管理员身份)运行此命令才能删除文件。
请确保从 Elastic Agent 安装目录之外的目录运行uninstall
命令。
例如,在 Windows 系统上,安装位置为C:\Program Files\Elastic\Agent
。从C:\Program Files\Elastic
或\tmp
甚至您的默认主目录运行卸载命令。
C:\"Program Files"\Elastic\Agent\elastic-agent.exe uninstall
您必须以 root 用户身份运行此命令。
sudo /Library/Elastic/Agent/elastic-agent uninstall
您必须以 root 用户身份运行此命令。
sudo /opt/Elastic/Agent/elastic-agent uninstall
以管理员身份打开 PowerShell 提示符(右键单击 PowerShell 图标并选择以管理员身份运行)。
在 PowerShell 提示符下,运行
C:\"Program Files"\Elastic\Agent\elastic-agent.exe uninstall
概要
编辑elastic-agent uninstall [--force] [--help] [global-flags]
选项
编辑-
--force
- 卸载 Elastic Agent 且不提示确认。此标志在使用自动化软件或脚本部署时非常有用。
-
--help
- 显示
uninstall
命令的帮助信息。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent uninstall
elastic-agent unprivileged
编辑在没有完全超级用户权限的情况下运行 Elastic Agent。这在限制 Linux 或 macOS 系统上root
访问权限或 Windows 系统上admin
访问权限的组织中非常有用。有关在此模式下运行 Elastic Agent 的详细信息和限制,请参阅在没有管理员权限的情况下运行 Elastic Agent。
请注意,如果代理当前已注册到包含 Elastic Defend 集成的策略,则会阻止将正在运行的 Elastic Agent 更改为unprivileged
模式。
示例
编辑elastic-agent unprivileged
elastic-agent upgrade
编辑将当前运行的 Elastic Agent 升级到指定的版本。这仅应与以独立模式运行的代理一起使用。注册在 Fleet 中的代理应通过 Fleet 升级。
概要
编辑elastic-agent upgrade <version> [--source-uri <string>] [--help] [flags]
选项
编辑-
版本
- 要升级到的 Elastic Agent 版本。
-
--source-uri <string>
- 下载新版本的源 URI。默认情况下,Elastic Agent 使用 Elastic 工件 URL。
-
--skip-verify
- 跳过软件包验证过程。此选项不推荐使用,因为它不安全。
-
--pgp-path <string>
- 使用本地存储的 PGP 密钥副本验证升级包。
-
--pgp-uri <string>
- 使用指定的在线 PGP 密钥验证升级包。
-
--help
- 显示
upgrade
命令的帮助信息。
有关使用--skip-verify
、--pgp-path <string>
和--pgp-uri <string>
软件包验证选项的详细信息,请参阅验证 Elastic Agent 软件包签名。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent upgrade 7.10.1
elastic-agent logs
编辑显示正在运行的 Elastic Agent 的日志。
概要
编辑elastic-agent logs [--follow] [--number <int>] [--component <string>] [--no-color] [--help] [global-flags]
选项
编辑-
--follow
或-f
- 持续跟踪日志更新,直到命令中断(例如,使用
Ctrl-C
)。 -
--number <int>
或-n <int>
- 要打印的日志行数。如果启用了日志跟踪,则会影响初始输出。
-
--component <string>
或-C <string>
- 根据组件名称过滤日志。
-
--no-color
- 禁用基于每个条目的日志级别的颜色。
-
--help
- 显示
logs
命令的帮助信息。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent logs -n 100 -f -C "system/metrics-default"
elastic-agent version
编辑显示 Elastic Agent 的版本。
概要
编辑elastic-agent version [--help] [global-flags]
选项
编辑-
--help
- 显示
version
命令的帮助信息。
有关更多标志,请参阅 全局标志。
示例
编辑elastic-agent version