开启并使用Fluid JindoRuntime FUSE客户端监控

Fluid支持对ACK集群中的各个JindoRuntime(JindoCache分布式缓存引擎)的监控指标进行采集,并提供开箱即用的JindoRuntime监控大盘。可被采集的监控指标包括缓存引擎服务端指标和FUSE客户端指标。出于性能考虑,默认配置下JindoRuntime FUSE客户端指标不对外暴露,因此无法在JindoRuntime监控大盘中查看到FUSE客户端的实时指标数据。本文介绍如何开启Fluid JindoRuntime FUSE客户端指标采集功能并在Fluid JindoRuntime监控大盘中查看监控数据。

前提条件

  • 已为ACK集群或ACK Serverless集群开启阿里云Prometheus监控。具体操作,请参见使用阿里云Prometheus监控

  • 已安装云原生AI套件并部署ack-fluid组件,且ack-fluid版本为1.0.11及以上。具体操作,请参见部署云原生AI套件

    重要

    若您已安装开源Fluid,请卸载后再部署ack-fluid组件。

步骤一:接入Fluid

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入中心,然后在人工智能区域单击Fluid卡片。

  3. Fluid页面的选择容器服务集群区域,选择目标集群。若显示已经安装Fluid组件,则无需再重复安装。

  4. 配置信息区域配置参数,然后单击确定,完成组件接入。

    配置项

    说明

    接入名称(非必填)

    当前Fluid监控唯一名称,可留空。

    metrics采集间隔(秒)

    监控数据采集时间间隔。

  5. 已接入的组件可在ARMS控制台的接入管理页面查看。

    1. 登录ARMS控制台

    2. 在左侧导航栏单击接入管理,然后单击已接入组件页签,选择单击Fluid组件的卡片。

    3. 环境列表页签下,单击操作列的查看详情,即可查看目标集群Fluid的组件、大盘告警规则等信息。

接入中心的更多信息,请参见接入指南

步骤二:配置JindoRuntime FUSE客户端的监控指标暴露与抓取策略

部署JindoRuntime时,可以通过spec.fuse.metrics.enabledspec.fuse.metrics.scrapeTarget参数配置FUSE客户端的监控指标暴露功能和指标抓取策略。示例代码如下所示。

apiVersion: data.fluid.io/v1alpha1
kind: JindoRuntime
metadata:
  name: hadoop
spec:
  replicas: 2
  fuse:
    metrics:
      enabled: true # 该参数设置为true,表示为JindoRuntime FUSE客户端打开指标暴露功能。
      scrapeTarget: All # JindoRuntime FUSE客户端指标的抓取策略。
  tieredstore:
    levels:
      - mediumtype: MEM
        path: /dev/shm
        volumeType: emptyDir
        quota: 2Gi
        high: "0.99"
        low: "0.95"

spec.fuse.metrics.enabledspec.fuse.metrics.scrapeTarget的参数说明如下。

说明

如需查看JindoRuntime中完整的参数指标解释,请参考JindoFS加速OSS文件访问

参数

说明

默认值

spec.fuse.metrics.enabled

该指标声明了是否为JindoRuntime FUSE客户端打开指标暴露功能。

如果设置了spec.fuse.metrics.enabled: true,并且没有通过spec.fuse.args手动指定用于监听metrics请求的特定端口号(例如通过添加-ometrics_port=8080参数),那么Fluid将为JindoRuntime FUSE客户端自动分配一个可用的端口,并将其配置给JindoRuntime FUSE客户端用于对外提供metrics服务。

false

spec.fuse.metrics.scrapeTarget

该指标声明了JindoRuntime FUSE客户端指标的抓取策略。目前支持以下4种抓取策略:

重要

请谨慎评估将spec.fuse.metrics.scrapeTarget设置为SidecarAll。因为如果在Serverless环境下通过Sidecar挂载模式使用Fluid,每一个应用Pod均会启动一个FUSE Sidecar容器为主业务容器提供数据访问服务。如果同时存在的应用Pod数量过多,抓取所有FUSE Sidecar容器的指标可能造成较大的开销,并对Prometheus实例造成较大的压力。

  • None:表示不抓取任何JIndoRuntime FUSE客户端指标。

  • MountPod:表示仅抓取MountPod挂载模式(非Serverless环境)下创建的JindoRuntime FUSE Pod暴露的指标。

  • Sidecar:表示仅抓取Sidecar挂载模式(Serverless环境)下创建的JindoRuntime FUSE Sidecar容器暴露的指标。

  • All:表示同时抓取MountPod挂载模式和Sidecar挂载模式下FUSE客户端的指标。

None

步骤三:查看Fluid JindoRuntime监控大盘

  1. 登录容器服务管理控制台,在左侧导航栏单击集群列表

  2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择运维管理 > Prometheus 监控

  3. Prometheus 监控页面,单击其他页签,然后选择Fluid JindoRuntime Dashboard,查看Fluid控制面监控大盘的详情数据。

    • 如果开启了MountPod挂载模式下FUSE客户端的指标抓取(scrapeTarget设置为MountPodAll),那么可在FUSE Metrics (via CSI)(FUSE Pod客户端指标)区域查看FUSE客户端指标。

    • 如果开启了Sidecar挂载模式下FUSE客户端的指标抓取(scrapeTarget设置为SidecarAll),那么可在FUSE Metrics (via Sidecar)(FUSE Sidecar容器客户端指标)区域查看FUSE客户端指标。

    关于Fluid JindoRuntime Dashboard的详细大盘数据和监控指标说明,请参见Fluid监控大盘参数说明监控指标说明