CEPH-KVSTORE-TOOL(8)

πŸ’– CEPH-KVSTORE-TOOL(8) πŸ’–

okay bestie, pull up a chair, we're doing ceph-kvstore-tool from the Ceph manual (section 8, system admin girlies only πŸ’…). this is your offline kvstore manipulation queen and she is so useful.


✨ NAME ✨

ceph-kvstore-tool β€” the ceph kvstore manipulation tool πŸ› οΈβœ¨


🌸 SYNOPSIS 🌸

ceph-kvstore-tool <rocksdb|bluestore-kv> <store path> command [args...]

that's the whole vibe right there. you pick rocksdb or bluestore-kv, you point at a store path, you give it a command, and then ᡃʳᡍ˒. periodt. πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

so ceph-kvstore-tool is a kvstore manipulation tool. that's the whole job title. it lets you mess with RocksDB's data β€” think an OSD's omap and all that β€” offline. offline is the key word bestie. we are not doing this live. no cap. πŸ™ˆ


πŸ’… COMMANDS πŸ’…

ceph-kvstore-tool is a little utility with a LOT of commands, and they're all here for debugging purposes. here's the full roster, no skips, no cuts, every single one:

  • list [prefix] β€” prints the key of every single KV pair stored with the URL encoded prefix. just the keys. the receipts, not the content. ✨
  • list-crc [prefix] β€” same energy as list but it prints the CRC of all the KV pairs stored with the URL encoded prefix. checksum slay. πŸ”₯
  • dump [prefix] β€” ok this one's the nosy one, it prints the key AND value of all KV pairs stored with the URL encoded prefix. full tea, everything spilled. πŸ«–
  • exists <prefix> [key] β€” checks if there's any KV pair stored with the URL encoded prefix. if you also pass key, it checks for that specific key under the prefix instead. does she exist? yes or no bestie. πŸŽ€
  • get <prefix> <key> [out <file>] β€” gets the value of the KV pair stored with the URL encoded prefix and key. if you also pass file, the value gets written to that file. ✨
  • crc <prefix> <key> β€” gets the CRC of the KV pair stored with the URL encoded prefix and key. one specific pair, one specific checksum. πŸ’œ
  • get-size [<prefix> <key>] β€” gets the estimated store size, OR the size of the value specified by prefix and key. like, how big is this thing. πŸ“
  • set <prefix> <key> [ver <N>|in <file>] β€” sets the value of the KV pair stored with the URL encoded prefix and key. the value can be a version_t or text. you're writing now. main character move. πŸ‘‘
  • rm <prefix> <key> β€” removes the KV pair stored with the URL encoded prefix and key. gone. deleted. bye. πŸ’€
  • rm-prefix <prefix> β€” removes ALL KV pairs stored with the URL encoded prefix. not one. all of them. be so careful bestie. 😭
  • store-copy <path> [num-keys-per-tx] β€” copies all KV pairs to another directory specified by path. the optional num-keys-per-tx is the number of KV pairs copied per transaction. 🚚
  • store-crc <path> β€” stores the CRC of all KV pairs to a file specified by path. 🧚
  • compact β€” this subcommand compacts all data of the kvstore. it opens the database and triggers a database's compaction. and after compaction, some disk space may be released. glow up for your disk. ✨
  • compact-prefix <prefix> β€” compacts all the entries specified by the URL encoded prefix. πŸŽ€
  • compact-range <prefix> <start> <end> β€” compacts some entries, specified by the URL encoded prefix and the range. 🌈
  • destructive-repair β€” makes a (potentially destructive) effort to recover a corrupted database. and bestie, listen to me: for rocksdb in particular this may corrupt an otherwise totally uncorrupted database β€” use this only as a last resort!! the name is not a joke, she tells you exactly what she is. πŸ’€πŸš¨
  • stats β€” prints statistics from the underlying key-value database. this is only for informative purposes. the format and the information content may vary between releases. for RocksDB, the information includes compactions stats, performance counters, memory usage and internal RocksDB stats. πŸ“Š
  • histogram β€” presents key-value sizes distribution statistics from the underlying KV database. it's giving… data visualization energy. πŸ“ˆβœ¨
real talk: destructive-repair is destructive. the manpage says the word destructive for a reason. last resort only. i'm not being dramatic, the original is being dramatic, i'm just matching her energy. 🫢

🌈 AVAILABILITY 🌈

ceph-kvstore-tool is part of Ceph, a massively scalable, open-source, distributed storage system. for more info, please refer to the Ceph documentation at <https://docs.ceph.com>. she's ceph's girl fr fr. πŸ‘‘


πŸ‘€ SEE ALSO πŸ‘€

  • ceph <>(8)

2010-2014, Inktank Storage, Inc. and contributors. Licensed under Creative Commons Attribution Share Alike 3.0 (CC-BY-SA-3.0). iconic licensing behavior, we love to see it. πŸ’–


and that's the whole page bestie!! written by dev, dated Oct 06, 2026, and it lives in section 8 as CEPH-KVSTORE-TOOL(8). go forth and manipulate those kvstores responsibly. mwah. πŸ’…πŸ’–βœ¨πŸ¦‹πŸŒΈπŸ«Ά

πŸ“¦ where this page comes from