Merge "Add NVMe-RoCE Cinder driver support for Pure Storage"

This commit is contained in:
Zuul 2022-11-16 20:57:24 +00:00 committed by Gerrit Code Review
commit a28af74982
7 changed files with 33 additions and 3 deletions

View File

@ -642,6 +642,7 @@ enable_cinder_backend_nfs: "no"
enable_cinder_backend_quobyte: "no"
enable_cinder_backend_pure_iscsi: "no"
enable_cinder_backend_pure_fc: "no"
enable_cinder_backend_pure_roce: "no"
enable_cloudkitty: "no"
enable_collectd: "no"
enable_cyborg: "no"

View File

@ -245,6 +245,8 @@ cinder_backends:
enabled: "{{ enable_cinder_backend_pure_iscsi | bool }}"
- name: "{{ cinder_backend_pure_fc_name }}"
enabled: "{{ enable_cinder_backend_pure_fc | bool }}"
- name: "{{ cinder_backend_pure_roce_name }}"
enabled: "{{ enable_cinder_backend_pure_roce | bool }}"
cinder_backend_ceph_name: "rbd-1"
cinder_backend_lvm_name: "lvm-1"

View File

@ -40,6 +40,7 @@
- not enable_cinder_backend_quobyte | bool
- not enable_cinder_backend_pure_iscsi | bool
- not enable_cinder_backend_pure_fc | bool
- not enable_cinder_backend_pure_roce | bool
- name: Checking LVM volume group exists for Cinder
become: true

View File

@ -204,6 +204,14 @@ san_ip = {{ pure_san_ip }}
pure_api_token = {{ pure_api_token }}
{% endif %}
{% if enable_cinder_backend_pure_roce | bool %}
[{{ cinder_backend_pure_roce_name }}]
volume_backend_name = {{ pure_roce_backend }}
volume_driver = cinder.volume.drivers.pure.PureNVMEDriver
san_ip = {{ pure_san_ip }}
pure_api_token = {{ pure_api_token }}
{% endif %}
[privsep_entrypoint]
helper_command=sudo cinder-rootwrap /etc/cinder/rootwrap.conf privsep-helper --config-file /etc/cinder/cinder.conf

View File

@ -25,6 +25,20 @@ configure the ``FlashArray FC`` Cinder driver in ``/etc/kolla/globals.yml``.
.. end
To use the ``Pure Storage FlashArray NVMe-RoCE`` Cinder backend, enable and
configure the ``FlashArray NVMe-RoCE`` Cinder driver in
``/etc/kolla/globals.yml``.
.. code-block:: yaml
enable_cinder_backend_pure_roce: "yes"
.. end
.. note::
The NVMe-RoCE driver is only supported from OpenStack Zed and later.
It is important to note that you cannot mix iSCSI and FC Pure Storage
FlashArray drivers in the same OpenStack cluster.
@ -34,16 +48,16 @@ Also set the values for the following parameters in ``/etc/kolla/globals.yml``:
- ``pure_san_ip``
For details on how to use these parameters, refer to the
`Pure Storage Cinder Reference Guide<https://docs.openstack.org/cinder/latest/configuration/block-storage/drivers/pure-storage-driver.html>__`.
`Pure Storage Cinder Reference Guide <https://docs.openstack.org/cinder/latest/configuration/block-storage/drivers/pure-storage-driver.html>`_.
There are numerous other parameters that can be set for this driver and
these are detailed in the above link.
If you wish to use any of these parameters then refer to the
`Service Configuration<https://docs.openstack.org/kolla-ansible/latest/admin/advanced-configuration.html#openstack-service-configuration-in-kolla>__`
`Service Configuration <https://docs.openstack.org/kolla-ansible/latest/admin/advanced-configuration.html#openstack-service-configuration-in-kolla>`_
documentation for instructions using the INI update strategy.
The use of this backend requires that the ``purestorage`` SDK package is
installed in the ``cinder-volume`` container. To do this follow the steps
outlined in the `kolla image building guide<https://docs.openstack.org/kolla/latest/admin/image-building.html>__`
outlined in the `kolla image building guide <https://docs.openstack.org/kolla/latest/admin/image-building.html>`_
particularly the ``Package Customisation`` and ``Custom Repos`` sections.

View File

@ -247,6 +247,9 @@ that appears in cinder.conf:
* - Pure Storage FlashArray for OpenStack
- cinder_backend_pure_fc_name
- Pure-FlashArray-fc
* - Pure Storage FlashArray for OpenStack
- cinder_backend_pure_roce_name
- Pure-FlashArray-roce
These are the names you use when
`configuring <https://docs.openstack.org/cinder/latest/admin/multi-backend.html#volume-type>`_

View File

@ -315,6 +315,7 @@ workaround_ansible_issue_8743: yes
#enable_cinder_backend_quobyte: "no"
#enable_cinder_backend_pure_iscsi: "no"
#enable_cinder_backend_pure_fc: "no"
#enable_cinder_backend_pure_roce: "no"
#enable_cloudkitty: "no"
#enable_collectd: "no"
#enable_cyborg: "no"