使用内部收集器发送监控数据
编辑使用内部收集器发送监控数据编辑
使用内部收集器将 Beats 监控数据直接发送到您的监控集群。或者作为内部收集的替代方案,您可以使用 使用 Metricbeat 收集。使用内部收集而不是 Metricbeat 的好处是您需要安装和维护的软件更少。
- 创建一个具有适当权限的 API 密钥或用户,以将系统级监控数据发送到 Elasticsearch。例如,您可以使用内置的
beats_system
用户,或者将内置的beats_system
角色分配给另一个用户。有关所需权限的更多信息,请参见 创建监控用户。有关如何使用 API 密钥的更多信息,请参见 使用 API 密钥授予访问权限. -
在 Packetbeat 配置文件中添加
monitoring
设置。如果您配置了 Elasticsearch 输出并且想要将 Packetbeat 监控事件发送到同一个 Elasticsearch 集群,请指定以下最小配置monitoring: enabled: true elasticsearch: api_key: id:api_key username: beats_system password: somepassword
如果您想将监控事件发送到 Elastic Cloud 监控集群,您可以使用两个更简单的设置。当定义时,这些设置会覆盖配置中其他部分的设置。例如
monitoring: enabled: true cloud.id: 'staging:dXMtZWFzdC0xLmF3cy5mb3VuZC5pbyRjZWM2ZjI2MWE3NGJmMjRjZTMzYmI4ODExYjg0Mjk0ZiRjNmMyY2E2ZDA0MjI0OWFmMGNjN2Q3YTllOTYyNTc0Mw==' cloud.auth: 'elastic:{pwd}'
如果您配置了其他输出,例如 Logstash,或者您想将 Packetbeat 监控事件发送到一个单独的 Elasticsearch 集群(称为监控集群),则必须指定其他配置选项。例如
monitoring: enabled: true cluster_uuid: PRODUCTION_ES_CLUSTER_UUID elasticsearch: hosts: ["https://example.com:9200", "https://example2.com:9200"] api_key: id:api_key username: beats_system password: somepassword
此设置标识在 Stack 监控 UI 中显示此 Packetbeat 实例的监控数据的 Elasticsearch 集群。要获取集群的
cluster_uuid
,请对该生产集群调用GET /
API。此设置标识作为监控集群一部分的 Elasticsearch 节点的主机和端口号。
指定
api_key
或username
/password
中的一个。如果您想使用 PKI 身份验证将监控事件发送到 Elasticsearch,则必须指定一组不同的配置选项。例如
monitoring: enabled: true cluster_uuid: PRODUCTION_ES_CLUSTER_UUID elasticsearch: hosts: ["https://example.com:9200", "https://example2.com:9200"] username: "" ssl.certificate_authorities: ["/etc/pki/root/ca.pem"] ssl.certificate: "/etc/pki/client/cert.pem" ssl.key: "/etc/pki/client/cert.key"
您必须显式地将
username
指定为""
,以便使用来自客户端证书 (CN
) 的用户名。有关 SSL 设置的更多信息,请参见 SSL。 - 启动 Packetbeat。
- 在 Kibana 中查看监控数据.