Configure Ceph pools for Cinder multiple backends

The CephDeployment custom resource (CR) supports multiple Ceph pools with the volumes role to configure Cinder multiple backends in Rockoon OpenStack.

To configure Ceph pools for Cinder multiple backends:

  1. In the CephDeployment CR, add the desired number of Ceph pools to the pools section with the volumes role:

    kubectl -n ceph-lcm-mirantis edit cephdeployment
    

    Example configuration:

    spec:
      pools:
      - name: volumes
        deviceClass: hdd
        replicated:
          size: 3
        role: volumes
      - name: volumes-backend-1
        deviceClass: hdd
        replicated:
          size: 3
        role: volumes
      - name: volumes-backend-2
        deviceClass: hdd
        replicated:
          size: 3
        role: volumes
    
  2. Verify that Cinder backend pools are created and ready:

    kubectl -n pelagia get cephdeploymenthealth -o yaml
    

    Example output:

    status:
      healthReport:
        rookCephObjects:
          blockStorage:
            cephBlockPools:
              volumes-hdd:
                info:
                  failureDomain: host
                  type: Replicated
                observedGeneration: 1
                phase: Ready
                poolID: 12
              volumes-backend-1-hdd:
                info:
                  failureDomain: host
                  type: Replicated
                observedGeneration: 1
                phase: Ready
                poolID: 13
              volumes-backend-2-hdd:
                info:
                  failureDomain: host
                  type: Replicated
                observedGeneration: 1
                phase: Ready
                poolID: 14
    
  3. Verify that the added Ceph pools are accessible from the Cinder service. For example:

    kubectl -n openstack exec -it cinder-volume-0 -- rbd ls -p volumes-backend-1-hdd -n client.cinder
    kubectl -n openstack exec -it cinder-volume-0 -- rbd ls -p volumes-backend-2-hdd -n client.cinder
    

After Ceph pools become available, Rockoon will automatically specify them as an additional Cinder backend and register as a new volume type, which you can use to create Cinder volumes.