Reworking Observability In Ceph
summary
Instrumentation is added to Ceph client and OSD I/O paths so requests get unique spans that the OpenTracing API captures, a Jaeger client sends spans via agent (UDP thrift) to a collector, and the UI reconstructs OST input/output traces showing per-operation latency. The prototype supports always-on tracing with configurable sampling to avoid overhead, is Jaeger–compatible with Zipkin back-compat, and exposes pitfalls: spans must be closed and only one active parent span per context (no DAG support yet); integration works and aims for shippable long‑term support.
AI-written summary · about
chapters (14)
- 0:00Intro
- 0:17About Me
- 0:49Agenda
- 2:42Safe Architecture
- 6:17Distributed Systems
- 8:23Distributed Tracing
- 10:44Trace
- 11:51Open Tracing
- 16:49OST InputOutput Path
- 17:17OST Trace
- 19:10Self
- 19:53Span
- 20:28Zip
- 21:11Conclusion
related talks
37mEnhancing Observability in Rook Ceph
35mNavigating the Distributed Systems Execution Maze With OpenTracing
34mReduce Complexity with Distributing Tracing
38mEfficient Ceph Performance Troubleshooting in Production Using eBPF
47mThrough the Looking Glass: Effective Observability for Cloud-Native Applications
38mOpenTracing Project Intro
32mEnhancing Observability and Monitoring for Large Ceph Clusters at Scale
37mObservability, Distributed Tracing & the Complex World
