15268 Commits

Author SHA1 Message Date
Zuul
7c1e989912 Merge "RBD: Handle ImageNotFound exception in _get_usage_info correctly" 2018-04-25 20:24:58 +00:00
Zuul
e02e4f8fb3 Merge "Add Keystone v3 domain information to context" 2018-04-25 18:06:08 +00:00
Eric Harney
6ddd7d8b75 Add Keystone v3 domain information to context
Keystone v3 requires domain info to be supplied when
making calls to Keystone.  Not providing this means
that Cinder can't work with deployments that only
support Keystone v3.

(Specifically, this fails when trying to communicate
with Keystone/Barbican from Cinder.)

The domain information is retrieved from HTTP headers
provided by Keystone and stored in our context object.

This includes both "<x>_domain" and "<x>_domain_id"
in our context object, since castellan depends on
project_domain_id, but oslo.context has deprecated
project_domain and user_domain.

Closes-Bug: #1765766
Change-Id: If389788f06a3cee75b30485e90e05745d559e2ed
2018-04-25 09:29:33 -04:00
Zuul
1d31f244c8 Merge "Add missing VolumeAttachStatus enum field" 2018-04-25 07:43:36 +00:00
Zuul
aaac96102f Merge "Trivial: Update pypi url to new url" 2018-04-25 02:17:39 +00:00
Ivan Kolodyazhny
3cc8cbdee7 RBD: Handle ImageNotFound exception in _get_usage_info correctly
Change https://review.openstack.org/#/c/486734 moved try-except
statement to the wrong place. We need to open image in Ceph inside
try-except block.

This patch also fixes race condition between volume deletion and
_get_usage_info calls.

Closed-Bug: #1765845
Change-Id: I7d3d006b023ca4b7963c4c684e4c036399d1295c
Co-Authored-By: Melanie Witt <melwittt@gmail.com>
2018-04-24 20:56:40 +00:00
Zuul
55e112c137 Merge "QNAP: driver fails to create volume and snapshot in some case" 2018-04-24 19:50:02 +00:00
Chris Yang
880ff557ca QNAP: driver fails to create volume and snapshot in some case
When NAS is busy or network delay, the volume or snapshot would
fail to created. We fixed the logic of waiting NAS to creating
LUN or snapshot.

Change-Id: Ieb524d9b192e2a222f7d25a0df80cf52f1423e81
Closes-Bug: #1765610
2018-04-24 10:01:50 +08:00
Zuul
a49eb33a66 Merge "Dell EMC SC: Removed space from debug statement" 2018-04-23 19:52:10 +00:00
Zuul
bc142cca6c Merge "NetApp ONTAP: Set new sub-lun clone limit for ONTAP driver" 2018-04-23 16:10:49 +00:00
Tom Swanson
5183a2ac95 Dell EMC SC: Removed space from debug statement
A space didn't belong where it was found. I killed it and I'm glad.

Change-Id: I7581b7eeb3508a12342d42cdd955b55a440483b6
2018-04-23 10:48:55 -05:00
junboli
f01ae575da Add missing VolumeAttachStatus enum field
VolumeAttachStatus has been defined already, This change
just replace the missing string volume attach status with
volume attach enum field.

Change-Id: I1e873d66138b88745bdb325f124b6bd781c7d621
Partial-Implements: bp cinder-object-fields
2018-04-23 01:37:17 +00:00
Tovin Seven
12b4432cb6 Trivial: Update pypi url to new url
Pypi url changed from [1] to [2]

[1] https://pypi.python.org/pypi/<package>
[2] https://pypi.org/project/<package>

Change-Id: Ib3d1b29dbfe20afeab4756673e772b597fd63fdc
2018-04-20 16:49:22 +07:00
Zuul
8efee51cae Merge "FC: refactor fczm utils decorators to functions" 2018-04-18 17:25:03 +00:00
Zuul
2131d441e4 Merge "NetApp ONTAP: Fix export path used as volume name" 2018-04-18 15:41:30 +00:00
Zuul
69bb91c9a5 Merge "Use InvalidConfigurationValue instead of InvalidInput" 2018-04-18 03:24:31 +00:00
Zuul
fec1d47054 Merge "Improve API method logging" 2018-04-18 03:24:28 +00:00
Sean McGinnis
e4a41feab3 Clarify sizing when creating vol from source
The api-ref stated new volumes created from a source volume or
snapshot would have the same size as the original, but that is
not the case if a larger size is requested.

Change-Id: Id2e0d53b56d5879026c182521a512dc2cfcd28f7
2018-04-17 17:47:39 -05:00
Sean McGinnis
e124420c2a Improve API method logging
We have tracing in the wsgi code to log the method being called,
but since we are just formatting the function object into a string,
we end up with the less than friendly output of:

