Logstash 参考指南(配置Logstash节点监控)
配置Logstash节点监控
要监控Logstash节点:
确定向何处发送监控数据,这个集群通常称为生产集群,有关典型监控体系结构的示例,请参阅监视如何工作。
要将Logstash可视化为Elastic Stack的一部分(如步骤6所示),请将指标发送到你的生产集群,将指标发送到专用的监控集群将显示监控集群下的Logstash指标。
- 验证生产集群上的
xpack.monitoring.collection.enabled
设置是否true
,如果该设置为false
,在Elasticsearch中禁用监控数据的收集,忽略来自所有其他源的数据。 通过在
logstash.yml
中设置xpack.monitoring.elasticsearch.url
,将你的Logstash节点配置为发送指标,如果X-Pack安全被启用,你还需要为内置的logstash_system
用户指定凭证,有关这些设置的更多信息,请参阅监控设置。xpack.monitoring.elasticsearch.url: ["http://es-prod-node-1:9200", "http://es-prod-node-2:9200"] xpack.monitoring.elasticsearch.username: "logstash_system" xpack.monitoring.elasticsearch.password: "changeme"
- 如果在生产集群上启用了SSL/TLS,则必须通过HTTPS连接,在v5.2.1中,可以将多个Elasticsearch主机指定为数组,也可以将单个主机指定为字符串,如果指定了多个url, Logstash可以对这些生产节点进行轮循请求。
- 如果生产集群上的X-Pack安全性被禁用,你可以省略这些
username
和password
设置。
如果在生产Elasticsearch集群上启用了SSL/TLS,请指定将用于验证集群中节点身份的可信CA证书。
要将CA证书添加到Logstash节点的可信证书,可以使用ca
设置指定PEM编码证书的位置:xpack.monitoring.elasticsearch.ssl.ca: /path/to/ca.crt
或者,你可以使用truststore(包含证书的Java Keystore文件)来配置受信任的证书:
xpack.monitoring.elasticsearch.ssl.truststore.path: /path/to/file xpack.monitoring.elasticsearch.ssl.truststore.password: password
此外,你还可以选择使用keystore(包含证书的Java keystore文件)来设置客户端证书:
xpack.monitoring.elasticsearch.ssl.keystore.path: /path/to/file xpack.monitoring.elasticsearch.ssl.keystore.password: password
将嗅探设置为
true
,以便发现elasticsearch集群的其他节点,默认值为false
。xpack.monitoring.elasticsearch.sniffing: false
- 重新启动你的Logstash节点。
- 要验证X-Pack监控配置,请将web浏览器指向Kibana主机,并从侧导航中选择 Monitoring,Logstash节点报告的指标应该在Logstash部分可见,在启用安全性时,要查看监控仪表盘,必须以具有
kibana_user
和monitoring_user
角色的用户身份登录Kibana。
升级后重新启用Logstash监控
从旧版本的X-Pack升级时,由于安全原因,内置的logstash_system
用户被禁用,要恢复监控,请更改密码并重新启用logstash_system
用户。
Logstash中的监控设置
你可以在logstash.yml
中设置以下xpack.monitoring
设置,以控制如何从Logstash节点收集监控数据,然而,默认设置在大多数情况下工作得最好,有关配置Logstash的更多信息,请参阅logstash.yml。
通用监控设置
xpack.monitoring.enabled
- 默认情况下禁用监控,设置为
true
以启用X-Pack监控。
xpack.monitoring.elasticsearch.url
- 你希望将你的Logstash指标发送到的Elasticsearch实例,这可能是在Logstash配置的
output
部分指定的相同Elasticsearch实例,也可能是不同的实例,这不是专用监控集群的URL,即使你正在使用专用的监控集群,Logstash指标也必须通过你的生产集群进行路由,你可以将单个主机指定为字符串,或将多个主机指定为数组,默认为http://localhost:9200
。
xpack.monitoring.elasticsearch.username
和xpack.monitoring.elasticsearch.password
- 如果你的Elasticsearch受到基本身份验证的保护,那么这些设置将提供Logstash实例用来验证运输监控数据的用户名和密码。
监控收集设置
xpack.monitoring.collection.interval
- 控制数据样本在Logstash端收集和发送的频率,默认为
10s
,如果你修改了收集间隔,将kibana.yml
中的xpack.monitoring.min_interval_seconds
选项设置为相同的值。
X-Pack监控的TLS/SSL设置
你可以配置以下传输层安全性(TLS)或安全套接字层(SSL)设置,有关更多信息,请参见配置Logstash 监控凭证。
xpack.monitoring.elasticsearch.ssl.ca
- 可选设置,使你能够为你的Elasticsearch实例的证书颁发机构指定到
.pem
文件的路径。
xpack.monitoring.elasticsearch.ssl.truststore.path
- 提供到Java keystore(JKS)的路径以验证服务器证书的可选设置。
xpack.monitoring.elasticsearch.ssl.truststore.password
- 提供truststore密码的可选设置。
xpack.monitoring.elasticsearch.ssl.keystore.path
- 提供到Java keystore(JKS)的路径以验证客户端证书的可选设置。
xpack.monitoring.elasticsearch.ssl.keystore.password
- 提供keystore密码的可选设置。