配置 Elasticsearch 数据源
Grafana 内置支持 Elasticsearch。您可以创建各种查询来可视化存储在 Elasticsearch 中的日志或指标,并使用存储在 Elasticsearch 中的日志事件注释图表。
有关如何在 Grafana 中添加数据源的说明,请参阅管理文档。
只有具有组织 administrator
角色的用户才能添加数据源。管理员还可以使用 Grafana 的置备系统通过 YAML 配置数据源。
配置权限
启用 Elasticsearch 安全功能后,必须配置必要的集群权限以确保无缝操作。以下是所需权限及其用途列表
- monitor - 用于检索连接的 Elasticsearch 实例的版本信息。
- view_index_metadata - 访问索引映射定义所需。
- read - 授予对索引执行搜索和检索操作的能力。这对于从集群查询和提取数据至关重要。
添加数据源
要添加 Elasticsearch 数据源,请完成以下步骤
- 点击左侧菜单中的 Connections(连接)。
- 在 Connections(连接)下,点击 Add new connection(添加新连接)。
- 在搜索栏中输入
Elasticsearch
。 - 在 Data source(数据源)部分下点击 Elasticsearch。
- 点击右上角的 Add new data source(添加新数据源)。
您将被带到 Settings(设置)选项卡,您将在其中设置 Elasticsearch 配置。
配置选项
以下是 Elasticsearch 的配置选项列表。
第一个配置选项是连接名称
Name - 数据源名称。这是您在面板和查询中引用数据源的方式。示例:elastic-1、elasticsearch_metrics。
Default - 切换此选项以将其选为默认数据源选项。当您转到仪表盘面板或探索时,这将是默认选定的数据源。
连接
通过指定 URL 连接 Elasticsearch 数据源。
- URL - 您的 Elasticsearch 服务器的 URL。如果您的 Elasticsearch 服务器是本地的,请使用
https://:9200
。如果它位于网络内的服务器上,则这是您运行 Elasticsearch 的 URL 和端口。示例:http://elasticsearch.example.orgname:9200
。
认证
在认证部分有几种认证方法可供选择。从下拉菜单中选择以下认证方法之一。
Basic authentication(基本认证) - 最常见的认证方法。使用您的
data source
用户名和data source
密码进行连接。Forward OAuth identity(转发 OAuth 身份) - 转发查询数据源的用户的 OAuth 访问令牌(如果可用,还包括 OIDC ID 令牌)。
No authentication(无认证) - 使数据源无需认证即可用。Grafana 建议使用某种类型的认证方法。
TLS 设置
注意
使用 TLS (Transport Layer Security) 为使用 Elasticsearch 时提供额外的安全层。有关使用 Elasticsearch 设置 TLS 加密的信息,请参阅配置 TLS。您必须在 Grafana 中设置这些选项之前将 TLS 设置添加到您的 Elasticsearch 配置文件中。
Add self-signed certificate(添加自签名证书) - 勾选此框以使用 CA 证书进行认证。按照 CA(证书颁发机构)的说明下载证书文件。验证自签名 TLS 证书所需。
TLS client authentication(TLS 客户端认证) - 勾选此框以使用 TLS 客户端进行认证,其中服务器对客户端进行认证。添加
Server name
(服务器名称)、Client certificate
(客户端证书)和Client key
(客户端密钥)。ServerName(服务器名称)用于验证返回证书上的主机名。Client certificate(客户端证书)可以由证书颁发机构 (CA) 生成,也可以是自签名的。Client key(客户端密钥)也可以由证书颁发机构 (CA) 生成,也可以是自签名的。客户端密钥对客户端和服务器之间的数据进行加密。Skip TLS certificate validation(跳过 TLS 证书验证) - 勾选此框以绕过 TLS 证书验证。除非绝对必要或用于测试目的,否则不建议跳过 TLS 证书验证。
HTTP 头
点击 + Add header(添加头)以添加一个或多个 HTTP 头。HTTP 头传递有关请求/响应的附加上下文和元数据。
Header(头) - 添加自定义头。这允许根据您的 Elasticsearch 实例的需求传递自定义头。
Value(值) - 头的值。
附加设置
附加设置是可选设置,可以配置以更好地控制您的数据源。
高级 HTTP 设置
Allowed cookies(允许的 Cookie) - 按名称指定应转发到数据源的 Cookie。Grafana 代理默认删除所有转发的 Cookie。
Timeout(超时) - HTTP 请求超时。此值必须以秒为单位。没有默认值,因此此设置由您决定。
Elasticsearch 详细信息
以下设置特定于 Elasticsearch 数据源。
Index name(索引名称) - 使用索引设置指定
time field
(时间字段)的默认值和 Elasticsearch 索引的名称。您可以使用时间模式,例如[logstash-]YYYY.MM.DD
,或使用通配符表示索引名称。指定时间模式时,模式的固定部分应包含在方括号中。Pattern(模式) - 如果在索引名称中使用模式,请选择匹配的模式。选项包括
- 无模式
- 每小时
- 每天
- 每周
- 每月
- 每年
仅当您在“索引名称”字段中指定了时间模式时才选择模式选项。
Time field name(时间字段名称) - 时间字段的名称。默认值为 @timestamp。您可以输入不同的名称。
Max concurrent shard requests(最大并发分片请求) - 设置同时查询的分片数量。默认值为
5
。有关分片的更多信息,请参阅Elasticsearch 的文档。Min time interval(最小时间间隔) - 定义自动分组时间间隔的下限。此值必须格式化为后跟有效时间标识符的数字
标识符 描述 y
年 M
月 w
周 d
天 h
小时 m
分钟 s
秒 ms
毫秒
我们建议将此值设置为与您的 Elasticsearch 写入频率匹配。例如,如果 Elasticsearch 每分钟写入数据,则将其设置为 1m
。
您也可以在仪表盘面板的数据源选项中覆盖此设置。默认值为 10s
。
X-Pack enabled(启用 X-Pack) - 切换此选项以启用特定于
X-Pack
的功能和选项,这为查询编辑器提供了额外的聚合,例如Rate
和Top Metrics
。Include frozen indices(包括冻结索引) - 当
X-Pack enabled
设置激活时,打开此选项。在搜索中包括冻结索引。您可以配置 Grafana 以在执行搜索请求时包括冻结索引。
注意
自 v7.14 起,Elasticsearch 中已弃用冻结索引。
日志
在本节中,您可以配置数据源用于日志消息和日志级别的字段。
Message field name:(消息字段名称:) - 从默认源获取实际的日志消息。
Level field name:(级别字段名称:) - 包含日志级别/严重性信息的字段名称。指定级别标签时,将使用此标签的值来确定日志级别并相应地更新每行日志的颜色。如果日志没有指定级别标签,我们将尝试确定其内容是否匹配任何支持的表达式。第一个匹配始终决定日志级别。如果 Grafana 无法推断日志级别字段,则会以未知日志级别进行可视化。
数据链接
数据链接从指定字段创建链接,可在“探索”的日志视图中访问。您可以点击 + Add(添加)添加多个数据链接。
每个数据链接配置包括
Field(字段) - 设置数据链接使用的字段名称。
URL/query(URL/查询) - 如果链接是外部链接,设置完整的链接 URL。如果链接是内部链接,此输入作为目标数据源的查询。
在这两种情况下,您都可以使用${__value.raw }
宏插入字段中的值。URL Label(URL 标签)(可选) - 为链接设置自定义显示标签。链接标签默认为完整的外部 URL 或链接的内部数据源名称,并被此设置覆盖。
Internal link(内部链接) - 打开此选项以设置内部链接。对于内部链接,您可以使用数据源选择器选择目标数据源。这仅支持追踪数据源。
私有数据源连接 (PDC) 和 Elasticsearch
使用私有数据源连接 (PDC) 连接和查询安全网络内的数据,而无需向 Grafana Cloud 开放网络入站流量。有关 PDC 工作原理的更多信息,请参阅私有数据源连接;有关设置 PDC 连接的步骤,请参阅配置 Grafana 私有数据源连接 (PDC)。
- Private data source connect(私有数据源连接) - 点击框中以从下拉菜单中设置默认的 PDC 连接或创建新连接。
配置好 Elasticsearch 数据源选项后,点击底部的 Save & test(保存并测试)以测试您的数据源连接。您也可以点击 Delete(删除)移除连接。