Calling method '<bound method VolumeController.delete of
<cinder.api.v3.volumes.VolumeController object at 0x7f9f14f86dd0>>'

This changes the logging to extract the actual name of the method
being called. It also removes some unnecessary string coersion.

Change-Id: I3a0a5973a1798a7fcf25c4288b9cbef1195f7015
2018-04-17 17:30:53 -05:00
Lucio Seki
029cadbf40 NetApp ONTAP: Set new sub-lun clone limit for ONTAP driver
Until ONTAP v8.3, the driver used to perform sub-lun clone of up to 64GB
per operation, but as of v9.1, ONTAP handles only 128MB per operation.
This new limit is causing error on volume extending operations, which
triggers sub-lun cloning when resizing exceeds max-resize-geometry.
For instance, if a volume is extended from 1GB to 64GB, the operation
fails because it triggers a single sub-lun cloning of 1GB.

This fix sets the limit used by sub-lun cloning to 128MB, therefore
if a volume is extended from 1GB to 64GB, it no longer fails, and
instead it will trigger 8 sub-lun cloning operations of 128MB.

Change-Id: Ib294cbdbdfe19d34a7702dafec2c8d29136a2f25
Closes-Bug: #1762424
2018-04-17 14:15:05 -03:00
OpenStack Proposal Bot
4158fb44bc Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: I1b0d50672824d9e0aa9edf693b69ce41af02a2a5
2018-04-17 06:27:40 +00:00
Zuul
9586112848 Merge "ZFSSA implement "Enhance iSCSI multipath support"" 2018-04-17 01:06:49 +00:00
Walter A. Boring IV
3b28cb2a10 FC: refactor fczm utils decorators to functions
This patch changes the Fibre Channel Zone Manager
utility decorators to functions.   Those functions
now have to be called manually.   The intention of this
is to unify how the FC drivers are to be declared and
used vs. the iSCSI.  No more magic decorators for FC
drivers only.

Change-Id: I8e6e964e3694654b8ba93fe432a0dd49fa5e1df0
2018-04-16 16:23:59 -07:00
Zuul
e6028249cc Merge "V3 jsonschema validation: volume actions" 2018-04-14 10:32:37 +00:00
Zuul
fd7654f37f Merge "Set sample_default for 'host' option" 2018-04-13 22:47:53 +00:00
Zuul
c7b52634db Merge "Adding image membership check to _is_image_available" 2018-04-13 18:51:54 +00:00
Zuul
d1bae7462e Merge "Storwize: Report backend state in service list" 2018-04-13 06:31:55 +00:00
Zuul
98b4840a65 Merge "ZFSSA accept pool stats when cluster node stripped" 2018-04-12 23:48:39 +00:00
Eric Harney
a4abfa463e Set sample_default for 'host' option
This prevents build system hostnames from being
written into sample conf files.

Change-Id: I8c52db1e375116c750da9a619aaaea134bddebbe
2018-04-12 11:44:29 -04:00
Zuul
4c006e8bae Merge "nimble: update documentation for supportability" 2018-04-12 02:21:43 +00:00
Zuul
44c77ce4c0 Merge "NEC docs: add new features and improve description." 2018-04-12 02:21:34 +00:00
Zuul
364e1ada0c Merge "Rephrase for multiattach support" 2018-04-12 02:21:28 +00:00
imacdonn
a412e32790 ZFSSA implement "Enhance iSCSI multipath support"
A typical ZFSSA iSCSI deployment involves a ZFSSA cluster with two
control heads, two storage pools, and two network interfaces. Under
normal operation, one of the pools and one of the network interfaces
would be owned by one control head, and the others by the other control
head. This provides a form of "active/active" operation.

Cinder would be configured with two backends - one pointing to the pool
and an iSCSI target (group) normally served by the first head, and the
other the second head.

In the event of a failure of one control head, the other head will
"takeover" its storage pool and network interface, allowing service to
continue (perhaps with reduced performance) until the problem head is
restored, at which time the resources would be "given back".

In the takeover scenario, a sendtargets iSCSI discovery to the portal
address normally associated with the failed head will be serviced by the
other head, and it will return BOTH targets. os-brick, when configured
to use multipath, interprets this as both targets being basically
equivalent, and will use either one of them to determine the
host/controller/target/LUN ID to use to find SCSI devices. When the same
LU number is assigned to LUNs in both pools that are presented to the
same compute node, it can cause a LUN belonging to one VM to to
connected to a different VM.

Whilst full multipath support is not implemented in the ZFSSA driver,
using multipath on compute nodes provides some utility, even with only a
single path (notably the I/O can be queued during a transient interruption
(cluster takeover, network switch reboot, etc.). To support this scenario,
whilst avoiding the above problem, this change implements "enhanced multipath
support" [1] to provide explicit target info to os-brick (but only
supporting a single path). This could be expanded to full multipath support
in the future.

