Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions ansible/group_vars/all.yml
Original file line number Diff line number Diff line change
Expand Up @@ -842,6 +842,7 @@ enable_cinder_backend_pure_iscsi: "no"
enable_cinder_backend_pure_fc: "no"
enable_cinder_backend_pure_roce: "no"
enable_cinder_backend_pure_nvme_tcp: "no"
enable_cinder_backend_vast: "no"
enable_cinder_backend_lightbits: "no"
enable_cloudkitty: "no"
enable_collectd: "no"
Expand Down Expand Up @@ -891,6 +892,7 @@ enable_manila_backend_cephfs_native: "no"
enable_manila_backend_cephfs_nfs: "no"
enable_manila_backend_glusterfs_nfs: "no"
enable_manila_backend_flashblade: "no"
enable_manila_backend_vast: "no"
enable_mariabackup: "no"
enable_masakari: "no"
enable_masakari_instancemonitor: "{{ enable_masakari | bool }}"
Expand Down
3 changes: 3 additions & 0 deletions ansible/roles/cinder/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,8 @@ cinder_backends:
enabled: "{{ enable_cinder_backend_pure_nvme_tcp | bool }}"
- name: "{{ cinder_backend_lightbits_name }}"
enabled: "{{ enable_cinder_backend_lightbits | bool }}"
- name: "{{ cinder_backend_vast_name }}"
enabled: "{{ enable_cinder_backend_vast | bool }}"

cinder_backend_ceph_name: "rbd-1"
cinder_backend_lvm_name: "lvm-1"
Expand All @@ -273,6 +275,7 @@ cinder_backend_pure_fc_name: "Pure-FlashArray-fc"
cinder_backend_pure_roce_name: "Pure-FlashArray-roce"
cinder_backend_pure_nvme_tcp_name: "Pure-FlashArray-nvme-tcp"
cinder_backend_lightbits_name: "Lightbits-NVMe-TCP"
cinder_backend_vast_name: "vast-nvme-tcp"

cinder_ceph_backends:
- name: "{{ cinder_backend_ceph_name }}"
Expand Down
1 change: 1 addition & 0 deletions ansible/roles/cinder/tasks/precheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
- not enable_cinder_backend_pure_roce | bool
- not enable_cinder_backend_pure_nvme_tcp | bool
- not enable_cinder_backend_lightbits | bool
- not enable_cinder_backend_vast | bool

- name: Checking LVM volume group exists for Cinder
become: true
Expand Down
12 changes: 12 additions & 0 deletions ansible/roles/cinder/templates/cinder.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,18 @@ lightos_skip_ssl_verify = {{ lightbits_skip_ssl_verify }}
lightos_jwt = {{ lightbits_JWT }}
{% endif %}

{% if enable_cinder_backend_vast | bool %}
[{{ cinder_backend_vast_name }}]
volume_driver = cinder.volume.drivers.vastdata.driver.VASTVolumeDriver
volume_backend_name = {{ cinder_backend_vast_name }}
vast_vippool_name = {{ cinder_vast_vippool_name }}
vast_subsystem = {{ cinder_vast_subsystem }}
san_ip = {{ cinder_vast_ip }}
san_api_port = {{ cinder_vast_port }}
san_login = {{ cinder_vast_username }}
san_password = {{ cinder_vast_password }}
{% endif %}

[privsep_entrypoint]
helper_command=sudo cinder-rootwrap /etc/cinder/rootwrap.conf privsep-helper --config-file /etc/cinder/cinder.conf

Expand Down
5 changes: 5 additions & 0 deletions ansible/roles/manila/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,11 @@ manila_backends:
enabled: "{{ enable_manila_backend_flashblade | bool }}"
protocols:
- "NFS"
- name: "vast1"
driver: "vast"
enabled: "{{ enable_manila_backend_vast | bool }}"
protocols:
- "NFS"


