Elasticsearch 中的监控设置编辑

在 7.16 中已弃用。

使用 Elasticsearch 监控插件收集和发送监控数据已弃用。Elastic Agent 和 Metricbeat 是收集和发送监控数据到监控集群的推荐方法。如果您之前配置了旧的收集方法,您应该迁移到使用 Elastic AgentMetricbeat 收集方法。

默认情况下,Elasticsearch 监控功能已启用,但数据收集已禁用。要启用数据收集,请使用 xpack.monitoring.collection.enabled 设置。

除非另有说明,否则这些设置可以使用 集群更新设置 API 在活动集群上动态更新。

要调整监控数据在监控 UI 中的显示方式,请在 kibana.yml 中配置 xpack.monitoring 设置。要控制如何从 Logstash 收集监控数据,请在 logstash.yml 中配置监控设置。

有关更多信息,请参阅 监控集群

通用监控设置编辑

xpack.monitoring.enabled
[7.8.0] 在 7.8.0 中已弃用。基本许可证功能应始终启用 (静态) 此已弃用设置无效。

监控收集设置编辑

xpack.monitoring.collection 设置控制如何从 Elasticsearch 节点收集数据。

xpack.monitoring.collection.enabled
(动态) [7.16.0] 在 7.16.0 中已弃用。 设置为 true 以启用监控数据的收集。当此设置为 false(默认)时,Elasticsearch 监控数据不会被收集,并且来自其他来源(如 Kibana、Beats 和 Logstash)的所有监控数据将被忽略。
xpack.monitoring.collection.interval logo cloud

[6.3.0] 在 6.3.0 中已弃用。使用 xpack.monitoring.collection.enabled 设置为 false 代替。 (动态) 从 7.0.0 开始,不再支持将设置设置为 -1 以禁用数据收集。

控制数据样本的收集频率。默认为 10s。如果您修改了收集间隔,请将 kibana.yml 中的 xpack.monitoring.min_interval_seconds 选项设置为相同的值。

xpack.monitoring.elasticsearch.collection.enabled
(动态) [7.16.0] 在 7.16.0 中已弃用。 控制是否应收集有关 Elasticsearch 集群的统计信息。默认为 true。这与 xpack.monitoring.collection.enabled 不同,后者允许您启用或禁用所有监控收集。但是,此设置仅禁用 Elasticsearch 数据的收集,同时仍允许其他数据(例如,Kibana、Logstash、Beats 或 APM Server 监控数据)通过此集群。
xpack.monitoring.collection.cluster.stats.timeout
(动态) [7.16.0] 在 7.16.0 中已弃用。 收集集群统计信息的超时时间,以 时间单位 为单位。默认为 10s
xpack.monitoring.collection.node.stats.timeout
(动态) [7.16.0] 在 7.16.0 中已弃用。 收集节点统计信息的超时时间,以 时间单位 为单位。默认为 10s
xpack.monitoring.collection.indices
(动态) [7.16.0] 在 7.16.0 中已弃用。 控制监控功能从哪些索引收集数据。默认为所有索引。将索引名称指定为逗号分隔的列表,例如 test1,test2,test3。名称可以包含通配符,例如 test*。您可以通过在前面添加 - 来显式排除索引。例如 test*,-test3 将监控所有以 test 开头的索引,除了 test3。系统索引(如 .security* 或 .kibana*)始终以 . 开头,通常应该被监控。考虑将 .* 添加到索引列表中以确保监控系统索引。例如:.*,test*,-test3
xpack.monitoring.collection.index.stats.timeout
(动态) [7.16.0] 在 7.16.0 中已弃用。 收集索引统计信息的超时时间,以 时间单位 为单位。默认为 10s
xpack.monitoring.collection.index.recovery.active_only
(动态) [7.16.0] 在 7.16.0 中已弃用。 控制是否收集所有恢复。设置为 true 以仅收集活动恢复。默认为 false
xpack.monitoring.collection.index.recovery.timeout
(动态) [7.16.0] 在 7.16.0 中已弃用。 收集恢复信息的超时时间,以 时间单位 为单位。默认为 10s
xpack.monitoring.history.duration logo cloud

(动态) [7.16.0] 在 7.16.0 中已弃用。 保留持续时间,超过此持续时间,由监控导出器创建的索引将被自动删除,以 时间单位 为单位。默认为 7d(7 天)。

此设置的最小值为 1d(1 天),以确保正在监控某些内容,并且无法禁用它。

此设置目前仅影响 local 类型的导出器。使用 http 导出器创建的索引不会被自动删除。

xpack.monitoring.exporters
(静态) 配置代理存储监控数据的位置。默认情况下,代理使用本地导出器,该导出器在安装代理的集群上索引监控数据。使用 HTTP 导出器将数据发送到单独的监控集群。有关更多信息,请参阅 本地导出器设置HTTP 导出器设置工作原理

