Alluxio
ProductsLanguageHome
  • Alluxio概览
  • 用户指南
    • 快速上手指南
    • 架构
    • FAQ
    • 作业服务器
    • 应用场景
  • 核心功能
    • 缓存
    • 统一命名空间
  • 部署 Alluxio
    • 在Kubernetes上部署Alluxio
    • 本地运行Alluxio
    • 在集群上独立运行Alluxio
    • 在Docker上运行Alluxio
    • 在具有HA的群集上部署Alluxio
    • 使用Docker部署AlluxioFuse加速深度学习训练(试验)
    • 基本要求
  • 云源生
    • Tencent EMR
  • 计算应用
    • Apache Spark
    • Presto
    • Spark on Kubernetes
    • Apache Flink
    • Apache Hadoop MapReduce
    • Presto on Iceberg (Experimental)
    • Trino
    • Apache Hive
    • 深度学习框架
    • Tensorflow
  • 底层存储系统
    • Alluxio集成Amazon AWS S3作为底层存储
    • Alluxio集成GCS作为底层存储
    • Alluxio集成Azure Blob Store作为底层存储
    • Azure Data Lake Storage Gen2
    • Azure 数据湖存储
    • Alluxio集成HDFS作为底层存储
    • Alluxio集成COS作为底层存储
    • Alluxio集成COSN作为底层存储
    • Alluxio集成Ceph Object Storage作为底层存储
    • Alluxio集成NFS作为底层存储
    • Alluxio集成Kodo作为底层存储
    • Alluxio集成Swift作为底层存储
    • Alluxio集成WEB作为底层存储
    • Alluxio集成Minio作为底层存储
    • 阿里云对象存储服务
    • Alluxio集成Ozone作为底层存储
    • Alluxio集成CephFS作为底层存储
  • 安全设置
    • 安全性
  • 运维指南
    • 配置项设置
    • 命令行接口
    • 管理员命令行接口
    • Web界面
    • 日志
    • 度量指标系统
    • 远程记录日志
  • 管理
    • 升级
    • 异常诊断与调试
  • APIs
    • Filesystem API
    • S3 Client
    • POSIX API
    • REST API
    • Python Client
    • 兼容Hadoop的Java
    • Go 客户端
  • 开发者资源
    • 编译Alluxio源代码
    • 开发指南
    • 代码规范
    • 如何开发单元测试
    • 文档规范
  • 参考
    • 配置项列表
    • List of Metrics
  • REST API
    • Master REST API
    • Worker REST API
    • Proxy REST API
    • Job REST API
  • Javadoc
Powered by GitBook
On this page
  • 配置
  • 支持的度量指标信息
  • Master
  • Worker
  • Client
  • JVM 指标
  1. 运维指南

度量指标系统

Last updated 6 months ago

度量指标信息可以让用户深入了解集群上运行的任务。这些信息对于监控和调试是宝贵的资源。Alluxio有一个基于的可配置的度量指标系统。度量指标系统中,度量指标源就是该度量指标信息生成的地方,度量指标槽会使用由度量指标源生成的记录。度量指标检测系统会周期性地投票决定度量指标源,并将度量指标记录传递给度量指标槽。

Alluxio的度量指标信息被分配到各种相关Alluxio组件的实例中。每个实例中,用户可以配置一组度量指标槽,来决定报告哪些度量指标信息。现在支持下面的实例:

  • Master: Alluxio独立(standalone)Master进程。

  • Worker: Alluxio独立(standalone)Worker进程。

  • Client: Alluxio用户程序。

每个实例可以报告零个或多个度量指标槽。

  • ConsoleSink: 输出控制台的度量值。

  • CsvSink: 每隔一段时间将度量指标信息导出到CSV文件中。

  • JmxSink: 查看JMX控制台中注册的度量信息。

  • GraphiteSink: 给Graphite服务器发送度量信息。

  • MetricsServlet: 添加Web UI中的servlet,作为JSON数据来为度量指标数据服务。

配置

度指标量系统可以通过配置文件进行配置,Alluxio中该文件默认位于$ALLUXIO_HOME/conf/metrics.properties。自定义文件位置可以通过alluxio.metrics.conf.file配置项来指定。Alluxio在conf目录下提供了一个metrics.properties.template文件,其包括所有可配置属性。默认情况下,MetricsServlet是生效的,你可以发送HTTP请求 "/metrics/json/"来获取一个以JSON格式表示的所有已注册度量信息的快照。

支持的度量指标信息

