57 Commits

Author SHA1 Message Date
Jenkins
930a3fb921 Merge "Add snapshot instances admin APIs" 2016-08-01 16:39:18 +00:00
Jenkins
56c0d2eb19 Merge "Huawei: Support reporting disk type of pool" 2016-07-31 03:27:16 +00:00
Jay Xu
86383ff900 Add EMC Unity Driver for Manila
EMC Unity arrays are capable of support manila.
Add a new Unity plugin in manila which allows user to create NFS/CIFS
share with a Unity backend.

The plugin should support following APIs:

* connect: Connect to the Unity Storage.
* check_for_setup_error: No implementation.
* create_share: Create a share and export it based on the protocol used
  (NFS or CIFS).
* create_share_from_snapshot: Create a share from a snapshot - clone a
  snapshot.
* delete_share: Delete a share.
* extend_share: Extend the maximum size of a share.
* create_snapshot: Create a snapshot for the specified share.
* delete_snapshot: Delete the snapshot of the share.
* allow_access: Allow access of a user/host to a share.
* deny_access: Remove the access of a user/host to the share.
* ensure_share: Check whether share exists or not.
* update_share_stats: Retrieve share related statistics from Unity.
* get_network_allocatins_number: Returns number of network allocations
  for creating VIFs.
* setup_server: Set up and configures share server with given network
  parameters.
* teardown_server: Tear down the share server.

DocImpact
Co-Authored-By: Cedric Zhuang <cedric.zhuang@emc.com>
Change-Id: Ic520539341fa19ec5c6c6b85c3c1dcecf70e5141
Implements: blueprint emc-unity-manila-support
2016-07-28 23:13:29 -07:00
zhongjun
8a487bf95d Add snapshot instances admin APIs
Add new API entry points for share snapshot instances:
- share-snapshot-instance-list
- share-snapshot-instance-show
- share-snapshot-instance-reset-status

APIImpact
DocImpact

Implements: blueprint snapshot-instances
Change-Id: Ica1e81012f19926e0f1ba9cd6d8eecc5fbbf40b5
2016-07-29 11:21:35 +08:00
Jenkins
20adb836c3 Merge "Add interface port configuration in EMC VNX driver" 2016-07-27 20:51:37 +00:00
Jenkins
60a32f13f8 Merge "NetApp: Report hybrid aggregates in share stats" 2016-07-27 17:38:54 +00:00
Valeriy Ponomaryov
d953baefcb [ZFSonLinux] Add 'manage snapshot' feature support
Implement 'manage snapshot' feature in ZFSonLinux share driver.

Prerequisites:
- snapshot being managed should exist.

Details:
- snapshot being managed will be renamed by share driver based on
  taken ID.
- size for managed snapshot will be taken either from
  REST API (--driver_options size=5) or
  from its "used" attribute.

Implements BP zfsonlinux-manage-snapshot
DocImpact

Change-Id: If240ecde5676c334d39faaccd5703e93544aaa06
Depends-On: Ifc762a882a78159adacfe168a4edbe824178301a
2016-07-27 10:51:31 +03:00
Jenkins
71a720e466 Merge "[ZFSonLinux] Add 'manage share' feature support" 2016-07-26 20:08:29 +00:00
Jenkins
4e9f52022f Merge "Add share manage/unmanage of Oracle ZFSSA driver" 2016-07-26 18:11:19 +00:00
Clinton Knight
4c4ee90854 NetApp: Report hybrid aggregates in share stats
NetApp cDOT controllers can mix SSDs and spinning disks
in the same aggregate, where the SSDs are used for a
cache.  This commit reports the hybrid aggregate attribute
as well as the aggregate name to the scheduler for each
pool for use in extra specs matching.

Implements: blueprint netapp-report-cdot-hybrid-aggrs-manila
Change-Id: Iaa0bcd79789449f977b48f1de2adf997c936db61
2016-07-25 22:16:00 +00:00
Jenkins
d8fc557289 Merge "Add DriverFilter and GoodnessWeigher to manila" 2016-07-22 19:05:00 +00:00
liuke2
fed9412f13 Huawei: Support reporting disk type of pool
Adding support for reporting disk type of pool in huawei manila
driver. When creating share we can specify the disk type of the
pool we want to use ssd/sas/nl_sas/mix, manila driver will report
the disk type of the pools.

Implements: blueprint huawei-pool-disktype-support
Change-Id: I1f694e8c93f79851f838d226830d9ab5344cf35a
2016-07-22 01:47:14 +00:00
mark.sturdevant
6f506a8705 HPE3PAR: Handle exceptions on deleted shares
Fix to ensure that an attempt to delete a manila share will not
fail because the 3PAR filestore does not exist. When the filestore
does not exist, that means the share is already gone (or never was
created). Avoid the delete and all filestore use in this case to
prevent failures during delete.