本地导出器设置编辑

local 导出器是监控功能使用的默认导出器。顾名思义,它将数据导出到本地集群,这意味着不需要配置太多内容。

如果您没有提供任何导出器,那么监控功能会自动为您创建一个。如果提供了任何导出器,则不会添加默认导出器。

xpack.monitoring.exporters.my_local:
  type: local
type
[7.16.0] 在 7.16.0 中已弃用。 本地导出器的值必须始终为 local,并且是必需的。
use_ingest
是否向集群提供一个占位符管道,以及每个批量请求中的一个管道处理器。默认值为 true。如果禁用,则表示它不会使用管道,这意味着将来的版本无法自动升级批量请求以使其面向未来。
cluster_alerts.management.enabled
[7.16.0] 在 7.16.0 中已弃用。 是否为该集群创建集群警报。默认值为 true。要使用此功能,必须启用 Watcher。如果您拥有基本许可证,则不会显示集群警报。
wait_master.timeout
[7.16.0] 在 7.16.0 中已弃用。 等待主节点设置 local 导出器以进行监控的时间,以 时间单位 为单位。在此等待时间之后,非主节点会向用户发出可能缺少配置的警告。默认为 30s

HTTP 导出器设置编辑

以下列出了可以与 http 导出器一起提供的设置。所有设置都显示为在您为导出器选择的名称之后的内容

xpack.monitoring.exporters.my_remote:
  type: http
  host: ["host:port", ...]
type
[7.16.0] 在 7.16.0 中已弃用。 HTTP 导出器的值必须始终为 http,并且是必需的。
host

[7.16.0] 在 7.16.0 中已弃用。 主机支持多种格式,既可以作为数组,也可以作为单个值。支持的格式包括 hostnamehostname:porthttp://hostname http://hostname:porthttps://hostnamehttps://hostname:port。主机不能被假定。默认方案始终为 http,如果未作为 host 字符串的一部分提供,则默认端口始终为 9200

xpack.monitoring.exporters:
  example1:
    type: http
    host: "10.1.2.3"
  example2:
    type: http
    host: ["http://10.1.2.4"]
  example3:
    type: http
    host: ["10.1.2.5", "10.1.2.6"]
  example4:
    type: http
    host: ["https://10.1.2.3:9200"]
auth.username
[7.16.0] 在 7.16.0 中已弃用。 如果提供了 auth.secure_password,则需要用户名。
auth.secure_password
(安全可重新加载) [7.16.0] 在 7.16.0 中已弃用。 auth.username 的密码。
connection.timeout
[7.16.0] 在 7.16.0 中已弃用。 HTTP 连接应等待套接字为请求打开的时间,以 时间单位 为单位。默认值为 6s
connection.read_timeout
[7.16.0] 在 7.16.0 中已弃用。 HTTP 连接应等待套接字发送回响应的时间,以 时间单位 为单位。默认值为 10 * connection.timeout(如果两者都未设置,则为 60s)。
ssl
[7.16.0] 在 7.16.0 中已弃用。 每个 HTTP 导出器都可以定义自己的 TLS/SSL 设置或继承它们。请参阅 X-Pack 监控 TLS/SSL 设置
proxy.base_path
[7.16.0] 在 7.16.0 中已弃用。 要为任何传出请求添加的前缀基本路径,例如 /base/path(例如,批量请求将被发送为 /base/path/_bulk)。没有默认值。
headers

[7.16.0] 在 7.16.0 中已弃用。 添加到每个请求的可选标头,这可以帮助通过代理路由请求。

xpack.monitoring.exporters.my_remote:
  headers:
    X-My-Array: [abc, def, xyz]
    X-My-Header: abc123

基于数组的标头将发送 n 次,其中 n 是数组的大小。无法设置 Content-TypeContent-Length。监控代理创建的任何标头将覆盖此处定义的任何内容。

index.name.time_format
[7.16.0] 在 7.16.0 中已弃用。 用于更改每日监控索引的默认日期后缀的机制。默认格式为 yyyy.MM.dd。例如,.monitoring-es-7-2021.08.26
use_ingest
是否向监控集群提供占位符管道,以及每个批量请求的管道处理器。默认值为 true。如果禁用,则表示它不会使用管道,这意味着未来的版本无法自动升级批量请求以使其具有未来证明性。
cluster_alerts.management.enabled
[7.16.0] 在 7.16.0 中已弃用。 是否为该集群创建集群警报。默认值为 true。要使用此功能,必须启用 Watcher。如果您拥有基本许可证,则不会显示集群警报。
cluster_alerts.management.blacklist

