Skip to content
Open
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
1 change: 1 addition & 0 deletions doc/source/admin/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -104,3 +104,4 @@ each back end.
nexentastor5_driver
../configuration/shared-file-systems/drivers/windows-smb-driver
zadara_driver
vastdata_driver
8 changes: 8 additions & 0 deletions doc/source/admin/share_back_ends_feature_support_mapping.rst
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ Mapping of share drivers and share features support
+----------------------------------------+-----------------------+-----------------------+--------------------------+--------------------------+------------------------+-----------------------------------+--------------------------+--------------------+--------------------+
| Pure Storage FlashBlade | X | \- | X | X | X | \- | \- | X | \- |
+----------------------------------------+-----------------------+-----------------------+--------------------------+--------------------------+------------------------+-----------------------------------+--------------------------+--------------------+--------------------+
| Vastdata | X | \- | X | X | X | \- | \- | \- | \- |
+----------------------------------------+-----------------------+-----------------------+--------------------------+--------------------------+------------------------+-----------------------------------+--------------------------+--------------------+--------------------+

Mapping of share drivers and share access rules support
-------------------------------------------------------
Expand Down Expand Up @@ -180,6 +182,8 @@ Mapping of share drivers and share access rules support
+----------------------------------------+--------------+--------------+----------------+------------+--------------+--------------+--------------+----------------+------------+------------+
| Pure Storage FlashBlade | NFS (X) | \- | \- | \- | \- | NFS (X) | \- | \- | \- | \- |
+----------------------------------------+--------------+--------------+----------------+------------+--------------+--------------+--------------+----------------+------------+------------+
| Vastdata | NFS (X) | \- | \- | \- | \- | NFS (X) | \- | \- | \- | \- |
+----------------------------------------+--------------+--------------+----------------+------------+--------------+--------------+--------------+----------------+------------+------------+

Mapping of share drivers and security services support
------------------------------------------------------
Expand Down Expand Up @@ -255,6 +259,8 @@ Mapping of share drivers and security services support
+----------------------------------------+------------------+-----------------+------------------+
| Pure Storage FlashBlade | \- | \- | \- |
+----------------------------------------+------------------+-----------------+------------------+
| Vastdata | \- | \- | \- |
+----------------------------------------+------------------+-----------------+------------------+

Mapping of share drivers and common capabilities
------------------------------------------------
Expand Down Expand Up @@ -332,6 +338,8 @@ More information: :ref:`capabilities_and_extra_specs`
+----------------------------------------+-----------+------------+--------+-------------+-------------------+--------------------+-----+----------------------------+--------------------+--------------------+--------------+--------------+-------------------------+--------------------------+
| Pure Storage FlashBlade | \- | X | \- | \- | X | \- | \- | \- | X | \- | X | \- | \- | \- |
+----------------------------------------+-----------+------------+--------+-------------+-------------------+--------------------+-----+----------------------------+--------------------+--------------------+--------------+--------------+-------------------------+--------------------------+
| Vastdata | \- | X | \- | \- | \- | \- | \- | \- | \- | \- | X | \- | \- | \- |
+----------------------------------------+-----------+------------+--------+-------------+-------------------+--------------------+-----+----------------------------+--------------------+--------------------+--------------+--------------+-------------------------+--------------------------+

.. note::

Expand Down
76 changes: 76 additions & 0 deletions doc/source/admin/vastdata_driver.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
..
Copyright 2020 VAST Data Inc.
All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.

====================================
Vastdata Driver for OpenStack Manila
====================================

The `Vastdata <https://www.vastdata.com>`__ Manila driver
provides NFS and CIFS shared file systems to Openstack.

Requirements
------------

- Vastdata cluster must be configured with Trash API enabled. # TODO describe; add more requirements (if needed)

Supported Operations
--------------------

The following operations are supported on an Vastdata cluster:

* Create NFS Share
* Delete NFS Share
* Allow NFS Share access
* Deny NFS Share access
* Create snapshot
* Delete snapshot
* Extend share

Backend Configuration
---------------------

The following parameters need to be configured in the manila configuration file
for the Vastdata driver:

