In order to enable Openstack's helm charts on StarlingX we need a
distributed persistent storage for Kubernetes that leverages our
existing storage configurations. For this stage we will enable CEPH's
RBD to work with Kubernetes RBD provisioner through a new Helm chart.
Since RBD will be the persistent storage solution, CEPH support has to
be extended to the 1 and 2 node configurations.
This commit enables CEPH on 1 node configuration.
Details:
* Allow CEPH to be configured on a 1 node configuration with a single
monitor.
* Allow CEPH OSDs to be assigned to controller disks (only dedicated
disks allowed)
* No enforcement on the number of OSD's.
* Enable OSD level redundancy versus node redundancy that is present on
the standard system cluster,
* Adding/Modifying CEPH backend configuration require node to be locked.
* After adding the backend & before unlock: Monitor is immediately
available; Backend will be in “provisioned” state; Secondary tiers can
be added at this stage.
* Configuration is be applied on unlock. CEPH OSDs will start after
reboot.
* Adding OSDs require node to be locked, they will be operational after
unlock.
* Host-unlock is allowed only if number of configured OSDs per tier
matches replication number configured for that tier.
* Services supported in this configuration: cinder, glance,
rbd-provisioner, swift, nova (with remote ephemeral storage).
* Support for replication 1, 2 and 3 per tier, default to 1. Replication
is changeable on the fly for this configuration.
* Update StarlingX HA for storage process groups - we no longer have 2
controllers so we disable group monitoring.
Change-Id: I92edca700b7cc557a71edfb33e0453e860f52078
Implements: containerization-2002844-CEPH-persistent-storage-backend-for-Kubernetes
Story: 2002844
Task: 26877
Signed-off-by: Ovidiu Poncea <Ovidiu.Poncea@windriver.com>