Integrate Pelagia with Rockoon
This document describes how to integrate Pelagia with the Rockoon OpenStack Controller. As Ceph supports integration with OpenStack, Pelagia provides a way to integrate Rook Ceph cluster with Rockoon OpenStack inside the Kubernetes cluster.
How to integrate Pelagia with Rockoon
In the CephDeployment custom resource, create the following Ceph pools required for Rockoon OpenStack and ensure that the role parameter is explicitly set:
volumesfor the OpenStack Block Storage service (cinder)backupfor the OpenStack Block Storage service (cinder)vmsfor the OpenStack Compute service (nova)imagesfor the OpenStack Image service (glance)For example:
spec: blockStorage: pools: ... - name: volumes role: volumes spec: deviceClass: hdd replicated: size: 3 - name: backup role: backup spec: deviceClass: hdd replicated: size: 3 - name: vms role: vms spec: deviceClass: hdd replicated: size: 3 - name: images role: images spec: deviceClass: hdd replicated: size: 3
As a result, Pelagia creates the following Ceph pools: volumes-hdd, backup-hdd, vms-hdd, and
images-hdd. We recommend the following target ratios for these pools to match the default OpenStack requirements:
Volumes pool: 0.4
Backup pool: 0.1
VMs pool: 0.2
Images pool: 0.1
We recommend adjusting these ratios according to your OpenStack
deployment requirements using the parameters.target_size_ratio parameter located in the pools section.
For reference, see Rook documentation: CephBlockPool CRD Spec.
For details on how to set correct values, see Calculate target ratios for Ceph pools for Rockoon.
After Ceph pools are created, Pelagia Deployment Controller creates a secret in the openstack-ceph-shared
namespace (by default) with all necessary information for Rockoon OpenStack services to be configured
with the Ceph cluster. Rockoon Controller watches this namespace and
transforms the secret into the data structures expected by OpenStack Helm charts. After that, OpenStack
services will be connected to the required Ceph cluster.
Note
To prevent Pelagia Deployment Controller from creating and managing this
secret, set spec.extraOpts.disableOsSharedKeys to true in the
CephDeployment custom resource. Use this option only for clusters managed
through Rockoon. When the option is enabled, Pelagia does not remove an
existing secret upon CephDeployment deletion, so remove it manually
if required.
If CephDeployment contains the objectStorage section, Ceph Object Storage is deployed, and the
object store has usedForOpenstack: true set in spec.objectStorage.objectStores, then Pelagia and Rockoon
enable Ceph RADOS Gateway integration with OpenStack Object Storage service (swift).
See also