Support openstack with ceph-backed ROOK deployment (r10,osdsR10)

Add rook-ceph back to openstack documentation.

Changes made in https://review.opendev.org/c/starlingx/docs/+/945526 were reverted.

Change-Id: Id9a4fe0c10164963ec5d68a03ef0a0881c4b641d
Signed-off-by: Elisamara Aoki Gonçalves <elisamaraaoki.goncalves@windriver.com>
This commit is contained in:
Elisamara Aoki Gonçalves
2025-06-06 13:05:46 +00:00
parent a7e2b01fc2
commit 9cd7725d97
4 changed files with 417 additions and 412 deletions

View File

@@ -934,21 +934,14 @@ A persistent storage backend is required if your application requires |PVCs|.
The StarlingX OpenStack application **requires** |PVCs|. The StarlingX OpenStack application **requires** |PVCs|.
.. only:: starlingx or platform There are two options for persistent storage backend: the host-based Ceph
solution and the Rook container-based Ceph solution.
There are two options for persistent storage backend: the host-based Ceph .. note::
solution and the Rook container-based Ceph solution.
.. note::
Host-based Ceph will be deprecated and removed in an upcoming release. Host-based Ceph will be deprecated and removed in an upcoming release.
Adoption of Rook-Ceph is recommended for new deployments. Adoption of Rook-Ceph is recommended for new deployments.
.. warning::
Currently |prod-os| does not support rook-ceph. If you plan on using
|prod-os|, choose host-based Ceph.
For host-based Ceph: For host-based Ceph:
#. Initialize with add ceph backend: #. Initialize with add ceph backend:
@@ -971,16 +964,15 @@ For host-based Ceph:
# List OSD storage devices # List OSD storage devices
~(keystone_admin)$ system host-stor-list controller-0 ~(keystone_admin)$ system host-stor-list controller-0
.. only:: starlingx or platform
For Rook-Ceph: For Rook-Ceph:
.. note:: .. note::
Each deployment model enforces a different structure for the Rook Ceph Each deployment model enforces a different structure for the Rook Ceph
cluster and its integration with the platform. cluster and its integration with the platform.
#. Add Storage-Backend with Deployment Model. #. Add Storage-Backend with Deployment Model.
.. code-block:: none .. code-block:: none
@@ -993,13 +985,13 @@ For host-based Ceph:
| | | | | | | min_replication: 1 | | | | | | | | min_replication: 1 |
+--------------------------------------+-----------------+-----------+----------------------+----------+------------------+------------------------------------------------------+ +--------------------------------------+-----------------+-----------+----------------------+----------+------------------+------------------------------------------------------+
#. Set up a ``contorllerfs ceph-float`` filesystem. #. Set up a ``contorllerfs ceph-float`` filesystem.
.. code-block:: none .. code-block:: none
~(keystone_admin)$ system controllerfs-add ceph-float=20 ~(keystone_admin)$ system controllerfs-add ceph-float=20
#. Set up a ``host-fs ceph`` filesystem on controller-0. #. Set up a ``host-fs ceph`` filesystem on controller-0.
.. code-block:: none .. code-block:: none
@@ -1468,11 +1460,10 @@ For host-based Ceph:
# List OSD storage devices # List OSD storage devices
~(keystone_admin)$ system host-stor-list controller-1 ~(keystone_admin)$ system host-stor-list controller-1
.. only:: starlingx or platform
For Rook-Ceph: For Rook-Ceph:
#. Set up a ``host-fs ceph`` filesystem on controller-1. #. Set up a ``host-fs ceph`` filesystem on controller-1.
.. code-block:: none .. code-block:: none
@@ -1492,13 +1483,12 @@ Controller-1 will reboot in order to apply configuration changes and come into
service. This can take 5-10 minutes, depending on the performance of the host service. This can take 5-10 minutes, depending on the performance of the host
machine. machine.
.. only:: starlingx or platform
------------------------------------------------------------------- -------------------------------------------------------------------
If configuring Rook Ceph Storage Backend, configure the environment If configuring Rook Ceph Storage Backend, configure the environment
------------------------------------------------------------------- -------------------------------------------------------------------
#. Check if the rook-ceph app is uploaded. #. Check if the rook-ceph app is uploaded.
.. code-block:: none .. code-block:: none
@@ -1516,7 +1506,7 @@ machine.
| rook-ceph | 24.09-12 | rook-ceph-fluxcd-manifests | fluxcd-manifests | uploaded | completed | | rook-ceph | 24.09-12 | rook-ceph-fluxcd-manifests | fluxcd-manifests | uploaded | completed |
+--------------------------+-----------+-------------------------------------------+------------------+----------+-----------+ +--------------------------+-----------+-------------------------------------------+------------------+----------+-----------+
#. List all the disks. #. List all the disks.
.. code-block:: none .. code-block:: none
@@ -1538,7 +1528,7 @@ machine.
| dc0ec403-67f8-40bf-ada0-6fcae3ed76da | /dev/sdc | 2080 | HDD | 9.765 | 9.761 | Undetermined | VB16244caf-ab36d36c | /dev/disk/by-path/pci-0000:00:0d.0-ata-3.0 | | dc0ec403-67f8-40bf-ada0-6fcae3ed76da | /dev/sdc | 2080 | HDD | 9.765 | 9.761 | Undetermined | VB16244caf-ab36d36c | /dev/disk/by-path/pci-0000:00:0d.0-ata-3.0 |
+--------------------------------------+-------------+------------+-------------+----------+---------------+--------------+---------------------+--------------------------------------------+ +--------------------------------------+-------------+------------+-------------+----------+---------------+--------------+---------------------+--------------------------------------------+
#. Choose empty disks and provide hostname and uuid to finish |OSD| #. Choose empty disks and provide hostname and uuid to finish |OSD|
configuration: configuration:
.. code-block:: none .. code-block:: none
@@ -1546,7 +1536,7 @@ machine.
~(keystone_admin)$ system host-stor-add controller-0 osd bfb83b6f-61e2-4f9f-a87d-ecae938b7e78 ~(keystone_admin)$ system host-stor-add controller-0 osd bfb83b6f-61e2-4f9f-a87d-ecae938b7e78
~(keystone_admin)$ system host-stor-add controller-1 osd 93020ce0-249e-4db3-b8c3-6c7e8f32713b ~(keystone_admin)$ system host-stor-add controller-1 osd 93020ce0-249e-4db3-b8c3-6c7e8f32713b
#. Wait for |OSDs| pod to be ready. #. Wait for |OSDs| pod to be ready.
.. code-block:: none .. code-block:: none
@@ -1578,7 +1568,7 @@ machine.
rook-ceph-tools-7dc9678ccb-nmwwc 1/1 Running 0 12m rook-ceph-tools-7dc9678ccb-nmwwc 1/1 Running 0 12m
stx-ceph-manager-664f8585d8-5lt8c 1/1 Running 0 10m stx-ceph-manager-664f8585d8-5lt8c 1/1 Running 0 10m
#. Check ceph cluster health. #. Check ceph cluster health.
.. code-block:: none .. code-block:: none
@@ -1604,7 +1594,7 @@ machine.
client: 1.2 KiB/s rd, 2 op/s rd, 0 op/s wr client: 1.2 KiB/s rd, 2 op/s rd, 0 op/s wr
.. include:: /_includes/bootstrapping-and-deploying-starlingx.rest .. include:: /_includes/bootstrapping-and-deploying-starlingx.rest
.. _extend-dx-with-workers: .. _extend-dx-with-workers:

