This Wizard should consist of these three steps:
- Provide a check list of options that this cluster will be used for. e.g. "openstack", "iSCSI", RGW, CephFS. Also, ask for the expected final size of this cluster.
- Generate a dialog similar to the ceph PG calculator, which contains a table of all pools that will be created. each pool should be editable and removable.
This wizard will only be useful, if the cluster is newly created.
Original Description for creating a single pool:
Once the basic/generic functionality for creating a Ceph Pool exists (e.g. the required REST API call), we should consider creating a "Create Pool" Wizard, that guides the user through the required steps.
Some rough notes about this that were gathered during a call with SUSE about this:
First step after installation - creation of a Crush map depending if there is just one set of disks (one size, all rotational) vs. rotating disk plus SSDs (likely two different sizes?)
(Not for SSDs used as journal devices)
Crush Map creation? All your disks in one rule set, or use two separate groupings? Reason: to constrain what disks a pool can use (e.g. for creating a cache pool)
Can I query an OSD for the size of its disk?
Propose a grouping based on what is reported.
Create a pool for one of the following purposes
- Replicated or Erasure Coded? -> Explain the pros and cons in sidebar
- Cache tiering (only if there are separate rule sets)
If Erasure Coded: Propose k/m values e.g. 5/3 4/2 (dropdown showing existing profiles), algorithm
- Suggest conservative Placement Group Number (use pgcalc algorithm?) (Hint that it can't be decreased and depends on the estimated number of Pools, probably propose a conservative number)
Maybe a Checkbox? "Do you intend to create additional pools?"
- Block devices (iSCSI), Virtual Machine Images
- Generic object storage
Note: (Cache tiering does not work with RBDs)
Also Seel: http://ceph.com/pgcalc/