1B - Ceph Management API » History » Version 2
Jessica Mack, 06/22/2015 04:22 AM
1 | 1 | Jessica Mack | h1. 1B - Ceph Management API |
---|---|---|---|
2 | 1 | Jessica Mack | |
3 | 1 | Jessica Mack | h3. Live Pad |
4 | 1 | Jessica Mack | |
5 | 1 | Jessica Mack | The live pad can be found here: "[pad]":http://pad.ceph.com/p/Ceph_management_API |
6 | 2 | Jessica Mack | |
7 | 2 | Jessica Mack | h3. Summit Snapshot |
8 | 2 | Jessica Mack | |
9 | 1 | Jessica Mack | wCoding tasks (some done, see http://github.com/ceph/ceph branch wip-ceph-cli for an out-of-date working branch) |
10 | 1 | Jessica Mack | If you have ideas/comments/suggestions, contact us at irc.oftc.net #ceph, or ceph-devel@vger.kernel.org! |
11 | 1 | Jessica Mack | |
12 | 1 | Jessica Mack | |
13 | 1 | Jessica Mack | # Create command/param/help registry in monclient, export in JSON on request |
14 | 1 | Jessica Mack | ** expression language for parameter descriptions: type, name, valid ranges/values, etc. |
15 | 1 | Jessica Mack | ** make it simple to add new commands and easy to find the full list of commands supported |
16 | 1 | Jessica Mack | # Frontend CLI that requests command registry and validates user input, submits JSON command request |
17 | 1 | Jessica Mack | ** do as much validation upfront as possible, as generically as possible |
18 | 1 | Jessica Mack | ** write validation code such that it can be reused in REST endpoint |
19 | 1 | Jessica Mack | ** format help, provide substring help |
20 | 1 | Jessica Mack | ** allow for command-line completion (allow partial matching of input) |
21 | 1 | Jessica Mack | ** format actual command request in unambiguous complete JSON form |
22 | 1 | Jessica Mack | # Remove existing command validation/parsing from monclient |
23 | 1 | Jessica Mack | ** rely on front end to pass only valid commands as much as possible (some validation must talk to the cluster) |
24 | 1 | Jessica Mack | ** refactor common tasks, like selection of output format |
25 | 1 | Jessica Mack | # Allow all formatted commands to output JSON or XML (planning ahead for REST) |
26 | 1 | Jessica Mack | # Validate all existing functionality remains unchanged with much-enhanced unit tests and existing tests |
27 | 1 | Jessica Mack | # migration path for existing 'allow command ...' cap strings |
28 | 1 | Jessica Mack | # discover/describe --admin-daemon and tell commands (currently just passthru) |
29 | 1 | Jessica Mack | # merge to master... 0.63ish? |
30 | 1 | Jessica Mack | # Add command-line completion to frontend and BASH snippets |
31 | 1 | Jessica Mack | # Create webserver for REST endpoint (after the interface is designed) using chunks of the CLI code as needed |
32 | 1 | Jessica Mack | # Allow REST endpoint to respond in JSON or XML at user's request |
33 | 1 | Jessica Mack | # Add some appropriate sort of monitoring to the REST endpoint |
34 | 1 | Jessica Mack | # ability to access daemon admin socket command set via REST mgmt endpoint |
35 | 1 | Jessica Mack | # ability to do 'tell <name> ...' |
36 | 1 | Jessica Mack | # ability to access cluster event log via cli, REST mgmt endpoint |
37 | 1 | Jessica Mack | # ceph-deploy support for deploying a management endpoint daemon |
38 | 1 | Jessica Mack | # (Possible): allow client to register interest in cluster events (cluster/OSD full, daemon status change, quorum change, administrative events/change) using an unknown mechanism (perhaps a URL that can be accessed on such events, perhaps with a parameter structure to carry information about the |
39 | 1 | Jessica Mack | |
40 | 1 | Jessica Mack | Build / release tasks |
41 | 1 | Jessica Mack | |
42 | 1 | Jessica Mack | |
43 | 1 | Jessica Mack | # document upgrade path: upgrade cli tool first (it can talk to either old or new mons), mons second. |
44 | 1 | Jessica Mack | # merge first batch of cli stuff |
45 | 1 | Jessica Mack | # merge rest mgmt endpoint as it finishes |
46 | 1 | Jessica Mack | |
47 | 1 | Jessica Mack | Documentation tasks |
48 | 1 | Jessica Mack | |
49 | 1 | Jessica Mack | |
50 | 1 | Jessica Mack | # Fix up manpage/webdoc for CLI; decide to document each or just defer to CLI help |
51 | 1 | Jessica Mack | # A large pile of documentation for REST API |
52 | 1 | Jessica Mack | |
53 | 1 | Jessica Mack | Deprecation tasks |
54 | 1 | Jessica Mack | |
55 | 1 | Jessica Mack | n/a |