[7.16.0] 在 7.16.0 中已弃用。 阻止创建特定集群警报。它还会删除当前集群中已存在的任何适用监视。

您可以将以下任何监视标识符添加到阻止的警报列表中

  • elasticsearch_cluster_status
  • elasticsearch_version_mismatch
  • elasticsearch_nodes
  • kibana_version_mismatch
  • logstash_version_mismatch
  • xpack_license_expiration

例如:["elasticsearch_version_mismatch","xpack_license_expiration"]

X-Pack 监控 TLS/SSL 设置编辑

您可以配置以下 TLS/SSL 设置。

xpack.monitoring.exporters.$NAME.ssl.supported_protocols

(静态) [7.16.0] 在 7.16.0 中已弃用。 支持的协议及其版本。有效协议:SSLv2HelloSSLv3TLSv1TLSv1.1TLSv1.2TLSv1.3。如果 JVM 的 SSL 提供程序支持 TLSv1.3,则默认值为 TLSv1.3,TLSv1.2,TLSv1.1。否则,默认值为 TLSv1.2,TLSv1.1

Elasticsearch 依赖于您的 JDK 的 SSL 和 TLS 实现。查看 JDK 版本支持的 SSL/TLS 版本 以了解更多信息。

如果 xpack.security.fips_mode.enabledtrue,则您无法使用 SSLv2HelloSSLv3。请参阅 FIPS 140-2

xpack.monitoring.exporters.$NAME.ssl.verification_mode

(静态) [7.16.0] 在 7.16.0 中已弃用。 控制证书的验证。

有效值
full
验证提供的证书:具有在 not_beforenot_after 日期范围内的颁发日期;链接到受信任的证书颁发机构 (CA);具有与证书中的名称匹配的 hostname 或 IP 地址。
certificate
验证提供的证书并验证它是否由受信任的颁发机构 (CA) 签名,但不检查证书 hostname
none

不执行任何证书验证。

将证书验证设置为 none 会禁用 SSL/TLS 的许多安全优势,这非常危险。仅在 Elastic 支持人员指示的情况下,作为尝试解决 TLS 错误时的临时诊断机制来设置此值。

默认为 full

xpack.monitoring.exporters.$NAME.ssl.cipher_suites

(静态) [7.16.0] 在 7.16.0 中已弃用。 支持的密码套件因您使用的 Java 版本而异。例如,对于版本 12,默认值为 TLS_AES_256_GCM_SHA384TLS_AES_128_GCM_SHA256TLS_CHACHA20_POLY1305_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHATLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHATLS_ECDHE_RSA_WITH_AES_256_CBC_SHATLS_ECDHE_RSA_WITH_AES_128_CBC_SHATLS_RSA_WITH_AES_256_GCM_SHA384TLS_RSA_WITH_AES_128_GCM_SHA256TLS_RSA_WITH_AES_256_CBC_SHA256TLS_RSA_WITH_AES_128_CBC_SHA256TLS_RSA_WITH_AES_256_CBC_SHATLS_RSA_WITH_AES_128_CBC_SHA

有关更多信息,请参阅 Oracle 的 Java 密码体系结构文档

X-Pack 监控 TLS/SSL 密钥和受信任证书设置编辑

以下设置用于指定私钥、证书以及在通过 SSL/TLS 连接进行通信时应使用的受信任证书。私钥和证书是可选的,如果服务器需要客户端身份验证以进行 PKI 身份验证,则将使用它们。

PEM 编码文件编辑

使用 PEM 编码文件时,请使用以下设置

xpack.monitoring.exporters.$NAME.ssl.key

(静态) [7.16.0] 在 7.16.0 中已弃用。 包含私钥的 PEM 编码文件的路径。

如果需要 HTTP 客户端身份验证,它将使用此文件。您不能同时使用此设置和 ssl.keystore.path

xpack.monitoring.exporters.$NAME.ssl.key_passphrase

(静态) [7.16.0] 在 7.16.0 中已弃用。 用于解密私钥的密码短语。由于密钥可能未加密,因此此值是可选的。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.secure_key_passphrase 代替。

您不能同时使用此设置和 ssl.secure_key_passphrase

xpack.monitoring.exporters.$NAME.ssl.secure_key_passphrase
(安全) [7.16.0] 在 7.16.0 中已弃用。 用于解密私钥的密码短语。由于密钥可能未加密,因此此值是可选的。
xpack.monitoring.exporters.$NAME.ssl.certificate

(静态) [7.16.0] 在 7.16.0 中已弃用。 指定与密钥关联的 PEM 编码证书(或证书链)的路径。

此设置仅在设置了 ssl.key 时才可以使用。

xpack.monitoring.exporters.$NAME.ssl.certificate_authorities

(静态) [7.16.0] 在 7.16.0 中已弃用。 应信任的 PEM 编码证书文件的路径列表。