* share_driver = manila.share.drivers.vastdata.VASTShareDriver
* emc_share_backend = vast
* vast_mgmt_host = <IP address of Vastdata cluster>
* vast_mgmt_port = <port to use for Vastdata cluster (optional)>
* vast_mgmt_user = <username>
* vast_mgmt_password = <password>
* vast_vippool_name = # TODO describe
* vast_root_export = # TODO describe


Restart of :term:`manila-share` service is needed for the configuration changes to take
effect.

Restrictions
------------

The Vastdata driver has the following restrictions:

- Only IP access type is supported for NFS.


The :mod:`manila.share.drivers.vastdata` Module
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. automodule:: manila.share.drivers.dell_emc.driver
:noindex:
:members:
:undoc-members:
:show-inheritance:
1 change: 1 addition & 0 deletions doc/source/configuration/shared-file-systems/drivers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ Share drivers
drivers/windows-smb-driver.rst
drivers/nexentastor5-driver.rst
drivers/purestorage-flashblade-driver.rst
drivers/vastdata_driver.rst


To use different share drivers for the Shared File Systems service, use the
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
====================================
Vastdata Share Driver
====================================

Vastdata can be used as a storage back end for the OpenStack Shared File
System service. Shares in the Shared File System service are mapped 1:1
to Vastdata volumes. Access is provided via NFS protocol and IP-based
authentication. The Vastdata driver uses the Vastdata API service.

Supported shared filesystems
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The driver supports NFS shares.

Operations supported
~~~~~~~~~~~~~~~~~~~~
The driver supports NFS shares.

The following operations are supported:

- Create a share.

- Delete a share.

- Allow share access.

- Deny share access.

- Extend a share.

- Shrink a share.


Operations not supported
~~~~~~~~~~~~~~~~~~~~~~~~

- Manage and unmanage

Requirements
~~~~~~~~~~~~

- Trash API must be enabled on Vastdata cluster.

# TODO. Any additional requirements on Opestack side or Vastdata side?

Pre-configuration on Vastdata cluster
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# TODO. Describe how to enable Trash API on Vastdata cluster. (Anything else?)
# TODO Do we want to support ssl certificates in current implementation? If so describe.

Driver options
~~~~~~~~~~~~~~

The following table contains the configuration options specific to the
share driver.

.. include:: ../../tables/manila-vastdata.inc


HPE 3PAR Manila driver configuration example
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The following parameters shows a sample subset of the ``manila.conf`` file,
which configures two backends and the relevant ``[DEFAULT]`` options. A real
configuration would include additional ``[DEFAULT]`` options and additional
sections that are not discussed in this document:

.. code-block:: ini

[DEFAULT]
enabled_share_backends = vast
enabled_share_protocols = NFS

[vast]
share_driver = manila.share.drivers.vastdata.VASTShareDriver
share_backend_name = vast
driver_handles_share_servers = False
snapshot_support = True
vast_mgmt_host = {vms_ip}
vast_mgmt_port = {vms_port}
vast_mgmt_user = {mgmt_user}
vast_mgmt_password = {mgmt_password}
vast_vippool_name = {vip_pool}
vast_root_export = {root_export}
32 changes: 32 additions & 0 deletions doc/source/configuration/tables/manila-vastdata.inc
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.

The tool to generate this file lives in openstack-doc-tools repository.

Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.

.. _manila-vastdata:

.. list-table:: Description of Vastdata share driver configuration options
:header-rows: 1
:class: config-ref-table

* - Configuration option = Default value
- Description
* - **[DEFAULT]**
-
* - ``vast_mgmt_host`` =
- (String) Hostname or IP address VAST storage system management VIP.
* - ``vast_mgmt_port`` = ``443``
- (String) Port for VAST management API.
* - ``vast_vippool_name`` =
- (String) Name of Virtual IP pool.
* - ``vast_root_export`` = ``manila``
- (String) Base path for shares.
* - ``vast_mgmt_user`` =
- (String) Username for VAST management API.
* - ``vast_mgmt_password`` =
- (String) Password for VAST management API.