度量指标信息可以被分为:

  • 常规信息: 集群的整体度量信息(如:CapacityTotal)。

  • 逻辑操作: 执行的操作数量(如:FilesCreated)。

  • RPC调用: 每个操作的RPC调用次数(如:CreateFileOps)。

下面详细展示了可用的度量指标信息。

Master

每个master度量指标都会以master开头,例如:

master.CapacityTotal

常规信息

  • CapacityTotal: 文件系统总容量(以字节为单位)。

  • CapacityUsed: 文件系统中已使用的容量(以字节为单位)。

  • CapacityFree: 文件系统中未使用的容量(以字节为单位)。

  • PathsTotal: 文件系统中文件和目录的数目。

  • UnderFsCapacityTotal: 底层文件系统总容量(以字节为单位)。

  • UnderFsCapacityUsed: 底层文件系统中已使用的容量(以字节为单位)。

  • UnderFsCapacityFree: 底层文件系统中未使用的容量(以字节为单位)。

  • Workers: Worker的数目。

逻辑操作

  • DirectoriesCreated: 创建的目录数目。

  • FileBlockInfosGot: 被检索的文件块数目。

  • FileInfosGot: 被检索的文件数目。

  • FilesCompleted: 完成的文件数目。

  • FilesCreated: 创建的文件数目。

  • FilesFreed: 释放掉的文件数目。

  • FilesPersisted: 持久化的文件数目。

  • FilesPinned: 被固定的文件数目。

  • NewBlocksGot: 获得的新数据块数目。

  • PathsDeleted: 删除的文件和目录数目。

  • PathsMounted: 挂载的路径数目。

  • PathsRenamed: 重命名的文件和目录数目。

  • PathsUnmounted: 未被挂载的路径数目。

RPC调用

  • CompleteFileOps: CompleteFile操作的数目。

  • CreateDirectoryOps: CreateDirectory操作的数目。

  • CreateFileOps: CreateFile操作的数目。

  • DeletePathOps: DeletePath操作的数目。

  • FreeFileOps: FreeFile操作的数目。

  • GetFileBlockInfoOps: GetFileBlockInfo操作的数目。

  • GetFileInfoOps: GetFileInfo操作的数目。

  • GetNewBlockOps: GetNewBlock操作的数目。

  • MountOps: Mount操作的数目。

  • RenamePathOps: RenamePath操作的数目。

  • SetStateOps: SetState操作的数目。

  • UnmountOps: Unmount操作的数目。

Worker

每个worker的度量指标都会以worker的地址开头。例如某个名为

192_168_1_4.CapacityTotal

的指标就是地址为192.168.1.4的worker的度量指标。

常规信息

  • CapacityTotal: 该Worker的总容量(以字节为单位)。

  • CapacityUsed: 该Worker已使用的容量(以字节为单位)。

  • CapacityFree: 该Worker未使用的容量(以字节为单位)。

逻辑操作

  • BlocksAccessed: 访问的数据块数目。

  • BlocksCached: 被缓存的数据块数目。

  • BlocksCanceled: 被取消的数据块数目。

  • BlocksDeleted: 被删除的数据块数目。

  • BlocksEvicted: 被替换的数据块数目。

  • BlocksPromoted: 被提升到内存的数据块数目。

  • BytesReadRemote: 通过该worker从Alluxio存储读取的数据量,单位为byte。

  • BytesWrittenRemote: 通过该worker写到Alluxio存储的数据量,单位为byte。

  • BytesReadUfs-UFS:${UFS}: 通过该worker从指定UFS读取的数据量,单位为byte。

  • BytesWrittenUfs-UFS:${UFS}: 通过该worker写到指定UFS的数据量,单位为byte。

Client

常规信息

  • NettyConnectionOpen: 当前Netty网络连接的数目。

逻辑操作

  • BytesReadRemote: 远程读取的字节数目。

  • BytesWrittenRemote: 远程写入的字节数目。

  • BytesReadUfs: 从ufs中读取的字节数目。

  • BytesWrittenUfs: 写入ufs的字节数目。

JVM 指标

您可以以 Java agent 的方式运行 jvm_exporter 来获取JVM相关指标。

java -javaagent:./jmx_prometheus_javaagent-0.16.0.jar=8080:config.yaml -jar yourJar.jar

您可以在 http://localhost:8080/metrics 访问指标。

下载 并运行:

配置文件是 YAML 格式,为了快速使用,可以创建空白配置文件,您也可以访问 获取更多信息。

Coda Hale Metrics库
jmx_prometheus_javaagent-0.16.0.jar
jmx_exporter