此设置和 ssl.truststore.path 不能同时使用。

Java 密钥库文件edit

当使用包含私钥、证书和应信任的证书的 Java 密钥库文件 (JKS) 时,请使用以下设置

xpack.monitoring.exporters.$NAME.ssl.keystore.path

(静态) [7.16.0] 在 7.16.0 中已弃用。 包含私钥和证书的密钥库文件的路径。

它必须是 Java 密钥库 (jks) 或 PKCS#12 文件。您不能同时使用此设置和 ssl.key

xpack.monitoring.exporters.$NAME.ssl.keystore.password
(静态) 密钥库的密码。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.keystore.secure_password 代替。
xpack.monitoring.exporters.$NAME.ssl.keystore.secure_password
(安全) [7.16.0] 在 7.16.0 中已弃用。 密钥库的密码。
xpack.monitoring.exporters.$NAME.ssl.keystore.key_password

(静态) 密钥库中密钥的密码。默认值为密钥库密码。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.keystore.secure_key_password 代替。

您不能同时使用此设置和 ssl.keystore.secure_password

xpack.monitoring.exporters.$NAME.ssl.keystore.secure_key_password
(安全) [7.16.0] 在 7.16.0 中已弃用。 密钥库中密钥的密码。默认值为密钥库密码。
xpack.monitoring.exporters.$NAME.ssl.truststore.path

(静态) [7.16.0] 在 7.16.0 中已弃用。 包含应信任的证书的密钥库的路径。它必须是 Java 密钥库 (jks) 或 PKCS#12 文件。

您不能同时使用此设置和 ssl.certificate_authorities

xpack.monitoring.exporters.$NAME.ssl.truststore.password

(静态) 信任库的密码。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.truststore.secure_password 代替。

您不能同时使用此设置和 ssl.truststore.secure_password

xpack.monitoring.exporters.$NAME.ssl.truststore.secure_password
(安全) [7.16.0] 在 7.16.0 中已弃用。 信任库的密码。

PKCS#12 文件edit

Elasticsearch 可以配置为使用包含私钥、证书和应信任的证书的 PKCS#12 容器文件(.p12.pfx 文件)。

PKCS#12 文件的配置方式与 Java 密钥库文件相同

xpack.monitoring.exporters.$NAME.ssl.keystore.path

(静态) [7.16.0] 在 7.16.0 中已弃用。 包含私钥和证书的密钥库文件的路径。

它必须是 Java 密钥库 (jks) 或 PKCS#12 文件。您不能同时使用此设置和 ssl.key

xpack.monitoring.exporters.$NAME.ssl.keystore.type
(静态) [7.16.0] 在 7.16.0 中已弃用。 密钥库文件的格式。它必须是 jksPKCS12。如果密钥库路径以“.p12”、“.pfx”或“.pkcs12”结尾,则此设置默认为 PKCS12。否则,它默认为 jks
xpack.monitoring.exporters.$NAME.ssl.keystore.password
(静态) [7.16.0] 在 7.16.0 中已弃用。 密钥库的密码。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.keystore.secure_password 代替。
xpack.monitoring.exporters.$NAME.ssl.keystore.secure_password
(安全) [7.16.0] 在 7.16.0 中已弃用。 密钥库的密码。
xpack.monitoring.exporters.$NAME.ssl.keystore.key_password

(静态) 密钥库中密钥的密码。默认值为密钥库密码。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.keystore.secure_key_password 代替。

您不能同时使用此设置和 ssl.keystore.secure_password

xpack.monitoring.exporters.$NAME.ssl.keystore.secure_key_password
(安全) [7.16.0] 在 7.16.0 中已弃用。 密钥库中密钥的密码。默认值为密钥库密码。
xpack.monitoring.exporters.$NAME.ssl.truststore.path

(静态) [7.16.0] 在 7.16.0 中已弃用。 包含应信任的证书的密钥库的路径。它必须是 Java 密钥库 (jks) 或 PKCS#12 文件。

您不能同时使用此设置和 ssl.certificate_authorities

xpack.monitoring.exporters.$NAME.ssl.truststore.type
(静态) [7.16.0] 在 7.16.0 中已弃用。 将此设置为 PKCS12 以指示信任库是 PKCS#12 文件。
xpack.monitoring.exporters.$NAME.ssl.truststore.password

(静态) [7.16.0] 在 7.16.0 中已弃用。 信任库的密码。 [7.17.0] 在 7.17.0 中已弃用。 建议使用 ssl.truststore.secure_password 代替。

您不能同时使用此设置和 ssl.truststore.secure_password

xpack.monitoring.exporters.$NAME.ssl.truststore.secure_password
(安全) [7.16.0] 在 7.16.0 中已弃用。 信任库的密码。