dremio LivenessService 服务简单说明
LivenessService是dremio backend 提供的一个http 服务,提供了live (存活)以及metrics服务
此服务在dremio 集群中的每个节点上都会运行,以下是一些说明
一些特点
- 服务使用了jetty 与官方dac 的backend 是不太一样,默认使用了jersey 框架
- 默认基于本地回环地址bind同时bind 的端口是随机的,可以配置
- 配置选项,如下
通过如下的配置可以进行端口调试
services.web-admin.host: "127.0.0.1"
services.web-admin.port: 9090
- 提供了live 以及metrics 能力
对于live 目前分为yarn 以及非yarn 模式的,yarn的包含了YarnContainerHealthMonitor以及ClasspathHealthMonitor
对于非yarn的主要是TaskPoolInitializer(具体的实现是对于TaskPool的check,ce 运行不是使用的oss 版的实现,而是SlicingTaskPool) - 对于yarn 调度会以来live endpoint 进行执行的状态监控(watchdog)
- 集群中的每个节点都会运行这个服务,可以方便监控
- metrics 基于了DropwizardExports 直接暴露的是prometheus 的metrics,对于监控基于此也可以直接使用,可以不使用官方而外提供的一个promehtues metrics 服务
说明
以上是一些简单说明,官方对于dremio metrics 监控也有一个简单的说明
参考资料
dac/backend/src/main/java/com/dremio/dac/server/LivenessService.java
https://docs.dremio.com/current/admin/telemetry