Also catch and log exceptions during the post-delete cleanup.

Change-Id: I0e477d3dae5706547354bd029b40e3308349fabb
Closes-Bug: #1597940
2016-07-21 20:17:27 +00:00
Jenkins
e50114897c Merge "Huawei driver support access of all IPs" 2016-07-21 17:51:05 +00:00
Jenkins
ea307ccb49 Merge "Huawei: Add share sectorsize config in Huawei driver" 2016-07-21 12:23:52 +00:00
Juan Antonio Osorio Robles
a4625e7e7f Add reno notes about http_proxy_to_wsgi middleware
This note is meant for Id33a0f7eeb8ced77d09f9edd6b1d65697d8bcfe7

Change-Id: Ifee7256a67a2a9722879e85b109258f05fb1f349
2016-07-20 12:12:32 +00:00
tpsilva
f10776d832 Add DriverFilter and GoodnessWeigher to manila
This patch ports cinder's DriverFilter and GoodnessWeigher to manila.
These can use two new properties provided by backends,
'filter_function' and 'goodness_function', which can be used to filter
and weigh qualified backends, respectively.

Reference for cinder spec: I59b607a88953a346aa35e67e785a0417a7ce8cc9
Reference for cinder commit: I38408ab49b6ed869c1faae746ee64a3bae86be58

DocImpact
Change-Id: I873f4152e16efdeb30ceae26335a7974dc9b4b69
Implements: blueprint driver-filter-goodness-weigher
2016-07-18 17:28:40 -03:00
Tina Tang
55b04441ab Add interface port configuration in EMC VNX driver
Add a new list option 'emc_interface_ports' to configure the network
devices that can be used by share servers. And refined managed pools
selection method to use a new utility method.

DocImpact
Change-Id: Id44ca5e3e64b5a540c91119698e5191366cabfc5
Closes-Bug: #1600117
2016-07-14 09:27:15 +00:00
liucheng
96795787ae Huawei: Add share sectorsize config in Huawei driver
Data in the file system consists of fixed-length disk blocks.
The size of the blocks (also known as file system sector size)
affects disk space usage and performance.
The value of blocks can be 4 KB, 8 KB, 16 KB, 32 KB, or 64 KB.

Change-Id: I95a9aa7e071c470c21dc0fa009ba96a7c7439ce6
Implements: blueprint huawei-driver-block-size-config
2016-07-13 12:56:19 +08:00
zhaohua
aa6a0e229b Huawei driver support access of all IPs
In access-allow and access-deny, change 0.0.0.0/0 to asterisk(*)
to represent IP addresses of all clients.

Change-Id: I7b79cf5fde88ba8eb273d71d6eb40bea5b744673
Closes-Bug: #1576557
2016-07-12 14:50:24 +08:00
Diem Tran
b0437670f2 Add share manage/unmanage of Oracle ZFSSA driver
- Manage share: ask Manila to take control of an existing ZFSSA share
not managed by Manila driver. Current share size will be rounded up
to the nearest whole GB value.
- Unmanage share: ask Manila to release control of a ZFSSA share
managed by the driver.

Change-Id: I0d4a46211dfd15cb7a261eddfa8c14be26adcfc3
Implements: blueprint oracle-zfssa-share-manage
2016-07-05 15:58:18 -04:00
Valeriy Ponomaryov
f284db4e07 [ZFSonLinux] Add 'manage share' feature support
Implement 'manage share' feature in ZFSonLinux share driver.

Prerequisites:
- share being managed should exist.
- share being managed should not be part of any replication relations.
- share being managed should not have redefined mountpoint.

Details:
- share being managed will be renamed by share driver based on taken ID.
- share being managed will get "quota" attribute set based on provided
  value in API (--driver_options size=5) or it will set quota
  to nearest bigger rounded integer of already
  used space (2,4 -> 3, 3.6 -> 4).

Implements blueprint zfsonlinux-manage-share
DocImpact

Change-Id: I03eab5e02835fe660dde0020601c02c0136bddeb
2016-07-04 13:26:57 +03:00
Jenkins
fdc1158562 Merge "Add gateway in network_info and share network API" 2016-07-01 04:04:51 +00:00
Jenkins
1e24c27317 Merge "Manage / unmanage snapshot in NetApp cDOT drivers" 2016-07-01 01:40:17 +00:00
Clinton Knight
4bac8b64e0 Manage / unmanage snapshot in NetApp cDOT drivers
With snapshot manage / unmanage in Manila core, we can
support that in the NetApp single-SVM driver.