View File

@@ -855,20 +855,14 @@ A persistent storage backend is required if your application requires
The StarlingX OpenStack application **requires** |PVCs|. The StarlingX OpenStack application **requires** |PVCs|.
.. only:: starlingx or platform There are two options for persistent storage backend: the host-based Ceph
solution and the Rook container-based Ceph solution.
There are two options for persistent storage backend: the host-based Ceph .. note::
solution and the Rook container-based Ceph solution.
.. note::
Host-based Ceph will be deprecated and removed in an upcoming release. Host-based Ceph will be deprecated and removed in an upcoming release.
Adoption of Rook-Ceph is recommended for new deployments. Adoption of Rook-Ceph is recommended for new deployments.
.. warning::
Currently |prod-os| does not support rook-ceph. If you plan on using
|prod-os|, choose host-based Ceph.
For host-based Ceph: For host-based Ceph:
@@ -892,16 +886,15 @@ For host-based Ceph:
# List OSD storage devices # List OSD storage devices
~(keystone_admin)$ system host-stor-list controller-0 ~(keystone_admin)$ system host-stor-list controller-0
.. only:: starlingx or platform
For Rook-Ceph: For Rook-Ceph:
.. note:: .. note::
Each deployment model enforces a different structure for the Rook Ceph Each deployment model enforces a different structure for the Rook Ceph
cluster and its integration with the platform. cluster and its integration with the platform.
#. Check if the rook-ceph app is uploaded. #. Check if the rook-ceph app is uploaded.
.. code-block:: none .. code-block:: none
@@ -919,7 +912,7 @@ For host-based Ceph:
| rook-ceph | 24.09-12 | rook-ceph-fluxcd-manifests | fluxcd-manifests | uploaded | completed | | rook-ceph | 24.09-12 | rook-ceph-fluxcd-manifests | fluxcd-manifests | uploaded | completed |
+--------------------------+-----------+-------------------------------------------+------------------+----------+-----------+ +--------------------------+-----------+-------------------------------------------+------------------+----------+-----------+
#. Add Storage-Backend with Deployment Model. #. Add Storage-Backend with Deployment Model.
There are three deployment models: Controller, Dedicated, and Open. There are three deployment models: Controller, Dedicated, and Open.
@@ -965,13 +958,13 @@ For host-based Ceph:
| | | | | | filesystem | 1 min_replication: 1 | | | | | | | filesystem | 1 min_replication: 1 |
+--------------------------------------+-----------------+-----------+----------------------+----------+------------+-------------------------------------------+ +--------------------------------------+-----------------+-----------+----------------------+----------+------------+-------------------------------------------+
#. Set up a ``host-fs ceph`` filesystem. #. Set up a ``host-fs ceph`` filesystem.
.. code-block:: none .. code-block:: none
$ system host-fs-add controller-0 ceph=20 $ system host-fs-add controller-0 ceph=20
.. incl-config-controller-0-openstack-specific-aio-simplex-end: .. incl-config-controller-0-openstack-specific-aio-simplex-end:
------------------- -------------------
Unlock controller-0 Unlock controller-0
@@ -989,11 +982,10 @@ Controller-0 will reboot in order to apply configuration changes and come into
service. This can take 5-10 minutes, depending on the performance of the host service. This can take 5-10 minutes, depending on the performance of the host
machine. machine.
.. only:: starlingx or platform
For Rook-Ceph: For Rook-Ceph:
#. List all the disks. #. List all the disks.
.. code-block:: none .. code-block:: none
@@ -1006,14 +998,14 @@ machine.
| 0c6435af-805a-4a62-ad8e-403bf916f5cf | /dev/sdc | 2080 | HDD | 9.765 | 9.761 | Undetermined | VBeefed5ad-b4815f0d | /dev/disk/by-path/pci-0000:00:0d.0-ata-3.0 | | 0c6435af-805a-4a62-ad8e-403bf916f5cf | /dev/sdc | 2080 | HDD | 9.765 | 9.761 | Undetermined | VBeefed5ad-b4815f0d | /dev/disk/by-path/pci-0000:00:0d.0-ata-3.0 |
+--------------------------------------+-------------+------------+-------------+----------+---------------+--------------+---------------------+--------------------------------------------+ +--------------------------------------+-------------+------------+-------------+----------+---------------+--------------+---------------------+--------------------------------------------+
#. Choose empty disks and provide hostname and uuid to finish |OSD| #. Choose empty disks and provide hostname and uuid to finish |OSD|
configuration: configuration:
.. code-block:: none .. code-block:: none
$ system host-stor-add controller-0 osd cee99187-dac4-4a7b-8e58-f2d5bd48dcaf $ system host-stor-add controller-0 osd cee99187-dac4-4a7b-8e58-f2d5bd48dcaf
#. Wait for |OSDs| pod to be ready. #. Wait for |OSDs| pod to be ready.
.. code-block:: none .. code-block:: none
@@ -1037,7 +1029,7 @@ machine.
rook-ceph-tools-7dc9678ccb-v2gps 1/1 Running 0 6m2s rook-ceph-tools-7dc9678ccb-v2gps 1/1 Running 0 6m2s
stx-ceph-manager-664f8585d8-wzr4v 1/1 Running 0 4m31s stx-ceph-manager-664f8585d8-wzr4v 1/1 Running 0 4m31s
#. Check ceph cluster health. #. Check ceph cluster health.
.. code-block:: none .. code-block:: none

