Project

General

Profile

Tasks #47066

Updated by Ernesto Puerta over 3 years ago

The Ceph Dashboard REST API backend has gathered a significant amount of functionality compared to the original @restful@ module. We would like to phase out the restful module post-pacific, so it should be marked as "deprecated" now, pointing to the Ceph Dashboard REST API (to be renamed "Ceph REST API") as its replacement. 

 A comparison between the "RESTful module endpoints and capabilities":https://docs.ceph.com/en/latest/mgr/restful/#available-methods, and the ones provided by Ceph-Dashboard RESTful API: 

 |_.RESTful Resource |_.Dashboard API Resource |_.Description |_.Restful Capabilities |_.Dashboard API Capabilities| 
 | @/config/cluster@ | "@/api/cluster_conf@":https://docs.ceph.com/en/latest/mgr/ceph_api/#clusterconfiguration | Ceph cluster configuration | READ | CRUD | 
 | @/config/osd@ | "@/api/osd/flags@":https://docs.ceph.com/en/latest/mgr/ceph_api/#get--api-osd-flags | OSD flags | READ-UPDATE | READ-UPDATE | 
 | @/crush/rule@ | "@/api/crush_rule@":https://docs.ceph.com/en/latest/mgr/ceph_api/#crushrule | CRUSH Rule | READ | CRUD | 
 | @/mon@ | "@/api/monitor@":https://docs.ceph.com/en/latest/mgr/ceph_api/#monitor | Monitor Config | READ | READ | 
 | @/osd@ | "@/api/osd@":https://docs.ceph.com/en/latest/mgr/ceph_api/#osd | OSD management | READ | CRUD | 
 | @/pool@ | "@/api/pool@":https://docs.ceph.com/en/latest/mgr/ceph_api/#pool | Pool management | CRUD | CRUD | 
 | @/server@ | "@/api/host@":https://docs.ceph.com/en/latest/mgr/ceph_api/#host | Host-Daemon management | READ | CRUD | 
 | "@/request@":https://docs.ceph.com/en/latest/mgr/restful/#the-request-endpoint | Unsupported (see note below) | Pass-through endpoint | | | 

 Additionally, Ceph-Dashboard supports: 
 * *RBD management*: incl. namespaces, snapshots, QoS, trash and mirroring. 
 * *iSCSI*. 
 * *RGW management*: incl. daemons, users, buckets, quotas, and some S3 advanced operations (MFA deletions, object locks, ...). 
 * *CephFS management*: incl. clients, quotas, snapshots, tree operations. 
 * *NFS exports* 
 * *Orchestrator management* 
 * *Other Ceph-related features*: Ceph cluster/audit logs, daemon monitoring/perf-counters. 
 * *Access management*: multi-user, RBAC, SAML2 SSO, security account policies. 
 * OpenAPI specification. 


 Note on @/request@ endpoint: Dashboard doesn't intentionally support a pass-through endpoint as it's considered not "RESTful":https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm by design (it essentially provides an HTTP gateway to the Ceph CLI).

Back