Project

General

Profile

Tasks #47066

Feature #40907: mgr/dashboard: REST API improvements

mgr/restful: Deprecate the "restful" module in favor of the Ceph Dashboard REST API

Added by Lenz Grimmer 5 months ago. Updated about 2 months ago.

Status:
In Progress
Priority:
Normal
Category:
restful module
Target version:
% Done:

25%

Tags:
Reviewed:
Affected Versions:
Pull request ID:

Description

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, 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 Ceph cluster configuration READ CRUD
/config/osd /api/osd/flags OSD flags READ-UPDATE READ-UPDATE
/crush/rule /api/crush_rule CRUSH Rule READ CRUD
/mon /api/monitor Monitor Config READ READ
/osd /api/osd OSD management READ CRUD
/pool /api/pool Pool management CRUD CRUD
/server /api/host Host-Daemon management READ CRUD
/request 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 3.0 specification.

Note on /request endpoint: Dashboard doesn't intentionally support a pass-through endpoint as it's considered not RESTful by design (it essentially provides an HTTP gateway to the Ceph CLI). Instead, Ceph-Dashboard API provides a more comprehensive coverage of the Ceph command set by means of RESTful Resources, not requiring a regular access to the CLI.


Subtasks

Tasks #47067: mgr/restful: communicate the deprecation of the restful module in favor of the Ceph Dashboard REST APIIn ProgressErnesto Puerta

Tasks #47108: mgr/restful: Document deprecation of the restful module in favor of the Ceph Dashboard REST API in the restful documentationNew


Related issues

Related to mgr - Bug #44611: mgr/dashboard: REST API Docs state that the API is un-official and non-stable New
Related to mgr - Feature #35949: mgr/dashboard: Add pass-through MON-commands to REST API New

History

#1 Updated by Lenz Grimmer 5 months ago

  • Related to Feature #40907: mgr/dashboard: REST API improvements added

#2 Updated by Alfonso Martínez 5 months ago

  • Parent task set to #40907

#3 Updated by Lenz Grimmer 5 months ago

  • Related to Bug #44611: mgr/dashboard: REST API Docs state that the API is un-official and non-stable added

#4 Updated by Ernesto Puerta about 2 months ago

  • Description updated (diff)

#5 Updated by Ernesto Puerta about 2 months ago

  • Description updated (diff)

#6 Updated by Ernesto Puerta about 2 months ago

  • Description updated (diff)

#7 Updated by Ernesto Puerta about 2 months ago

  • Description updated (diff)

#8 Updated by Ernesto Puerta about 2 months ago

  • Status changed from New to In Progress
  • Assignee set to Ernesto Puerta

#9 Updated by Ernesto Puerta about 2 months ago

  • Related to Feature #35949: mgr/dashboard: Add pass-through MON-commands to REST API added

Also available in: Atom PDF