As a user I would like to run Ceph on my Metropolis cluster. I'm fine with either Metropolis providing a high-level API (eg. operator, gRPC call) for this, or with some set of manifest files I can base my deployment on.
As a developer, this probably means we would need:
Some way to provision OSDs, either deferring to ceph-volume prepare or replicate that work.
Some way to start OSDs, giving it access to block devices. Then the OSD pods need to either be able to run ceph-volume activate, or some automation should give it directory layouts that are immediately usable with ceph-osd.
Some way to define a storage class that is backed by some ceph mons and FSID.
Some way to define PVCs pointing to that storage class and an operator that responds to this and actually provisions/rbd maps them.
CephFS support for the above.
Tangential discussion: can we make Ceph fast? See discussion about capacitors, transactions, queues, flushing...
As a user I would like to run Ceph on my Metropolis cluster. I'm fine with either Metropolis providing a high-level API (eg. operator, gRPC call) for this, or with some set of manifest files I can base my deployment on.
As a developer, this probably means we would need:
ceph-volume prepare
or replicate that work.ceph-volume activate
, or some automation should give it directory layouts that are immediately usable withceph-osd
.Tangential discussion: can we make Ceph fast? See discussion about capacitors, transactions, queues, flushing...