[1] https://blueprints.launchpad.net/cinder/+spec/iscsi-multipath-enhancement

Change-Id: I6402a6bc2a0d51efd3b60d93c11c1a81e8a73269
Closes-Bug: 1762584
2018-04-11 21:57:27 +00:00
Zuul
916458d0a2 Merge "Clarify volume migration CLI reference" 2018-04-11 19:29:14 +00:00
Zuul
eae690ad11 Merge "Cleanup volume management CLI reference" 2018-04-11 19:29:04 +00:00
Dongcan Ye
01fe5ab1ef Rephrase for multiattach support
Since we can enable attaching a volume to multiple servers,
the doc needs update.

Change-Id: Ide7c32f08113392b5f5e0042ec909b41c9cc6f88
2018-04-11 13:18:32 +00:00
tpsilva
4d75cbf3c3 NetApp ONTAP: Fix export path used as volume name
On ONTAP NFS driver, the export path was being used as the volume
name. If the export path is different than the volume name, the
API call to delete files would fail and the driver would invoke
a fallback method that deletes the files manually. This patch fixes
that by finding the correct volume name.

Change-Id: Ice78889573a36ff5e8873a0d316ddcf180d0263f
Closes-bug: #1690954
2018-04-11 12:58:09 +00:00
junboli
167c5d127f Use InvalidConfigurationValue instead of InvalidInput
worker value is from cinder.conf, so use InvalidConfigurationValue
is better.

Change-Id: I51a6d3041b42e9fc97d5562e5ae586000d6db36d
2018-04-11 19:25:48 +08:00
Shunei Shiono
3c88e911cb NEC docs: add new features and improve description.
In the supported operation section, add new features supported.
In the preparation section, improve description of access control
configuration.

Change-Id: I0a5bbc7b91035c55491c37a73bd23edc3a01b808
Closes-Bug: #1745549
2018-04-11 08:34:47 +00:00
Zuul
edd5f94ac0 Merge "Avoid second restart on offline upgrades" 2018-04-11 08:34:06 +00:00
Zuul
d7694d0daf Merge "Update auth_uri option to www_authenticate_uri" 2018-04-11 03:21:41 +00:00
Zuul
4169daf899 Merge "VMAX docs - miscellaneous clarifications" 2018-04-10 23:13:33 +00:00
Zuul
efc646cb8e Merge "V3 jsonschema validation: snapshot_actions" 2018-04-10 23:13:29 +00:00
Zuul
992f9e3656 Merge "Refresh volume when checking for conflicting attachments" 2018-04-10 22:45:02 +00:00
imacdonn
28b9d2eeef ZFSSA accept pool stats when cluster node stripped
When a node in a ZFSSA cluster fails, storage pools and network
interfaces associated with it get "taken over" by the other node. In
this scenario, the identity of the node does not match the "owner" of
the pool. Currently, the cinder volume drivers consider this to be a
failure. With this change, it will not be considered a failure, so long
as the cluster node is stripped. If the cluster is operating normally,
the node responding to API requests must be the node that owns the pool.

Change-Id: I073cf97bc65f93acd5732c9b7072c7130e6b248f
Closes-Bug: 1762777
2018-04-10 21:49:58 +00:00
Zuul
08fb43e805 Merge "add lower-constraints job" 2018-04-10 20:59:01 +00:00
Zuul
62e4a78e36 Merge "[Optimise] Use ThreadGroup to manage periodic tasks" 2018-04-10 20:27:53 +00:00
Zuul
fc4f3585e1 Merge "Dell EMC SC: volume model update return missing vol id" 2018-04-10 20:18:14 +00:00
Matt Riedemann
dd93b0c719 Refresh volume when checking for conflicting attachments
We should only be able to create more than one attachment to the
same volume if it's (1) multiattach=True or (2) it's multiattach=False
AND the attachments are to the same instance. It is not valid to
attach more than one instance to the same multiattach=False volume.

The _attachment_reserve method is checking for this if the
conditional update to the volume status fails, but it does
not refresh the volume before checking the attachments. Since
we could be racing to create attachments concurrently, when
the request that failed the conditional update actually pulled
the volume out of the DB, it might not have had any attachments,
so we need to refresh it before checking the list of attachments
to see if the instance we're trying to attach (reserve the volume)
is the same as what's already attached to the volume.

Change-Id: Iee78555163bbcbb5ff3e0ba008d7c87a3aedfb0f
Closes-Bug: #1762687
2018-04-10 13:59:16 -04:00
Raunak Kumar
86af244df1 nimble: update documentation for supportability
- update the configuration to include multipath settings
- indicate unsupportability with HPE Nimble Linux Toolkit

Change-Id: I6f6c8063f6995d485e7db63c27cdb19bcc5125fc
Closes-Bug: 1755546
2018-04-10 10:58:57 -07:00