Implements: blueprint netapp-cdot-snapshot-manage-unmanage
Change-Id: I7c6c005fb3fd8613da9e9ac04b9dd832781e35ca
2016-06-30 16:25:14 +00:00
Jay Xu
d98222a654 Add gateway in network_info and share network API
Get gateway information from network plugin and put it into network_info.
It is required by EMC Unity storage to create a interface.

APIImpact
DocImpact

Change-Id: I8614b8686af7fa5764b49e8e3cb4a4855dc3a5f4
Implements: blueprint add-gateway-info
2016-06-30 12:08:12 -04:00
Marc Koderer
33ebd2742c Change user_id and project_id to 255 length
In case keystone is used with LDAP the user_id/project_id can be more
than 60 characters. This will cause the issue that users cannot create
any share-network or security_service.

Change-Id: I2e2ccce32bf31850c9ffd74d9612cf5237d782fe
Closes-bug: #1594824
2016-06-22 16:00:06 +02:00
Jenkins
62e01f076a Merge "Add user_id and project_id to snapshot APIs" 2016-06-20 13:26:40 +00:00
Jenkins
58970a603c Merge "Huawei: Add manage share snapshot in Huawei driver" 2016-06-17 13:33:23 +00:00
Goutham Pacha Ravi
eb784f1807 Add user_id and project_id to snapshot APIs
In a cloud with multi-tenancy, administrators
would like to see the project_id of the tenant
while listing snapshots of all tenants.

Likewise, we also should expose the user_id field
as it would help in cases where tenants have multiple
users.

DocImpact
User and administrator references need to capture
this information.

APIImpact
API changes are micro-versioned.

Change-Id: I3ad655dc9ab7440f205b0e153fccaa99abb79bbd
Closes-Bug: #1587161
2016-06-16 18:38:15 -04:00
Jenkins
4c85f6a99c Merge "Delete VLAN on delete_vserver in Netapp cmode" 2016-06-13 15:35:57 +00:00
liucheng
d1303438e9 Huawei: Add manage share snapshot in Huawei driver
Manage share snapshot on the array,
before managing the snapshot, make sure that the
source share is managed by OpenStack.

Implements: blueprint huawei-driver-manage-snapshot
Change-Id: I085106dccec5d371771fa112898e980bae182d11
2016-06-12 01:07:19 +00:00
Tom Patzig
a1f33c9e8f Delete VLAN on delete_vserver in Netapp cmode
Currently when DHSS=true with a Netapp cmode backend
during vserver creation, lifs and VLANs get created.
But on cleanup everything gets removed except the VLANs.
This patch removes the vlans at the end of vserver deletion.
Netapp prevents deleting VLANs with existing lifs on it.

Change-Id: Id0b56bbce8e5e9b8707f22d401d99c7867372a50
Closes-Bug: #1580163
2016-06-10 17:10:43 +02:00
Ramana Raja
05dcc06dde cephfs_native: Fix client eviction
During deny access, the driver evicts client based on its auth ID
and the share its accessing. It does not make the correct use of
ceph_volume_client library to do this. So fix the evict method call.

Closes-Bug: #1567298

Change-Id: I707d1f2d455106f45c35aa28ca2a30fb0460f9e8
2016-06-09 13:16:10 -04:00
Jenkins
94bf149b43 Merge "HPE3PAR driver doesn't decrease fstore capacity" 2016-06-04 01:58:46 +00:00
Jenkins
18640f689c Merge "Fix badly formatted release note" 2016-06-02 13:17:20 +00:00
stack
e603ef064e HPE3PAR driver doesn't decrease fstore capacity
1.This patch reduces the fsquota when a share is deleted
for shared fstores.

Change-Id: Ib20646696e6ee6c7c216530697c35a54eabede43
Closes-Bug:#1582931
2016-06-01 23:24:19 -07:00
Jenkins
6eb8844d97 Merge "Fix HDS HNAS errors caused by incorrect IDs" 2016-06-01 20:39:50 +00:00
Goutham Pacha Ravi
33f4e3d06a Fix badly formatted release note
TrivialFix

Change-Id: I4e8903124ff2ea932cd0d2d7937b8a78b3722a72
2016-06-01 14:24:21 -04:00
Rodrigo Barbieri
081fc4860b Fix HDS HNAS errors caused by incorrect IDs
When attempting to allow_access on a managed share, it fails
because the proper share ID is not retrieved from private storage
prior to attempting to validate that the share exists in the
backend. The same happens when trying to create a share from a
snapshot created from a managed share, the proper share ID is
not retrieved from private storage. While we are dealing with
two possible different IDs it is important to properly display
the API share ID in log messages so it can be matched to the
share instances ID, and not all log messages are accurately doing
so.