manila_ceph_backends:
Expand Down
13 changes: 13 additions & 0 deletions ansible/roles/manila/templates/manila-share.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -172,5 +172,18 @@ glusterfs_servers = {% for ip in manila_glusterfs_servers %}{% if manila_gluster
{% if manila_glusterfs_ssh_password is defined %}glusterfs_server_password = {{ manila_glusterfs_ssh_password }}{% endif %}
{% endif %}

{% if enable_manila_backend_vast | bool %}
[vast1]
share_backend_name = VAST1
share_driver = manila.share.drivers.vastdata.driver.VASTShareDriver
snapshot_support = true
driver_handles_share_servers = false
vast_mgmt_host = {{ manila_vast_mgmt_host }}
vast_mgmt_user = {{ manila_vast_mgmt_user }}
vast_mgmt_password = {{ manila_vast_mgmt_password }}
vast_vippool_name = {{ manila_vast_vippool_name }}
vast_root_export = {{ manila_vast_root_export | default("manila") }}
{% endif %}

[oslo_concurrency]
lock_path = /var/lib/manila/tmp
3 changes: 3 additions & 0 deletions doc/source/reference/storage/cinder-guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,9 @@ that appears in cinder.conf:
* - Lightbits Labs storage backend
- cinder_backend_lightbits_name
- Lightbits-NVMe-TCP
* - VAST storage backend
- cinder_backend_vast_name
- vast-nvme-tcp

These are the names you use when
`configuring <https://docs.openstack.org/cinder/latest/admin/multi-backend.html#volume-type>`_
Expand Down
1 change: 1 addition & 0 deletions doc/source/reference/storage/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,4 @@ supported by kolla.
manila-guide
manila-hnas-guide
manila-pure-guide
manila-vast-guide
37 changes: 37 additions & 0 deletions doc/source/reference/storage/manila-vast-guide.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
.. _manila-vast-guide:

==========================================================
VAST Manila Driver for OpenStack
==========================================================

VAST Share Driver integrates OpenStack with VAST Data's Storage System.
Shares in the Shared File System service are mapped to directories
on VAST, and are accessed via NFS protocol using a Virtual IP Pool.

For more details on how to use the VAST driver, refer to the
`VAST share driver docs <https://docs.openstack.org/manila/latest/configuration/shared-file-systems/drivers/vastdata_driver.html>`_.

Configuration on Kolla deployment
---------------------------------

Enable Manila and the VAST driver in ``/etc/kolla/globals.yml``:

.. code-block:: yaml

enable_manila: "yes"
enable_manila_backend_vast: "yes"

In ``/etc/kolla/globals.yml`` uncomment and set:

.. code-block:: yaml

manila_vast_mgmt_host: "<hostname or IP for VAST REST API>"
manila_vast_mgmt_user: "<username>"
vast_mgmt_password: "<password>"
manila_vast_vippool_name: "<virtual IP pool name>"

The driver assumes tenant networks that which to mount
their VAST backed NFS file shares are able to route to the
VAST virtual IP pool you have chosen.
By default, the driver will create shares under
``/manila`` base export on VAST.
9 changes: 9 additions & 0 deletions etc/kolla/globals.yml
Original file line number Diff line number Diff line change
Expand Up @@ -351,6 +351,7 @@ workaround_ansible_issue_8743: yes
#enable_cinder_backend_pure_roce: "no"
#enable_cinder_backend_pure_nvme_tcp: "no"
#enable_cinder_backend_lightbits: "no"
#enable_cinder_backend_vast: "no"
#enable_cloudkitty: "no"
#enable_collectd: "no"
#enable_cyborg: "no"
Expand Down Expand Up @@ -396,6 +397,7 @@ workaround_ansible_issue_8743: yes
#enable_manila_backend_cephfs_nfs: "no"
#enable_manila_backend_glusterfs_nfs: "no"
#enable_manila_backend_flashblade: "no"
#enable_manila_backend_vast: "no"
#enable_mariabackup: "no"
#enable_masakari: "no"
#enable_mistral: "no"
Expand Down Expand Up @@ -718,6 +720,13 @@ workaround_ansible_issue_8743: yes
#manila_glusterfs_target:
#manila_glusterfs_mount_point_base:

# Vast configuration for Manila
#manila_vast_mgmt_host:
#manila_vast_mgmt_user:
#manila_vast_mgmt_password:
#manila_vast_vippool_name:
#vast_root_export:

###################################
# VMware - OpenStack VMware support
###################################
Expand Down
4 changes: 4 additions & 0 deletions releasenotes/notes/add-vast-cinder-ff908a6ec0077508.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
features:
- |
Add support for VAST cinder driver.
4 changes: 4 additions & 0 deletions releasenotes/notes/add-vast-manila-614251e3a21e1d29.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
features:
- |
Added support for the VAST storage backend in Manila.