菜单
开源

(可选)Grafana米密尔统治者

统治者是一个可选组件,评估PromQL表达式中定义记录和报警规则。每个租户有一组记录和报警规则,可以把这些规则分成名称空间。

运作模式

统治者支持两种不同的规则评估模式:

内部

这是默认的模式。统治者内部运行一个查询器和分配器,评估记录和报警规则统治者过程本身。评估规则,统治者直接连接到ingesters store-gateways,任何产生的系列ingesters写道。

的配置内置查询器和分配器使用各自的配置参数:

请注意:当使用这种模式,没有使用查询加速技术的评价非常高基数比评价区间查询可能需要更长的时间,最终导致丢失的数据点的评估记录规则。

建筑Grafana Mimir’ s统治者组件内部模式

远程

在这种模式下query-frontend统治者代表规则的评估。当启用时,统治者利用所有查询受雇于query-frontend加速技术,如查询切分。启用远程操作模式,设置-ruler.query-frontend.addressCLI国旗或其各自的YAML配置参数的统治者。统治者之间的沟通和建立query-frontend gRPC,所以你可以利用客户端负载平衡通过加前缀query-frontend地址URLdns: / /

建筑Grafana Mimir’ s统治者组件在远程模式

记录规则

统治者评估的表达式记录规则定期将结果写回ingesters。

报警规则

统治者评估表达式报警规则定期,如果结果包括任何系列,警戒变得活跃。如果一个报警规则定义时间,它进入等待(等待)状态。警报已经活跃了整个时间,它进入发射(发射)状态。然后通知Alertmanagers统治者的发射(发射)警报。

配置Alertmanagers的地址-ruler.alertmanager-url国旗。这个标志DNS服务发现支持的格式。关于DNS服务发现的更多信息,请参考支持发现模式

如果您正在使用米密尔的Alertmanager,地址指向Alertmanager的API。您可以配置Alertmanager的API通过前缀-http.alertmanager-http-prefix默认为国旗/ alertmanager。例如,如果Alertmanager听http://mimir-alertmanager.namespace.svc.cluster.localAPI并使用缺省前缀,集-ruler.alertmanager-urlhttp://mimir-alertmanager.namespace.svc.cluster.local/alertmanager

联邦规则组

联邦规则组是一个非空的规则组source_tenants

source_tenants字段允许聚合来自多个租户的数据而评估规则组。组中的每个规则的表达式将对所有租户的数据评估source_tenants。如果source_tenants为空或省略,那么的租户集团将被视为创建source_tenant

下面是一个例子的联邦规则组的样子:

名称:MyGroupName source_tenants:(“租户”、“tenant-b”)规则:-记录:求和:度量expr: sum(公制)

在这个例子中MyGroupName规则将被评估租户tenant-b租户。

联邦规则组中跳过默认评价。这个特性取决于跨租户查询联邦特性。使联邦规则集-ruler.tenant-federation.enabled = true-tenant-federation.enabled = trueCLI旗帜(或各自的YAML配置选项)。

在评估查询限制适用于单一租户也适用于规则组中的每个查询。例如,如果租户有一个联邦规则组source_tenants (tenant-b, tenant-c):,然后查询限制tenant-btenant-c将被应用。如果超出这些限制,整个评估将会失败。没有部分结果将被保存。同样的“不”部分结果保证适用于查询失败的其他原因(如摄取不可用)。

时间序列中使用的评估将联邦规则__tenant_id__标签,类似于它是如何出现在系列与跨租户查询返回联盟。

请注意:联邦规则组允许租户来自多个源的数据写入单个目的地的房客。这使得现有租户的数据不太清楚的分离。例如,租户联邦规则组,聚合结束了吗tenant-b的数据(如。总和(metric_b)),结果写回租户存储(例如度量总结:metric_b)。现在的一部分tenant-b的数据复制到缓冲区租户(尽管聚合)。有这个配置访问控制层时,在米密尔面前,当启用联合规则通过-ruler.tenant-federation.enabled

分片

统治者支持多租户和水平可伸缩性。为了实现水平可伸缩性,统治者碎片的执行规则的规则组。形成自己的统治者复制品散列环存储在KV商店将执行的工作规则。

配置统治者的散列环,请参考配置散列环

报警和记录管理规定

有多个方法来管理报警和记录的规则。

通过mimirtoolCLI工具

mimirtool规则命令为产品毛羽提供实用子命令,格式,和上传规则Grafana米密尔。有关更多信息,请参考mimirtool规则

通过grafana /米密尔/操作/ mimir-rules-actionGitHub行动

GitHub的行动mimir-rules-action包装的功能mimirtool规则。有关更多信息,请参考文档的行动

通过HTTP配置API

统治者HTTP配置API允许租户创建、更新和删除规则组。端点和示例请求的完整列表,请参考统治者

状态

统治者使用通过后台配置-ruler-storage.backend。统治者支持以下后端:

本地存储

当地的存储后端读取普罗米修斯记录规则从本地文件系统。

注意:本地存储是一个只读的后端不支持通过规则的创建和删除配置API

当所有的统治者有相同的规则文件,本地存储支持统治者分片。促进Kubernetes分片,山Kubernetes ConfigMap每个统治者吊舱。

下面的示例显示了一个本地存储定义:

-ruler-storage.backend =当地-ruler-storage。当地的。directory=/tmp/rules

统治者寻找租户规则/ tmp /规定/ <承租者ID >目录中。统治者需要的规则文件普罗米修斯格式