- Metricbeat 参考文档其他版本
- Metricbeat 概述
- 快速入门:安装和配置
- 设置并运行
- 升级 Metricbeat
- Metricbeat 的工作原理
- 配置
- 模块
- 常规设置
- 项目路径
- 配置文件加载
- 输出
- Kerberos
- SSL
- 索引生命周期管理 (ILM)
- Elasticsearch 索引模板
- Kibana 端点
- Kibana 仪表板
- 处理器
- 定义处理器
- add_cloud_metadata
- add_cloudfoundry_metadata
- add_docker_metadata
- add_fields
- add_host_metadata
- add_id
- add_kubernetes_metadata
- add_labels
- add_locale
- add_network_direction
- add_nomad_metadata
- add_observer_metadata
- add_process_metadata
- add_tags
- append
- community_id
- convert
- copy_fields
- decode_base64_field
- decode_duration
- decode_json_fields
- decode_xml
- decode_xml_wineventlog
- decompress_gzip_field
- detect_mime_type
- dissect
- dns
- drop_event
- drop_fields
- extract_array
- fingerprint
- include_fields
- move_fields
- rate_limit
- registered_domain
- rename
- replace
- script
- syslog
- translate_ldap_attribute
- translate_sid
- truncate_fields
- urldecode
- 自动发现
- 内部队列
- 日志
- HTTP 端点
- 正则表达式支持
- 检测
- 功能标志
- metricbeat.reference.yml
- 操作指南
- 模块
- ActiveMQ 模块
- Aerospike 模块
- Airflow 模块
- Apache 模块
- AWS 模块
- AWS Fargate 模块
- Azure 模块
- Beat 模块
- Ceph 模块
- Cloudfoundry 模块
- CockroachDB 模块
- Consul 模块
- Containerd 模块
- Coredns 模块
- Couchbase 模块
- CouchDB 模块
- Docker 模块
- Dropwizard 模块
- Elasticsearch 模块
- Elasticsearch ccr 指标集
- Elasticsearch cluster_stats 指标集
- Elasticsearch enrich 指标集
- Elasticsearch index 指标集
- Elasticsearch index_recovery 指标集
- Elasticsearch index_summary 指标集
- Elasticsearch ingest_pipeline 指标集
- Elasticsearch ml_job 指标集
- Elasticsearch node 指标集
- Elasticsearch node_stats 指标集
- Elasticsearch pending_tasks 指标集
- Elasticsearch shard 指标集
- Enterprise Search 模块
- Envoyproxy 模块
- Etcd 模块
- Google Cloud Platform 模块
- Google Cloud Platform billing 指标集
- Google Cloud Platform carbon 指标集
- Google Cloud Platform compute 指标集
- Google Cloud Platform dataproc 指标集
- Google Cloud Platform firestore 指标集
- Google Cloud Platform gke 指标集
- Google Cloud Platform loadbalancing 指标集
- Google Cloud Platform metrics 指标集
- Google Cloud Platform pubsub 指标集
- Google Cloud Platform storage 指标集
- Golang 模块
- Graphite 模块
- HAProxy 模块
- HTTP 模块
- IBM MQ 模块
- IIS 模块
- Istio 模块
- Jolokia 模块
- Kafka 模块
- Kibana 模块
- Kubernetes 模块
- Kubernetes apiserver 指标集
- Kubernetes container 指标集
- Kubernetes controllermanager 指标集
- Kubernetes event 指标集
- Kubernetes node 指标集
- Kubernetes pod 指标集
- Kubernetes proxy 指标集
- Kubernetes scheduler 指标集
- Kubernetes state_container 指标集
- Kubernetes state_cronjob 指标集
- Kubernetes state_daemonset 指标集
- Kubernetes state_deployment 指标集
- Kubernetes state_job 指标集
- Kubernetes state_node 指标集
- Kubernetes state_persistentvolumeclaim 指标集
- Kubernetes state_pod 指标集
- Kubernetes state_replicaset 指标集
- Kubernetes state_resourcequota 指标集
- Kubernetes state_service 指标集
- Kubernetes state_statefulset 指标集
- Kubernetes state_storageclass 指标集
- Kubernetes system 指标集
- Kubernetes volume 指标集
- KVM 模块
- Linux 模块
- Logstash 模块
- Memcached 模块
- Cisco Meraki 模块
- MongoDB 模块
- MSSQL 模块
- Munin 模块
- MySQL 模块
- NATS 模块
- Nginx 模块
- Openmetrics 模块
- Oracle 模块
- Panw 模块
- PHP_FPM 模块
- PostgreSQL 模块
- Prometheus 模块
- RabbitMQ 模块
- Redis 模块
- Redis Enterprise 模块
- SQL 模块
- Stan 模块
- Statsd 模块
- SyncGateway 模块
- System 模块
- System core 指标集
- System cpu 指标集
- System diskio 指标集
- System entropy 指标集
- System filesystem 指标集
- System fsstat 指标集
- System load 指标集
- System memory 指标集
- System network 指标集
- System network_summary 指标集
- System process 指标集
- System process_summary 指标集
- System raid 指标集
- System service 指标集
- System socket 指标集
- System socket_summary 指标集
- System uptime 指标集
- System users 指标集
- Tomcat 模块
- Traefik 模块
- uWSGI 模块
- vSphere 模块
- Windows 模块
- ZooKeeper 模块
- 导出的字段
- ActiveMQ 字段
- Aerospike 字段
- Airflow 字段
- Apache 字段
- AWS 字段
- AWS Fargate 字段
- Azure 字段
- Beat 字段
- Beat 字段
- Ceph 字段
- 云提供商元数据字段
- Cloudfoundry 字段
- CockroachDB 字段
- 通用字段
- Consul 字段
- Containerd 字段
- Coredns 字段
- Couchbase 字段
- CouchDB 字段
- Docker 字段
- Docker 字段
- Dropwizard 字段
- ECS 字段
- Elasticsearch 字段
- Enterprise Search 字段
- Envoyproxy 字段
- Etcd 字段
- Google Cloud Platform 字段
- Golang 字段
- Graphite 字段
- HAProxy 字段
- 主机字段
- HTTP 字段
- IBM MQ 字段
- IIS 字段
- Istio 字段
- Jolokia 字段
- Jolokia Discovery 自动发现提供程序字段
- Kafka 字段
- Kibana 字段
- Kubernetes 字段
- Kubernetes 字段
- KVM 字段
- Linux 字段
- Logstash 字段
- Memcached 字段
- MongoDB 字段
- MSSQL 字段
- Munin 字段
- MySQL 字段
- NATS 字段
- Nginx 字段
- Openmetrics 字段
- Oracle 字段
- Panw 字段
- PHP_FPM 字段
- PostgreSQL 字段
- 进程字段
- Prometheus 字段
- Prometheus 类型指标字段
- RabbitMQ 字段
- Redis 字段
- Redis Enterprise 字段
- SQL 字段
- Stan 字段
- Statsd 字段
- SyncGateway 字段
- 系统字段
- Tomcat 字段
- Traefik 字段
- uWSGI 字段
- vSphere 字段
- Windows 字段
- ZooKeeper 字段
- 监控
- 安全
- 故障排除
- 获取帮助
- 调试
- 了解已记录的指标
- 常见问题
- FreeBSD 上出现“open /compat/linux/proc: no such file or directory”错误
- Metricbeat 为您未配置的接口收集系统指标
- Metricbeat 使用过多带宽
- 加载配置文件时出错
- 发现意外或未知字符
- Logstash 连接不起作用
- 发布到 Logstash 失败,并显示“connection reset by peer”消息
- @metadata 在 Logstash 中丢失
- 不确定是使用 Logstash 还是 Beats
- SSL 客户端无法连接到 Logstash
- 监控 UI 显示的 Beats 比预期的少
- 仪表板无法找到索引模式
- 由于 MADV 设置导致 RSS 内存使用量过高
- 为 Beats 做出贡献
使用 Logstash 的安全通信
编辑使用 Logstash 的安全通信
编辑您可以使用 SSL 双向身份验证来保护 Metricbeat 和 Logstash 之间的连接。这可以确保 Metricbeat 仅将加密数据发送到受信任的 Logstash 服务器,并且 Logstash 服务器仅接收来自受信任的 Metricbeat 客户端的数据。
要使用 SSL 双向身份验证
-
创建一个证书颁发机构 (CA),并使用它来签署您计划用于 Metricbeat 和 Logstash 的证书。创建正确的 SSL/TLS 基础设施不在本文档的范围内。有许多在线资源可用于描述如何创建证书。
如果您正在使用安全功能,可以使用 elasticsearch-certutil 工具生成证书。
-
配置 Metricbeat 以使用 SSL。在
metricbeat.yml
配置文件中,在ssl
下指定以下设置-
certificate_authorities
: 配置 Metricbeat 以信任由指定 CA 签名的任何证书。如果certificate_authorities
为空或未设置,则使用主机系统的受信任证书颁发机构。 -
certificate
和key
: 指定 Metricbeat 用于向 Logstash 进行身份验证的证书和密钥。例如
output.logstash: hosts: ["logs.mycompany.com:5044"] ssl.certificate_authorities: ["/etc/ca.crt"] ssl.certificate: "/etc/client.crt" ssl.key: "/etc/client.key"
有关这些配置选项的更多信息,请参阅 SSL。
-
-
配置 Logstash 以使用 SSL。在 Logstash 配置文件中,为 Logstash 的 Beats 输入插件 指定以下设置
-
ssl
: 当设置为 true 时,启用 Logstash 以使用 SSL/TLS。 -
ssl_certificate_authorities
: 配置 Logstash 以信任由指定 CA 签名的任何证书。 -
ssl_certificate
和ssl_key
: 指定 Logstash 用于向客户端进行身份验证的证书和密钥。 -
ssl_verify_mode
: 指定 Logstash 服务器是否根据 CA 验证客户端证书。您需要指定peer
或force_peer
,以便服务器请求证书并对其进行验证。如果指定force_peer
,并且 Metricbeat 未提供证书,则 Logstash 连接将被关闭。如果您选择不使用 certutil,则如果存在扩展密钥用法扩展,您获得的证书必须允许clientAuth
和serverAuth
。例如
input { beats { port => 5044 ssl => true ssl_certificate_authorities => ["/etc/ca.crt"] ssl_certificate => "/etc/server.crt" ssl_key => "/etc/server.key" ssl_verify_mode => "force_peer" } }
有关这些选项的更多信息,请参阅 Beats 输入插件的文档。
-
验证 Logstash 服务器的证书
编辑在运行 Metricbeat 之前,您应该验证 Logstash 服务器的证书。您可以使用 curl
来验证证书,即使用于与 Logstash 通信的协议不是基于 HTTP 的。例如
curl -v --cacert ca.crt https://logs.mycompany.com:5044
如果测试成功,您将收到一个空响应错误
* Rebuilt URL to: https://logs.mycompany.com:5044/ * Trying 192.168.99.100... * Connected to logs.mycompany.com (192.168.99.100) port 5044 (#0) * TLS 1.2 connection using TLS_DHE_RSA_WITH_AES_256_CBC_SHA * Server certificate: logs.mycompany.com * Server certificate: mycompany.com > GET / HTTP/1.1 > Host: logs.mycompany.com:5044 > User-Agent: curl/7.43.0 > Accept: */* > * Empty reply from server * Connection #0 to host logs.mycompany.com left intact curl: (52) Empty reply from server
以下示例使用 IP 地址而不是主机名来验证证书
curl -v --cacert ca.crt https://192.168.99.100:5044
此测试的验证失败,因为该证书对于指定的 IP 地址无效。它仅对证书的 Subject 字段中出现的主机名 logs.mycompany.com
有效。
* Rebuilt URL to: https://192.168.99.100:5044/ * Trying 192.168.99.100... * Connected to 192.168.99.100 (192.168.99.100) port 5044 (#0) * WARNING: using IP address, SNI is being disabled by the OS. * SSL: certificate verification failed (result: 5) * Closing connection 0 curl: (51) SSL: certificate verification failed (result: 5)
请参阅 故障排除文档,了解有关解决此问题的信息。
测试 Metricbeat 到 Logstash 的连接
编辑如果 Metricbeat 作为服务运行,请先停止该服务。然后通过在前台运行 Metricbeat 来测试您的设置,这样您就可以快速查看发生的任何错误
metricbeat -c metricbeat.yml -e -v
任何错误都将打印到控制台。请参阅 故障排除文档,了解有关解决常见错误的信息。
On this page