配置集中式 Pipeline 管理
编辑配置集中式 Pipeline 管理
编辑要配置 集中式 Pipeline 管理
-
验证您是否正在使用包含 Pipeline 管理功能的许可证。
有关更多信息,请参阅 https://elastic.ac.cn/subscriptions 和 许可证管理。
-
在
logstash.yml
文件中指定 配置管理设置。至少,请设置-
xpack.management.enabled: true
以启用集中式配置管理。 -
xpack.management.elasticsearch.hosts
以指定将存储 Logstash Pipeline 配置和元数据的 Elasticsearch 实例。 -
xpack.management.pipeline.id
以注册您要集中管理的 Pipeline。
-
- 重新启动 Logstash。
- 如果您的 Elasticsearch 集群受基本身份验证保护,请将内置的
logstash_admin
角色以及logstash_writer
角色分配给将使用集中式 Pipeline 管理的任何用户。有关更多信息,请参阅 保护您的连接。
在您配置和启用安全功能之前,集中式管理处于禁用状态。
配置 Logstash 以使用集中式 Pipeline 管理后,您将无法再指定本地 Pipeline 配置。这意味着当启用此功能时,pipelines.yml
文件以及 path.config
和 config.string
等设置将处于非活动状态。
Logstash 中的配置管理设置
编辑您可以在 logstash.yml
中设置以下 xpack.management
设置以启用 集中式 Pipeline 管理。有关配置 Logstash 的更多信息,请参阅 logstash.yml。
以下示例显示了基本设置,这些设置假设 Elasticsearch 和 Kibana 安装在本地主机上,并启用了基本 AUTH,但没有 SSL。如果您正在使用 SSL,则需要指定其他 SSL 设置。
xpack.management.enabled: true xpack.management.elasticsearch.hosts: "https://127.0.0.1:9200/" xpack.management.elasticsearch.username: logstash_admin_user xpack.management.elasticsearch.password: t0p.s3cr3t xpack.management.logstash.poll_interval: 5s xpack.management.pipeline.id: ["apache", "cloudwatch_logs"]
-
xpack.management.enabled
- 设置为
true
以启用 Logstash 的 X-Pack 集中式配置管理。 -
xpack.management.logstash.poll_interval
- Logstash 实例从 Elasticsearch 轮询 Pipeline 更改的频率。默认为 5 秒。
-
xpack.management.pipeline.id
- 指定要注册以进行集中式 Pipeline 管理的 Pipeline ID 的逗号分隔列表。更改此设置后,您需要重新启动 Logstash 才能获取更改。Pipeline ID 支持
*
作为 通配符 以匹配多个 ID -
xpack.management.elasticsearch.hosts
- 将存储 Logstash Pipeline 配置和元数据的 Elasticsearch 实例。这可能是 Logstash 配置中“outputs”部分中指定的同一个 Elasticsearch 实例,也可能是不同的实例。默认为
https://127.0.0.1:9200
。 -
xpack.management.elasticsearch.username
和xpack.management.elasticsearch.password
- 如果您的 Elasticsearch 集群受基本身份验证保护,则这些设置提供 Logstash 实例用于访问配置数据进行身份验证的用户名和密码。此处指定的用户名应具有内置的
logstash_admin
角色和自定义的logstash_writer
角色,该角色提供对用于管理配置的系统索引的访问权限。从 Elasticsearch 7.10.0 开始,logstash_admin
角色继承manage_logstash_pipelines
集群权限以进行集中式 Pipeline 管理。如果用户创建了自己的角色并授予其对 .logstash 索引的访问权限,则这些角色将继续在 7.x 中工作,但需要在 8.0 中进行更新。 -
xpack.management.elasticsearch.proxy
- 可选设置,允许您指定代理 URL,如果 Logstash 需要使用代理才能访问您的 Elasticsearch 集群。
-
xpack.management.elasticsearch.ssl.ca_trusted_fingerprint
- 可选设置,使您能够指定 Elasticsearch 实例的证书颁发机构的十六进制编码 SHA-256 指纹。
自安全 Elasticsearch 集群将在设置过程中将 CA 的指纹提供给控制台。
您还可以使用 Elasticsearch 主机上的 openssl
命令行实用程序获取 Elasticsearch 的 CA 的 SHA256 指纹
openssl x509 -fingerprint -sha256 -in $ES_HOME/config/certs/http_ca.crt
-
xpack.management.elasticsearch.ssl.certificate_authority
- 可选设置,使您能够指定 Elasticsearch 实例的证书颁发机构的
.pem
文件的路径。 -
xpack.management.elasticsearch.ssl.truststore.path
- 可选设置,提供 Java 密钥库 (JKS) 的路径以验证服务器的证书。
您不能同时使用此设置和 xpack.management.elasticsearch.ssl.certificate_authority
。
-
xpack.management.elasticsearch.ssl.truststore.password
- 可选设置,提供密钥库的密码。
-
xpack.management.elasticsearch.ssl.keystore.path
- 可选设置,提供 Java 密钥库 (JKS) 的路径以验证客户端的证书。
您不能同时使用此设置和 xpack.management.elasticsearch.ssl.keystore.certificate
。
-
xpack.management.elasticsearch.ssl.keystore.password
- 可选设置,提供密钥库的密码。
-
xpack.management.elasticsearch.ssl.certificate
- 可选设置,提供要用于对客户端进行身份验证的 SSL 证书的路径。此证书应为 OpenSSL 样式的 X.509 证书文件。
仅当设置了 xpack.management.elasticsearch.ssl.key
时,才能使用此设置。
-
xpack.management.elasticsearch.ssl.key
- 可选设置,提供与
xpack.management.elasticsearch.ssl.certificate
对应的 OpenSSL 样式 RSA 私钥的路径。
仅当设置了 xpack.management.elasticsearch.ssl.certificate
时,才能使用此设置。
-
xpack.management.elasticsearch.ssl.verification_mode
- 验证服务器证书的选项。默认为
full
。要禁用,请设置为none
。禁用此选项会严重影响安全性。 -
xpack.management.elasticsearch.ssl.cipher_suites
- 可选设置,提供要使用的密码套件列表,按优先级列出。支持的密码套件因 Java 和协议版本而异。
-
xpack.management.elasticsearch.cloud_id
- 如果您在 Elastic Cloud 中使用 Elasticsearch,则应在此处指定标识符。此设置是
xpack.management.elasticsearch.hosts
的替代方案。如果配置了cloud_id
,则不应使用xpack.management.elasticsearch.hosts
。此 Elasticsearch 实例将存储 Logstash Pipeline 配置和元数据。 -
xpack.management.elasticsearch.cloud_auth
- 如果您在 Elastic Cloud 中使用 Elasticsearch,则可以在此处设置您的身份验证凭据。此设置是
xpack.management.elasticsearch.username
和xpack.management.elasticsearch.password
的替代方案。如果配置了cloud_auth
,则不应使用这些设置。此处指定的凭据应适用于具有logstash_admin
角色的用户,该角色提供对用于管理配置的系统索引的访问权限。 -
xpack.management.elasticsearch.api_key
- 使用 Elasticsearch API 密钥进行身份验证。请注意,此选项还需要使用 SSL。API 密钥格式为
id:api_key
,其中id
和api_key
与 Elasticsearch 创建 API 密钥 API 返回的值相同。
Pipeline ID 中的通配符支持
编辑Pipeline ID 必须以字母或下划线开头,并且只能包含字母、下划线、短划线和数字。您可以在 xpack.management.pipeline.id
中使用 *
来匹配任意数量的字母、下划线、短划线和数字。
xpack.management.pipeline.id: ["*logs", "*apache*", "tomcat_log"]
在此示例中,“*logs”匹配以“logs”结尾的所有 ID。“*apache*”匹配名称中包含“apache”的任何 ID。
Pipeline ID 中的通配符从 Elasticsearch 7.10 开始可用。如果新 Pipeline ID 与通配符模式匹配,则 Logstash 可以获取新 Pipeline 而无需重新启动。