菜单
开源

Pyroscope 查询调度器

查询调度器是一个无状态组件,负责维护待执行的查询队列,并将工作负载分配给可用的 Querier

使用 Query-frontend 时,查询调度器是必需的组件。

Query-scheduler architecture

以下流程描述了查询在 Pyroscope 集群中的传递方式

  1. Query-frontend 接收查询,然后对其进行拆分和分片,或从缓存中提供服务。
  2. Query-frontend 将查询排队到查询调度器中。
  3. 查询调度器将查询存储在内存队列中,等待 Querier 处理。
  4. Querier 接收并执行查询。
  5. Querier 将结果发送回 Query-frontend,后者再将结果转发给客户端。

使用查询调度器的优势

查询调度器支持 Query-frontend 的伸缩。要了解更多信息,请参阅 Mimir Query Frontend 文档。

配置

要使用查询调度器,Query-frontend 和 Querier 需要发现查询调度器实例的地址。查询调度器使用基于 Ring 的服务发现来发布自身,这通过 memberlist 配置进行设置。

操作注意事项

为了高可用性,运行两个查询调度器副本。