View File

@@ -758,11 +758,6 @@ host machine.
If configuring host based Ceph Storage Backend, Add Ceph OSDs to controllers If configuring host based Ceph Storage Backend, Add Ceph OSDs to controllers
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
.. warning::
Currently |prod-os| does not support rook-ceph. If you plan on using
|prod-os|, choose host-based Ceph.
.. only:: starlingx and html .. only:: starlingx and html
.. tabs:: .. tabs::
@@ -834,23 +829,17 @@ Complete system configuration by reviewing procedures in:
- |index-sysconf-kub-78f0e1e9ca5a| - |index-sysconf-kub-78f0e1e9ca5a|
- |index-admintasks-kub-ebc55fefc368| - |index-admintasks-kub-ebc55fefc368|
.. only:: starlingx or platform
******************************************************************* *******************************************************************
If configuring Rook Ceph Storage Backend, configure the environment If configuring Rook Ceph Storage Backend, configure the environment
******************************************************************* *******************************************************************
.. warning:: .. note::
Currently |prod-os| does not support rook-ceph. If you plan on using
|prod-os|, choose host-based Ceph.
.. note::
Each deployment model enforces a different structure for the Rook Ceph Each deployment model enforces a different structure for the Rook Ceph
cluster and its integration with the platform. cluster and its integration with the platform.
#. Check if the rook-ceph app is uploaded. #. Check if the rook-ceph app is uploaded.
.. code-block:: none .. code-block:: none
@@ -868,7 +857,7 @@ Complete system configuration by reviewing procedures in:
| rook-ceph | 24.09-12 | rook-ceph-fluxcd-manifests | fluxcd-manifests | uploaded | completed | | rook-ceph | 24.09-12 | rook-ceph-fluxcd-manifests | fluxcd-manifests | uploaded | completed |
+--------------------------+-----------+-------------------------------------------+------------------+----------+-----------+ +--------------------------+-----------+-------------------------------------------+------------------+----------+-----------+
#. Add Storage-Backend with Deployment Model. #. Add Storage-Backend with Deployment Model.
There are three deployment models: Controller, Dedicated, and Open. There are three deployment models: Controller, Dedicated, and Open.
@@ -917,7 +906,7 @@ Complete system configuration by reviewing procedures in:
| | | | | | | min_replication: 1 | | | | | | | | min_replication: 1 |
+--------------------------------------+-----------------+-----------+----------------------+----------+------------------+---------------------------------------------+ +--------------------------------------+-----------------+-----------+----------------------+----------+------------------+---------------------------------------------+
#. Set up a ``host-fs ceph`` filesystem. #. Set up a ``host-fs ceph`` filesystem.
.. code-block:: none .. code-block:: none
@@ -925,7 +914,7 @@ Complete system configuration by reviewing procedures in:
$ system host-fs-add controller-1 ceph=20 $ system host-fs-add controller-1 ceph=20
$ system host-fs-add compute-0 ceph=20 $ system host-fs-add compute-0 ceph=20
#. List all the disks. #. List all the disks.
.. code-block:: none .. code-block:: none
@@ -954,7 +943,7 @@ Complete system configuration by reviewing procedures in:
| c9b4ed65-da32-4770-b901-60b56fd68c35 | /dev/sdc | 2080 | HDD | 9.765 | 9.761 | Undetermined | VBf88762a8-9aa3315c | /dev/disk/by-path/pci-0000:00:0d.0-ata-3.0 | | c9b4ed65-da32-4770-b901-60b56fd68c35 | /dev/sdc | 2080 | HDD | 9.765 | 9.761 | Undetermined | VBf88762a8-9aa3315c | /dev/disk/by-path/pci-0000:00:0d.0-ata-3.0 |
+--------------------------------------+-------------+------------+-------------+----------+---------------+--------------+---------------------+--------------------------------------------+ +--------------------------------------+-------------+------------+-------------+----------+---------------+--------------+---------------------+--------------------------------------------+
#. Choose empty disks and provide hostname and uuid to finish |OSD| #. Choose empty disks and provide hostname and uuid to finish |OSD|
configuration: configuration:
.. code-block:: none .. code-block:: none
@@ -962,13 +951,14 @@ Complete system configuration by reviewing procedures in:
$ system host-stor-add controller-0 osd fdaf3f71-a2df-4b40-9e70-335900f953a3 $ system host-stor-add controller-0 osd fdaf3f71-a2df-4b40-9e70-335900f953a3
$ system host-stor-add controller-1 osd 03cbb10e-fdc1-4d84-a0d8-6e02c22e3251 $ system host-stor-add controller-1 osd 03cbb10e-fdc1-4d84-a0d8-6e02c22e3251
$ system host-stor-add compute-0 osd c9b4ed65-da32-4770-b901-60b56fd68c35 $ system host-stor-add compute-0 osd c9b4ed65-da32-4770-b901-60b56fd68c35
#. Apply the rook-ceph application.
#. Apply the rook-ceph application.
.. code-block:: none .. code-block:: none
$ system application-apply rook-ceph $ system application-apply rook-ceph
#. Wait for |OSDs| pod to be ready. #. Wait for |OSDs| pod to be ready.
.. code-block:: none .. code-block:: none
@@ -1008,7 +998,7 @@ Complete system configuration by reviewing procedures in:
rook-ceph-tools-7dc9678ccb-srnd8 1/1 Running 1 (4h7m ago) 18h rook-ceph-tools-7dc9678ccb-srnd8 1/1 Running 1 (4h7m ago) 18h
stx-ceph-manager-664f8585d8-csl7p 1/1 Running 1 (4h7m ago) 18h stx-ceph-manager-664f8585d8-csl7p 1/1 Running 1 (4h7m ago) 18h
#. Check ceph cluster health. #. Check ceph cluster health.
.. code-block:: none .. code-block:: none

