Notice
This document is for a development version of Ceph.
OSD developer documentation
Contents
- Asynchronous Recovery
- Backfill Reservation
- ceph_test_rados — Model-Based RADOS Stress Test
- Erasure Coded Placement Groups
- Glossary
- Table of contents
- Developer notes
- Jerasure plugin
- ECBackend Implementation Strategy
- ECBackend
- Erasure coding enhancements design document
- Objectives
- Design
- Stories
- Test tools - enhanced I/O generator for testing erasure coding
- Test tools - offline consistency checking tool
- Test tools - online consistency checking tool
- Switch for JErasure to ISA-L
- Sub Stripe Reads
- Simple Optimizations to Overwrite
- Eliminate unnecessary chunk writes but keep metadata transactions
- Avoid zero padding objects to a full stripe
- Erasure coding plugin changes to support distributed partial writes
- Erasure coding interface to allow RADOS clients to direct I/Os to OSD storing the data
- Changes to object_info_t
- Changes to PGLog and Peering to support updating a subset of OSDs
- Change to selection of (acting) primary
- Implement parity-delta-write with all computation on the primary
- Upgrades and backwards compatibility
- Changes to Backfill to use the vector in object_info_t
- Test tools - offline metadata validation tool
- Eliminate transactions on OSDs not updating data chunks
- Direct reads to OSDs (single chunk only)
- Direct reads to OSDs (multiple chunks)
- Implement distributed parity-delta-write
- Test tools - EC error injection thrasher
- Implement prefetch message MOSDEcSubOpPrefetch and modify extent cache
- Implement sequencing message MOSDEcSubOpSequence
- Direct writes to OSD (single chunk only)
- Direct writes to OSD (multiple chunks)
- Deep scrub / CRC
- Variable chunk size erasure coding
- CLAY Erasure Codes
- Direct reads design document
- EC Stretch Cluster design document
- 1. Intent & High-Level Summary
- 2. Proposed Configuration (CLI) Changes
- 1. Approaches Considered but Rejected
- 4. Configuration Logic (Preliminary)
- 5. Multi-Zone & Topology Considerations
- 6. Topologies and Terminology
- 7. Read Path & Recovery Strategies
- 8. Write Path & Transaction Handling
- 9. Recovery Logic
- 10. PG Log Handling — R1
- 11. Peering & Stretch Mode — R1
- 12. Scrub Behavior — R1
- 13. Migration Path
- 14. Implementation Order
- 15. Upgrade & Backward Compatibility
- 16. Kernel Changes
- 17. Inter-Zone Statistics — R1
- 18. Non-Redundant Pool Zone Affinity
- last_epoch_started
- Log Based PG
- Manifest
- Map and PG Message handling
- QoS Study with mClock and WPQ Schedulers
- Introduction
- Overview
- Test Environment
- Test Methodology
- Establish Baseline Client Throughput (IOPS)
- MClock Profile Allocations
- Recovery Test Steps
- Test Results
- Key Takeaways and Conclusion
- OSD
- Partial Object Recovery
- OSDMap Trimming and PastIntervals
- PG
- PG Removal
- PGPool
- Recovery Reservation
- Refcount
- Scrub internals and diagnostics
- Snaps
- Preventing Stale Reads
- Watch Notify
- Writeback Throttle
Brought to you by the Ceph Foundation
The Ceph Documentation is a community resource funded and hosted by the non-profit Ceph Foundation. If you would like to support this and our other efforts, please consider joining now.