Monitoring Metrics

This chapter describes the observable monitoring metrics of Curvine, used for monitoring cluster status, performance, and resource usage.

Metrics Collection

Master, Worker, FUSE, and the optional Transfer service expose monitoring metrics through their HTTP web ports. These metrics can be collected by Prometheus and visualized through Grafana.

  • Master metrics: http://<master-host>:9001/metrics
  • Worker metrics: http://<worker-host>:9002/metrics
  • FUSE metrics: http://<fuse-host>:9003/metrics
  • Transfer metrics: http://<transfer-host>:9011/metrics
  • MDS metrics (when enabled): http://<mds-host>:9004/metrics

These are the standalone code defaults. The Helm chart pins older web ports; read the effective ports from the generated ConfigMap.

Master Metrics

Metric NameDescription
inode_dir_numNumber of directories
inode_file_numNumber of files
num_blocksTotal number of blocks
blocks_size_avgAverage block size
capacityTotal storage capacity
availableAvailable storage space
fs_usedFile system used space
used_memory_bytesUsed memory in bytes
rocksdb_used_memory_bytesRocksDB memory usage
worker_numNumber of workers (classified by status)
rpc_request_total_countTotal RPC request count
rpc_request_total_timeTotal RPC request time
replication_staging_numberNumber of blocks waiting for replication
replication_inflight_numberNumber of blocks currently being replicated
replication_failure_countTotal cumulative replication failures
operation_durationOperation duration (classified by type, excluding heartbeats)

Compatibility Metrics

The master evaluates every worker heartbeat and client handshake against its compatibility contract and exposes the results as metrics (see Version Management and Compatibility):

Metric NameTypeLabelsDescription
compat_worker_verdictGaugeworker_id, verdict1 for the current compatibility verdict of each worker
compat_client_verdictGaugeclient_addr, verdict1 for the current compatibility verdict of each client
compat_enforce_rejected_totalCountercomponent, verdictTotal number of enforce-mode compatibility rejections

The verdict label takes one of: compatible, missing_info, blocked, protocol_mismatch, version_too_old, version_unknown. Alert on compat_worker_verdict / compat_client_verdict with a non-compatible verdict to surface mixed-version clusters, and on compat_enforce_rejected_total increases to catch upgrade conflicts early.

Journal Node Metrics

Metric NameDescription
journal_queue_lenJournal queue length
journal_flush_countJournal flush count
journal_flush_timeJournal flush time

Client Metrics

Metric NameDescription
client_mount_cache_hitsMount cache hits
client_mount_cache_missesMount cache misses
client_metadata_operation_durationMetadata operation duration
client_write_bytesBytes written
client_write_time_usWrite time in microseconds
client_read_bytesBytes read
client_read_time_usRead time in microseconds

Worker Metrics

Metric NameDescription
write_bytesBytes written
write_time_usWrite time in microseconds
write_countWrite count
write_blocksBlocks written (classified by type)
read_bytesBytes read
read_time_usRead time in microseconds
read_countRead count
read_blocksBlocks read (classified by type)
capacityTotal storage capacity
availableAvailable storage space
fs_usedFile system used space
failed_disksNumber of failed storage devices
total_disksTotal number of storage disks
num_blocksTotal number of blocks
num_blocks_to_deleteNumber of blocks pending deletion
used_memory_bytesUsed memory in bytes