View File

@@ -67,6 +67,39 @@ Install application manifest and helm-charts
the current state of the underlying StarlingX Kubernetes platform and the the current state of the underlying StarlingX Kubernetes platform and the
recommended StarlingX configuration of OpenStack services. recommended StarlingX configuration of OpenStack services.
By default, |prefix|-openstack is configured to support Rook-Ceph
deployments. For host-based Ceph deployments, the following script needs to
be executed to override the ``ceph-config-helper`` image used by
|prefix|-openstack helm charts:
.. code-block:: none
NAMESPACE=openstack
APP_NAME=|prefix|-openstack
DOCKER_REGISTRY_URL=<your docker registry url> # e.g., myprivateregistry.abc.com:9001/docker.io
HOST_CEPH_IMAGE=${DOCKER_REGISTRY_URL}/openstackhelm/ceph-config-helper:ubuntu_bionic-20201223
OVERRIDE_CHARTS=(
"cinder" "cinder"
"glance"
"libvirt"
"nova" "nova"
)
OVERRIDE_IMAGES=(
"cinder_backup_storage_init" "cinder_storage_init" # Cinder images
"glance_storage_init" # Glance image
"ceph_config_helper" # libvirt image
"nova_service_cleaner" "nova_storage_init" # Nova images
)
for ((i=0; i<${#OVERRIDE_CHARTS[@]}; i++)); do
CHART=${OVERRIDE_CHARTS[$i]}
IMAGE=${OVERRIDE_IMAGES[$i]}
echo "Overriding ${IMAGE} image of ${CHART} chart"
system helm-override-update ${APP_NAME} ${CHART} ${NAMESPACE} \
--reuse-values --set images.tags.${IMAGE}=${HOST_CEPH_IMAGE}
done
#. Apply the |prefix|-openstack application in order to bring |prod-os| into #. Apply the |prefix|-openstack application in order to bring |prod-os| into
service. If your environment is preconfigured with a proxy server, then make service. If your environment is preconfigured with a proxy server, then make
sure HTTPS proxy is set before applying |prefix|-openstack. sure HTTPS proxy is set before applying |prefix|-openstack.