惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
Vercel News
Vercel News
月光博客
月光博客
S
SegmentFault 最新的问题
A
About on SuperTechFans
Microsoft Security Blog
Microsoft Security Blog
U
Unit 42
Google DeepMind News
Google DeepMind News
Engineering at Meta
Engineering at Meta
B
Blog RSS Feed
Y
Y Combinator Blog
云风的 BLOG
云风的 BLOG
N
Netflix TechBlog - Medium
小众软件
小众软件
WordPress大学
WordPress大学
G
Google Developers Blog
Recent Announcements
Recent Announcements
H
Hackread – Cybersecurity News, Data Breaches, AI and More
P
Proofpoint News Feed
Blog — PlanetScale
Blog — PlanetScale
MongoDB | Blog
MongoDB | Blog
F
Fortinet All Blogs
博客园 - 【当耐特】
I
InfoQ

OneUptime Blog

How to Monitor Azure App Services (PaaS) with OpenTelemetry Grafana Stack vs OneUptime: DIY Observability or Unified Platform? Your AI Workloads Are About to Blow Up Your Observability Bill The Great Observability Consolidation Is Here How to Write Custom Object Classes for Ceph How to Write Custom Ceph Manager Modules How to Write a ceph.conf Configuration File How to Use Rook-Ceph with OpenShift How to Use Rook-Ceph with Longhorn for Comparison How to Configure Volume Snapshot Class for RBD in Rook How to Configure VolumeReplicationClass Scheduling Intervals in Rook How to Set Up Volume Replication with Rook-Ceph How to Create Volume Group Snapshots with Rook CSI How to Visualize Ceph Network Performance in Grafana How to Enable Virtual Host-Style Bucket Access in Rook How to View Quota Settings and Update Stats in Ceph RGW How to View PG Scaling Recommendations with autoscale-status How to View PG Distribution via Admin Socket How to View Performance Metrics in the Ceph Dashboard How to View OSD Performance Counters in Ceph How to View Connection Status via Admin Socket How to View Ceph Cluster Summary Dashboard via CLI How to Version Control Rook-Ceph Configuration How to Version Control Ceph Infrastructure with Terraform How to Verify Kubernetes Node Requirements for Rook-Ceph Deployment How to Verify Health Before and After Rook Upgrades How to Verify Data Integrity with Deep Scrubbing How to Verify Complete Rook-Ceph Cleanup How to Verify Backup Integrity from Ceph Snapshots How to Use Rook-Ceph with Velero for Kubernetes Backup
How to View Runtime Configuration via Admin Socket
Nawaz Dhandala · 2026-03-31 · via OneUptime Blog

Overview

Ceph daemons can have their configuration changed at runtime without a restart. The admin socket provides commands to view the current active configuration, see which values differ from defaults, and inspect individual settings. This is essential for verifying that configuration changes were applied correctly.

Viewing the Full Configuration

# Show all configuration for an OSD daemon
ceph daemon osd.0 config show

# Show full config for RGW
ceph daemon rgw.myzone config show

# Show full config for MON
ceph daemon mon.$(hostname) config show

The output is a JSON object with all configuration key-value pairs currently in effect.

Getting a Specific Configuration Value

# Get a specific config key from a running daemon
ceph daemon osd.0 config get osd_max_backfills

# Get RGW-specific settings
ceph daemon rgw.myzone config get rgw_thread_pool_size
ceph daemon rgw.myzone config get d3n_l1_local_datacache_enabled
ceph daemon rgw.myzone config get d3n_l1_datacache_size

# Get network settings
ceph daemon mon.$(hostname) config get public_network

Viewing Configuration Differences from Default

# Show only values that differ from compiled-in defaults
ceph daemon osd.0 config diff

# This is especially useful after applying changes to verify what was modified
ceph daemon rgw.myzone config diff | python3 -m json.tool

Example output:

{
  "diff": {
    "changed": {
      "d3n_l1_local_datacache_enabled": "true",
      "d3n_l1_datacache_size": "10737418240",
      "rgw_thread_pool_size": "512"
    },
    "defaults": {
      "d3n_l1_local_datacache_enabled": "false",
      "d3n_l1_datacache_size": "0",
      "rgw_thread_pool_size": "100"
    }
  }
}

Comparing Running Config with ceph.conf

# Export running config to a file
ceph daemon osd.0 config show > /tmp/osd0-running-config.json

# Compare with what is in the Ceph config store
ceph config show osd.0 > /tmp/osd0-stored-config.txt

# If values differ, the daemon may have been modified at runtime without persisting

Checking All OSD Configs

# Loop through all OSD admin sockets
for i in $(ceph osd ls); do
    echo "=== OSD $i ==="
    ceph daemon osd.$i config get osd_max_backfills 2>/dev/null
done

Viewing Ceph Log Levels at Runtime

# Check current debug log levels for an OSD
ceph daemon osd.0 config get debug_osd
ceph daemon osd.0 config get debug_ms

# Check RGW log levels
ceph daemon rgw.myzone config get debug_rgw
ceph daemon rgw.myzone config get log_to_stderr

Practical Verification After Config Changes

# After applying a config change via ceph config set, verify it took effect
ceph config set osd osd_recovery_max_active 5
ceph daemon osd.0 config get osd_recovery_max_active
# Should return: 5

Summary

The admin socket config show, config get, and config diff commands provide complete visibility into a running daemon's configuration. Use config diff to quickly see what has been customized from defaults. Verify configuration changes took effect immediately after applying them, and compare running config with the stored config to detect runtime drift that has not been persisted.