This change addresses this by retrieving the ID from
private storage first for update_access and
create_share_from_snapshot operations. The proper unit test changes
included in this patch required a refactor of several IDs to ensure
this problem is addressed in unit tests, thus it made sense to
address several bugs caused by the same problem, having the same fix
and requiring modifications to the same lines of code.

Closes-bug: #1581541
Closes-bug: #1584179
Closes-bug: #1583785
Change-Id: I8cdb1a8a72a4ac7e710f57e3c288d48cd2adf0dd
2016-05-30 15:27:45 -03:00
zhongjun
548975ee2d Huawei: Fix exception in update_access not found
When share is deleted in the backend, user is unable to delete
share because of error thrown in update_access(). Make backend raise
ShareResourceNotFound exception in case share not found during
"update_access" operation, because share manager expects it for
proper handling of share deletion, thus allowing share to be
deleted in this case, without having to use force-delete.

After add ShareResourceNotFound exception, it will need a parameter
named share id(share['id']), so add share id to share info in
create_share_from_snapshot function.

Change-Id: I9756ff882e6960b07f5f0abac94057c687830ad0
Closes-Bug: #1585035
2016-05-26 09:19:09 +08:00
Jenkins
b771466cba Merge "Fix share server info in CGs created from CGs" 2016-05-12 16:19:30 +00:00
Jenkins
27b2974cb4 Merge "Delete Snapshot: status wrongly set when busy" 2016-05-12 11:50:51 +00:00
Jenkins
fc518706c0 Merge "Remove deprecated manila RequestBodySizeLimiter" 2016-05-11 17:00:44 +00:00
Jenkins
14a5581748 Merge "Add user_id echo in manila show/create/manage API" 2016-05-11 16:32:14 +00:00
zhongjun
4334a067f0 Add user_id echo in manila show/create/manage API
Add "user_id" detail when we run command
"manila show/create/manage ...". Make the operator know
which user created this share.

APIImpact

Closes-Bug: #1562846
Change-Id: I2858c7f63182288f354b96448f0970d3642d4bf7
2016-05-11 09:16:21 +08:00
Tom Barron
e03d3d2ebe Remove deprecated manila RequestBodySizeLimiter
In kilo, the manila  functionality for limiting request body size was
was moved to oslo.middleware library [1] and compatibility shims and
deprecation log messages were added for the manila
RequestBodySizeLimiter, whose function had been superceded by the
equivalent oslo library object.

It has now been more than two releases since the deprecation so
this commit removes the compatibility shims and log messages.

[1] I10c3cbeb9d43b504f14375df4dac87b323fab5bf

Change-Id: I01cc6585c15af9b13b178e26d4b469825dbd562c
2016-05-09 17:09:18 -04:00
Goutham Pacha Ravi
118d440a90 Fix share server info in CGs created from CGs
Currently when a POST request is made to /consistency-groups
with a source cg-snapshot, the API does not register the share
network information (share_server_id and share_network_id) in
the database row newly created for the CG being created.

This information is essential to any shares that are being created
along with the consistency group.

- Disallow providing a share_network_id when using a source cg_snapshot_id
- Copy share network information from the parent CG
- Fix the share_server_id that was incorrect in the API response

 APIImpact

 Closes-Bug: #1571594
 Closes-Bug: #1572742

Change-Id: I1c3581c81e0b845f46eef3cd0acddb55850447a5
2016-05-09 16:58:44 +00:00
nidhimittalhada
69eaebc774 Delete Snapshot: status wrongly set when busy
This fix sets the snapshot status correctly to 'error_deleting',
when snapshot reported to be busy by backend driver.

Change-Id: Iecfd32b8265ce9f7cdfcba6d89397f269024b75d
Closes-Bug: #1564623
2016-05-09 11:51:49 +05:30
Rodrigo Barbieri
0d6de50888 Fix HNAS error with unconfined filesystems
Unconfined filesystems created through CLI in HNAS caused driver's
parser to break. It was found that the command breaking could be
replaced by another, already used command, which also retrieves
filesystem information, and it is preferred, so previous command
has been replaced.

Additionally, administrator may not want to automatically mount
an unmounted filesystem in DHSS=False mode, which may be unmounted
for maintenance, so changed behavior to not mount automatically.

Change-Id: I69e7a51ed4485783868c44e58b93bc69b58c8ac2
Closes-bug: #1571000
2016-05-06 09:00:33 -03:00