Elastic Agent 环境变量
在容器化环境中运行 Elastic Agent 时,可以使用环境变量进行配置。此页面上的变量按操作类型分组
- 常用变量
- 配置 Kibana:准备 Kibana 中的 Fleet 插件
-
配置 Fleet Server:在 Elastic Agent 上引导启动 Fleet Server - 配置 Elastic Agent 和 Fleet:注册 Elastic Agent
为了限制需要设置的环境变量数量,提供了以下常用变量。这些变量可用于所有 Elastic Agent 操作,但其优先级低于特定于操作的环境变量。
例如,当使用相同的 Elasticsearch 和 Kibana 凭据来准备 Kibana 中的 Fleet 插件、配置 Fleet Server 以及注册 Elastic Agent 时,这些常用变量非常有用。
| 设置 | 描述 |
|---|---|
ELASTICSEARCH_HOST |
(字符串) 要与之通信的 Elasticsearch 主机。 默认值: http://elasticsearch:9200 |
ELASTICSEARCH_USERNAME |
(字符串) 用于连接到 Kibana 并为 Fleet 检索 service_token 的基本身份验证用户名。默认值: 无 (none) |
ELASTICSEARCH_PASSWORD |
(字符串) 用于连接到 Kibana 并为 Fleet 检索 service_token 的基本身份验证密码。默认值: 无 (none) |
ELASTICSEARCH_API_KEY |
(字符串) 用于向 Elasticsearch 进行身份验证的 API 密钥。 默认值: 无 (none) |
ELASTICSEARCH_CA |
(字符串) 证书颁发机构 (CA) 的路径。 默认情况下,Elastic Agent 使用其运行所在操作系统的受信任证书颁发机构 (CA) 列表。如果签署节点证书的证书不在主机系统的受信任证书颁发机构列表中,请使用此配置添加包含 CA 证书的 .pem 文件的路径。默认值: "" |
KIBANA_HOST |
(字符串) Kibana 主机。 默认值: http://kibana:5601 |
KIBANA_USERNAME |
(字符串) 用于连接到 Kibana 以检索 service_token 的基本身份验证用户名。默认值: elastic |
KIBANA_PASSWORD |
(字符串) 用于连接到 Kibana 以检索 service_token 的基本身份验证密码。默认值: changeme |
KIBANA_CA |
(字符串) 证书颁发机构 (CA) 的路径。 默认情况下,Elastic Agent 使用其运行所在操作系统的受信任证书颁发机构 (CA) 列表。如果签署节点证书的证书不在主机系统的受信任证书颁发机构列表中,请使用此配置添加包含 CA 证书的 .pem 文件的路径。默认值: "" |
ELASTIC_NETINFO |
(布尔值) 当为 false 时,关闭 add_host_metadata 处理程序的 netinfo.enabled 参数。对于 host.ip 和 host.mac 字段索引大小会增加的大规模设置,请将此项设置为 false。默认情况下,Elastic Agent 会初始化 add_host_metadata 处理程序。netinfo.enabled 参数定义了将 IP 地址和 MAC 地址作为 host.ip 和 host.mac 字段进行引入的行为。有关更多信息,请参阅 add_host_metadata默认值: "false" |
STATE_PATH |
(字符串) Elastic Agent 存储其应用程序数据(包括注册状态和日志游标)的目录路径。将其设置为挂载的卷路径,以便在容器重启之间保留代理状态。有关更多信息,请参阅 持久化代理状态 (Persist agent state)。 默认值: /usr/share/elastic-agent/state |
用于准备 Kibana 中 Fleet 插件的设置。
用于在此 Elastic Agent 上引导启动 Fleet Server 的设置。每个部署中至少需要一个 Fleet Server。
| 设置 | 描述 |
|---|---|
FLEET_SERVER_ENABLE |
(整型) 设置为 1 以在此 Elastic Agent 上引导启动 Fleet Server。设置为 1 时,这也会自动强制进行 Fleet 注册。默认值: 无 (none) |
FLEET_SERVER_ELASTICSEARCH_HOST |
(字符串) Fleet Server 用于与之通信的 Elasticsearch 主机。设置时会覆盖 ELASTICSEARCH_HOST。默认值: http://elasticsearch:9200 |
FLEET_SERVER_ELASTICSEARCH_CA |
(字符串) 用于与 Elasticsearch 通信的证书颁发机构文件的路径。设置时会覆盖 ELASTICSEARCH_CA。这是使用 FLEET_SERVER_ELASTICSEARCH_CA_TRUSTED_FINGERPRINT 的另一种选择。默认情况下,Elastic Agent 使用其运行所在操作系统的受信任证书颁发机构 (CA) 列表。如果签署节点证书的证书不在主机系统的受信任证书颁发机构列表中,请使用此配置添加包含 CA 证书的 .pem 文件的路径。默认值: "" |
FLEET_SERVER_ES_CERT |
(字符串) Fleet Server 将用于连接到 Elasticsearch 的双向 TLS 客户端证书的路径。 默认值: "" |
FLEET_SERVER_ES_CERT_KEY |
(字符串) Fleet Server 将用于连接到 Elasticsearch 的双向 TLS 私钥的路径。 默认值: "" |
FLEET_SERVER_INSECURE_HTTP |
(布尔值) 当为 true 时,Fleet Server 通过不安全或未经验证的 HTTP 公开。除非必要,否则不要将其设置为 true。默认值: false |
FLEET_SERVER_SERVICE_TOKEN |
(字符串) 用于与 Elasticsearch 和 Kibana 通信的服务令牌。如果同时指定了服务令牌值和服务令牌路径,则该值可用于设置,并且该路径会被传递给容器中的代理。 默认值: 无 (none) |
FLEET_SERVER_SERVICE_TOKEN_PATH |
(字符串) 用于与 Elasticsearch 和 Kibana 通信的服务令牌文件的路径。如果同时指定了服务令牌值和服务令牌路径,则该值可用于设置,并且该路径会被传递给容器中的代理。 默认值: 无 (none) |
FLEET_SERVER_POLICY_NAME |
(字符串) Fleet Server 在自身上使用的策略名称。设置时会覆盖 FLEET_TOKEN_POLICY_NAME。默认值: 无 (none) |
FLEET_SERVER_POLICY_ID |
(字符串) Fleet Server 在自身上使用的策略 ID。 |
FLEET_SERVER_HOST |
(字符串) Fleet Server HTTP 的绑定主机。会覆盖策略中定义的主机。 默认值: 无 (none) |
FLEET_SERVER_PORT |
(字符串) Fleet Server HTTP 的绑定端口。会覆盖策略中定义的端口。 默认值: 无 (none) |
FLEET_SERVER_CERT |
(字符串) 用于 HTTPS 的证书路径。 默认值: 无 (none) |
FLEET_SERVER_CERT_KEY |
(字符串) 用于 HTTPS 的证书私钥路径。 默认值: 无 (none) |
FLEET_SERVER_CERT_KEY_PASSPHRASE |
(字符串) 加密私钥文件的私钥密码路径。 默认值: 无 (none) |
FLEET_SERVER_CLIENT_AUTH |
(字符串) none、optional 或 required 之一。Fleet Server 用于客户端 mTLS 连接的客户端身份验证选项。如果指定了 optional 或 required,则使用 CA 验证客户端证书。默认值: none |
FLEET_SERVER_ELASTICSEARCH_CA_TRUSTED_FINGERPRINT |
(字符串) 在 TLS 握手期间由 Elasticsearch 发送的证书链中存在的证书颁发机构的 SHA-256 指纹(哈希)。如果在链中找到此证书,它将被添加到受信任的 CA 中。 这是使用 FLEET_SERVER_ELASTICSEARCH_CA 的另一种选择。有关更多信息,请参阅 使用证书指纹 (Using certificate fingerprints)。默认值: "" |
FLEET_DAEMON_TIMEOUT |
(持续时间) 设置以指示 Fleet Server 在引导过程中等待 Elastic Agent 的时间。 |
FLEET_SERVER_TIMEOUT |
(持续时间) 设置以指示 Elastic Agent 等待 Fleet Server 签到为健康状态的时间。 |
用于将 Elastic Agent 注册到 Fleet Server 中的设置。