]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
9 years agoHPMSA fix access to common options
Walter A. Boring IV [Fri, 11 Sep 2015 18:37:53 +0000 (18:37 +0000)]
HPMSA fix access to common options

This patch fixes access to the options defined in
hpmsa_common.  They were recently renamed from common_opt
to common_opts, but the drivers weren't updated.

Change-Id: I381e61c8e44454f29bc6ff6f1a5a82bbc8ab9436
Partial-Bug: 1494877

9 years agoMerge "Use version convert methods from oslo.utils"
Jenkins [Fri, 11 Sep 2015 17:12:56 +0000 (17:12 +0000)]
Merge "Use version convert methods from oslo.utils"

9 years agoMerge "Add migrate_volume to BaseVD"
Jenkins [Fri, 11 Sep 2015 17:12:46 +0000 (17:12 +0000)]
Merge "Add migrate_volume to BaseVD"

9 years agoMerge "backup init_host cleanup exception handling"
Jenkins [Fri, 11 Sep 2015 17:09:48 +0000 (17:09 +0000)]
Merge "backup init_host cleanup exception handling"

9 years agoMerge "Fix typos in comments"
Jenkins [Fri, 11 Sep 2015 01:44:54 +0000 (01:44 +0000)]
Merge "Fix typos in comments"

9 years agoMerge "Swap the decorator order for PureFCDriver methods"
Jenkins [Fri, 11 Sep 2015 01:25:53 +0000 (01:25 +0000)]
Merge "Swap the decorator order for PureFCDriver methods"

9 years agoMerge "Add ScaleIO Cinder driver commands"
Jenkins [Thu, 10 Sep 2015 23:57:16 +0000 (23:57 +0000)]
Merge "Add ScaleIO Cinder driver commands"

9 years agoMerge "SolidFire provider_id for snapshots on init"
Jenkins [Thu, 10 Sep 2015 22:35:06 +0000 (22:35 +0000)]
Merge "SolidFire provider_id for snapshots on init"

9 years agoMerge "Fix block_device driver to behave as documented"
Jenkins [Thu, 10 Sep 2015 22:09:34 +0000 (22:09 +0000)]
Merge "Fix block_device driver to behave as documented"

9 years agoSwap the decorator order for PureFCDriver methods
Patrick East [Thu, 10 Sep 2015 20:00:27 +0000 (13:00 -0700)]
Swap the decorator order for PureFCDriver methods

Right now the debug trace decorator is logging the decorator method from
the FCZM helper and not the actual driver methods its supposed to be.

Change-Id: If658393e5e9d1b3e068fc7a200998e8033ada48f
Closes-Bug: #1494459

9 years agoAdd ScaleIO Cinder driver commands
Xing Yang [Thu, 10 Sep 2015 19:31:39 +0000 (15:31 -0400)]
Add ScaleIO Cinder driver commands

ScaleIO Cinder driver commands are currently missing from
Cinder's rootwrap filters. Since we are not using os-brick's
rootwrap filters in Liberty, these missing commands need to be
added to Cinder's rootwrap filters.

Change-Id: Ia466a722a17730fa2104fa9a4b1898c6373d10ec
Closes-Bug: #1479530

9 years agoSolidFire provider_id for snapshots on init
John Griffith [Thu, 10 Sep 2015 00:59:38 +0000 (00:59 +0000)]
SolidFire provider_id for snapshots on init

We've added the provider_id field to the database for both
volumes and snapshots.  This however couldn't be used because
there was no upgrade/migration path included for backends to
populate these fields (ie upgrade from K to L).

This patch fixes the provider_id columns for snapshots and volumes
both, and updates these fields on backend init.  This fixes the
issue of not being able to "rely" on the database entries, and it
also fixes some issues with inefficiencies in how we were deleting
resources.

Now we can just use the provider_id info from the reference passed
in on the delete calls.

Change-Id: I9de02e9d12aa23ddf4e1fbb1e0efab2c1805fdb1
Closes-Bug: #bug/1491489

9 years agoMerge "ZFSSA driver to return project 'available' space"
Jenkins [Thu, 10 Sep 2015 17:51:42 +0000 (17:51 +0000)]
Merge "ZFSSA driver to return project 'available' space"

9 years agoMerge "Add unmanage default implementation to VolumeDriver"
Jenkins [Thu, 10 Sep 2015 06:06:06 +0000 (06:06 +0000)]
Merge "Add unmanage default implementation to VolumeDriver"

9 years agoMerge "Pass in snapshot refs for host on provider_update"
Jenkins [Thu, 10 Sep 2015 04:00:25 +0000 (04:00 +0000)]
Merge "Pass in snapshot refs for host on provider_update"

9 years agoMerge "Filter hosts with pool in snapshot_get_by_host"
Jenkins [Thu, 10 Sep 2015 03:57:54 +0000 (03:57 +0000)]
Merge "Filter hosts with pool in snapshot_get_by_host"

9 years agoMerge "Fix NetApp loop in clone of NFS backed images"
Jenkins [Thu, 10 Sep 2015 03:48:03 +0000 (03:48 +0000)]
Merge "Fix NetApp loop in clone of NFS backed images"

9 years agoFix NetApp loop in clone of NFS backed images
Tom Barron [Mon, 24 Aug 2015 17:21:48 +0000 (13:21 -0400)]
Fix NetApp loop in clone of NFS backed images

If there is a list of locations for glance images and an unsuitable
location is encountered when iterating through the list, current code
breaks out of the loop, failing to find later, valid locations.

Here we fix this issue by ignoring invalid locations and continuing
through the loop rather than breaking out when we find invalid locations.

Closes-bug: 1487074

Change-Id: Id2435ba633629367fa1bd8f339fc283f47eeb012

9 years agobackup init_host cleanup exception handling
Tom Barron [Wed, 26 Aug 2015 20:07:00 +0000 (16:07 -0400)]
backup init_host cleanup exception handling

Current cleanup of leftover backups, volumes, and temporary
volumes and snapshots is not resilient in the face of exceptions
such as failures in detach operations.

This commit adds appropriate try/except logic to this section
of code, thereby ensuring that the backup service can start even
if exceptions are encountered when attempting to cleanup detritus
from earlier failed backup operations.

Change-Id: Ie8d2107ebd4d86dfe5664c35687e8cbe58cfad9d
Closes-bug: 1485295

9 years agoMaking opt names consistent
Kendall Nelson [Wed, 9 Sep 2015 13:21:25 +0000 (08:21 -0500)]
Making opt names consistent

Wherever there are lists of options being registered, the name of
the list needs to be plural to be consistent with all other opt lists
being registered elsewhere. This change is necessary for the dynamic
generation of cinder.sample.conf.

Co-Authored-By: Jacob Gregor <jgregor@us.ibm.com>
Change-Id: I1434a195016a2a595d0205d73a78a60cd94137f8

9 years agoPass in snapshot refs for host on provider_update
John Griffith [Wed, 9 Sep 2015 15:15:31 +0000 (15:15 +0000)]
Pass in snapshot refs for host on provider_update

Now that snapshot_get_by_host is fixed we can and should
pass in a list of snapshot-refs to the drivers update_provider
method (just like we do with volumes).

Change-Id: I062efd1b7ab16f3f999464d3190c204026bba5ec
Closes-Bug: #1489182

9 years agoFilter hosts with pool in snapshot_get_by_host
Ivan Kolodyazhny [Wed, 9 Sep 2015 13:59:55 +0000 (16:59 +0300)]
Filter hosts with pool in snapshot_get_by_host

Snapshots use host field from the volume record. We need to ignore pool
if it is not specified in a host param for snapshot_get_by_host method.

Also snapshot_get_by_host will return empty list if host is None or an
empty string like a volume filer does.

Change-Id: I0d9eef8675d8dada3a0b6886dbb3f5807eecee73
Closes-Bug: #1493856

9 years agoFix typos in comments
Takashi NATSUME [Wed, 9 Sep 2015 08:34:25 +0000 (17:34 +0900)]
Fix typos in comments

suported => supported
proces => process
occured => occurred
do quota reserver => Reserve a quota

Change-Id: I97f1bfae8b62655b415ef8f61dc439416458d38d

9 years agoMerge "Return a tuple from SolidFire update_provider_info"
Jenkins [Wed, 9 Sep 2015 02:20:32 +0000 (02:20 +0000)]
Merge "Return a tuple from SolidFire update_provider_info"

9 years agoMerge "Filter scheduler: Fix KeyError on invalid create request"
Jenkins [Wed, 9 Sep 2015 02:19:11 +0000 (02:19 +0000)]
Merge "Filter scheduler: Fix KeyError on invalid create request"

9 years agoFilter scheduler: Fix KeyError on invalid create request
Eric Harney [Tue, 8 Sep 2015 22:40:53 +0000 (18:40 -0400)]
Filter scheduler: Fix KeyError on invalid create request

An invalid request can generate a KeyError here rather
than the intended failure message.

Closes-Bug: #1493580

Change-Id: Ia73d8c2834e564ee14d72303001e11be2ea14900

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Tue, 8 Sep 2015 22:01:48 +0000 (22:01 +0000)]
Updated from global requirements

Change-Id: I100c3680608c7448dba1da3bd839b4ff2dc17f8d

9 years agoReturn a tuple from SolidFire update_provider_info
John Griffith [Tue, 8 Sep 2015 21:29:05 +0000 (15:29 -0600)]
Return a tuple from SolidFire update_provider_info

The SolidFire update_provider_info is only returning
a list of updated volumes, but the manager call (and
the method def in the reference) calls for a tuple of
volumes and snapshots.

This patch fixes the return to be a tuple, a follow on
will be needed to add snapshot updates.

Change-Id: Ifa617bfd7b0652adf7bf1b19d48e88bfcfcec8df
Partial-Bug: #1493563

9 years agoAdd unmanage default implementation to VolumeDriver
Eric Harney [Tue, 8 Sep 2015 20:23:45 +0000 (16:23 -0400)]
Add unmanage default implementation to VolumeDriver

Currently, only drivers that inherit from ManageableVD
get the default unmanage() implementation.

This is not correct, because drivers can support unmanage
without driver code.  Fix unmanage() in VolumeDriver to
support the LVM driver's unmanage operation.

(Regression from the refactoring done when introducing
abc classes.)

Closes-Bug: #1493544

Change-Id: Iaacf10141559a2c88b5873722d1e237dc9223f27

9 years agoMerge "VMware: Fix re-attach volume error for VC 5.1"
Jenkins [Tue, 8 Sep 2015 20:06:58 +0000 (20:06 +0000)]
Merge "VMware: Fix re-attach volume error for VC 5.1"

9 years agoAdd migrate_volume to BaseVD
Eric Harney [Tue, 8 Sep 2015 17:31:31 +0000 (13:31 -0400)]
Add migrate_volume to BaseVD

migrate_volume() only exists in the deprecated VolumeDriver()
class and not BaseVD.  This means that drivers inheriting from
*VD hit attribute errors when trying to call driver.migrate_volume().

I suspect this indicates that we should rework some of our
abc class structure a little bit, but this seems like a
reasonable fix for now.

Related-Bug: #1478987
Related-Bug: #1471807
Closes-Bug: #1493286

Change-Id: I3d555507416606db265b8ebe335b51a08fe32328

9 years agoMerge "Update update_migrated_volume in VNX driver"
Jenkins [Tue, 8 Sep 2015 15:20:00 +0000 (15:20 +0000)]
Merge "Update update_migrated_volume in VNX driver"

9 years agoMerge "Fix HDS HNAS driver logging password as plain text"
Jenkins [Tue, 8 Sep 2015 15:19:49 +0000 (15:19 +0000)]
Merge "Fix HDS HNAS driver logging password as plain text"

9 years agoMerge "Add mechanism to update snapshot provider_id"
Jenkins [Tue, 8 Sep 2015 15:13:27 +0000 (15:13 +0000)]
Merge "Add mechanism to update snapshot provider_id"

9 years agoMerge "3PAR Disable generic image volume cache"
Jenkins [Tue, 8 Sep 2015 15:11:29 +0000 (15:11 +0000)]
Merge "3PAR Disable generic image volume cache"

9 years agoMerge "Adds allow_availability_zone_fallback option to Cinder"
Jenkins [Tue, 8 Sep 2015 12:59:01 +0000 (12:59 +0000)]
Merge "Adds allow_availability_zone_fallback option to Cinder"

9 years agoUpdate update_migrated_volume in VNX driver
peter_wang [Mon, 17 Aug 2015 14:33:18 +0000 (10:33 -0400)]
Update update_migrated_volume in VNX driver

Cinder framework adds an extra 'original_volume_status' in
update_migrated_volume.
Driver interface needs to update accordingly.

Change-Id: I59b3343529dd0a4c1f7ab3e74f203d6503f12697
Closes-Bug: 1486359

9 years agoMerge "Fix description for "Barbarism of editting a file""
Jenkins [Mon, 7 Sep 2015 20:59:52 +0000 (20:59 +0000)]
Merge "Fix description for "Barbarism of editting a file""

9 years agoMerge "Handle attachment of second volume"
Jenkins [Mon, 7 Sep 2015 20:40:13 +0000 (20:40 +0000)]
Merge "Handle attachment of second volume"

9 years ago3PAR Disable generic image volume cache
Walter A. Boring IV [Tue, 1 Sep 2015 18:59:22 +0000 (11:59 -0700)]
3PAR Disable generic image volume cache

This patch disables the 3PAR drivers if an admin tries to
enable the generic image volume cache capability.

The 3PAR drivers don't work with this currently because of the way volume
cloning works in the drivers.  When a volume is cloned, it's done so
in the background, which makes the clone available immediately for attaching.
The problem is, a background cloning also locks the original volume from
being modified.  The generic image cache does a clone, and then an extend
volume, which fails for the 3PAR drivers currently.

Change-Id: If2e79a24969ab85bacdffdf750af5fc74be37a5c
Partial-Bug: 1491088

9 years agoMerge "Add os-brick's scsi_id command to Cinder rootwrap"
Jenkins [Mon, 7 Sep 2015 06:01:33 +0000 (06:01 +0000)]
Merge "Add os-brick's scsi_id command to Cinder rootwrap"

9 years agoMerge "VMware: Remove global patching of open"
Jenkins [Sun, 6 Sep 2015 19:37:46 +0000 (19:37 +0000)]
Merge "VMware: Remove global patching of open"

9 years agoMerge "Correct usage of assertEqual for boolean values"
Jenkins [Sun, 6 Sep 2015 17:47:23 +0000 (17:47 +0000)]
Merge "Correct usage of assertEqual for boolean values"

9 years agoMerge "Switch SVC driver to use lsportfc to determine FC target WWPNS"
Jenkins [Sun, 6 Sep 2015 13:28:26 +0000 (13:28 +0000)]
Merge "Switch SVC driver to use lsportfc to determine FC target WWPNS"

9 years agoMerge "Fix the virtual port support in VNX driver"
Jenkins [Sun, 6 Sep 2015 13:24:45 +0000 (13:24 +0000)]
Merge "Fix the virtual port support in VNX driver"

9 years agoAdd os-brick's scsi_id command to Cinder rootwrap
Sean McGinnis [Sat, 5 Sep 2015 18:04:05 +0000 (13:04 -0500)]
Add os-brick's scsi_id command to Cinder rootwrap

FC drivers are failing on calls to scsi_id. This command
is in the os-brick rootwrap filters, but that file is not
being pulled in to Cinder yet.

As a temporary fix until that work can be completed, this
patch adds the missing command directly to volume.filters
to allow this command to run. Follow up work will be needed
to remove this and other legacy brick commands from the
volume.filters file and instead pull in os-brick's
os-brick.filters values.

Change-Id: Iba8e5c82f8d203759cda0e21de5fdf2404b18e69
Partial-bug: #1479842

9 years agoMerge "Error message in update_migrated_volume was incorrect"
Jenkins [Sat, 5 Sep 2015 04:33:45 +0000 (04:33 +0000)]
Merge "Error message in update_migrated_volume was incorrect"

9 years agoMerge "Updated from global requirements"
Jenkins [Sat, 5 Sep 2015 02:22:33 +0000 (02:22 +0000)]
Merge "Updated from global requirements"

9 years agoMerge "Use consolidated update for failover_replication"
Jenkins [Sat, 5 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Merge "Use consolidated update for failover_replication"

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Fri, 4 Sep 2015 21:51:13 +0000 (21:51 +0000)]
Updated from global requirements

Change-Id: I62f6f6d3847cc5c9dcc4c002b6d0da5f6ebe9d38

9 years agoError message in update_migrated_volume was incorrect
Jacob Gregor [Fri, 4 Sep 2015 21:30:12 +0000 (16:30 -0500)]
Error message in update_migrated_volume was incorrect

If an error was encountered in self.vg.rename_volume the error
message tried to use volume['name'], which is an invalid key.
The invalid key error would then cause the retype/migration to
abort in the middle of the process and leave original and temporary
volume in place. This patch fixes this bug by providing a valid key.

Change-Id: I73e1335c649df41d5167efc3cb4b9af48a5d537d
Closes-bug: #1492462

9 years agoMerge "VMware: Skip ESX hosts in maintenance mode"
Jenkins [Fri, 4 Sep 2015 20:47:33 +0000 (20:47 +0000)]
Merge "VMware: Skip ESX hosts in maintenance mode"

9 years agoMerge "3PAR Add update_migrated_volume to drivers"
Jenkins [Fri, 4 Sep 2015 19:19:07 +0000 (19:19 +0000)]
Merge "3PAR Add update_migrated_volume to drivers"

9 years agoFix HDS HNAS driver logging password as plain text
Tiago Pasqualini [Wed, 2 Sep 2015 17:58:03 +0000 (14:58 -0300)]
Fix HDS HNAS driver logging password as plain text

HDS HNAS driver logs every command that is sent to HNAS. Some
commands need the HNAS password, so the driver ends up logging
this password as plain text. This patch changes these commands
syntax so that oslo_utils.strutils.mask_password can successfully
mask this password.

Change-Id: I720701d8ee2b944ad498917f668160894f1f07cc
Closes-Bug: #1491524

9 years agoAdd mechanism to update snapshot provider_id
John Griffith [Wed, 2 Sep 2015 20:08:49 +0000 (20:08 +0000)]
Add mechanism to update snapshot provider_id

During the L release we added the ability to store
provider_id info for volumes and snapshots.  We did
not however add a mechanism for this info to be updated
on upgrades.

This patch adds on to the volume update mechanism and
gives a driver the opportunity to set provider_id columns
that aren't set on snapshots just as it does for volumes.

Change-Id: Ie6585e4f0d2a4a511e5fbe35b91186d8ad7e9874
Closes-Bug: #1489182

9 years agoMerge "Remove useless response checks in SolidFire driver"
Jenkins [Fri, 4 Sep 2015 17:26:00 +0000 (17:26 +0000)]
Merge "Remove useless response checks in SolidFire driver"

9 years agoVMware: Remove global patching of open
Vipin Balachandran [Fri, 4 Sep 2015 08:17:34 +0000 (13:47 +0530)]
VMware: Remove global patching of open

Commit 212aff327a36f925be3be69b9b54b946dbdd5c2a replaced
'cinder.openstack.common.fileutils.file_open' with 'open'
from builtins. It also updated unit tests to patch 'six.
moves.builtins.open' instead of 'cinder.openstack.common.
fileutils.file_open'. This resulted in intermittent failure
of test 'test_create_backing_from_stream_optimized_file'
in VMwareVcVmdkDriverTestCase. The failure happens because
the test patches 'open' from builtins and tests code which
throws an exception in a 'with open(...)' block. This
exception is handled in excutils.save_and_reraise_exception
which uses 'with open(...)' and the exception handling
fails due to the global patching of 'open'.

This patch replaces the global patching of builtins 'open'
with a patch decorator which binds 'open' to the namespace
of the code under testing.

Closes-bug: #1488690
Change-Id: Ib0f47b8fcbc54a9111c1bdff6d4b6fa7568518ca

9 years agoVMware: Skip ESX hosts in maintenance mode
Vipin Balachandran [Wed, 26 Aug 2015 11:30:40 +0000 (17:00 +0530)]
VMware: Skip ESX hosts in maintenance mode

Volume creation will fail if the VMDK driver selects
an ESX host in maintenance mode for volume creation.
This may happen even if there are usable ESX hosts
in vCenter. This patch fixes the problem by ignoring
ESX hosts in maintenance mode during volume creation.

Closes-bug: #1492221
Change-Id: I8cb89f95d0411ea2140e3107941d4e5e04a0156d

9 years agoMerge "Updated from global requirements"
Jenkins [Fri, 4 Sep 2015 10:31:44 +0000 (10:31 +0000)]
Merge "Updated from global requirements"

9 years agoMerge "DotHill driver fix create_cloned_volume parent id"
Jenkins [Fri, 4 Sep 2015 09:11:42 +0000 (09:11 +0000)]
Merge "DotHill driver fix create_cloned_volume parent id"

9 years agoMerge "Remove deprecated options"
Jenkins [Fri, 4 Sep 2015 07:58:59 +0000 (07:58 +0000)]
Merge "Remove deprecated options"

9 years agoMerge "VMware: Fix exception messages"
Jenkins [Fri, 4 Sep 2015 07:58:49 +0000 (07:58 +0000)]
Merge "VMware: Fix exception messages"

9 years agoMerge "Detect addition of executable files"
Jenkins [Fri, 4 Sep 2015 05:14:01 +0000 (05:14 +0000)]
Merge "Detect addition of executable files"

9 years ago3PAR Add update_migrated_volume to drivers
Walter A. Boring IV [Fri, 4 Sep 2015 00:05:44 +0000 (17:05 -0700)]
3PAR Add update_migrated_volume to drivers

The 3PAR drivers were missing the method
update_migrated_volume, which would then cause
all sorts of problems after a volume was migrated
into a 3PAR array.

Change-Id: Iab9b3ef1812bc7e8249c802f0c699787b0a58af6
Closes-Bug: 1492023

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Fri, 4 Sep 2015 04:14:09 +0000 (04:14 +0000)]
Updated from global requirements

Change-Id: I2db4de3ab7e39548bdc40a72dede16bd1a5c6824

9 years agoMerge "3PAR Fix create_cloned_volume source volume id"
Jenkins [Fri, 4 Sep 2015 03:28:57 +0000 (03:28 +0000)]
Merge "3PAR Fix create_cloned_volume source volume id"

9 years agoMerge "NetApp E-Series over-subscription support"
Jenkins [Fri, 4 Sep 2015 00:49:07 +0000 (00:49 +0000)]
Merge "NetApp E-Series over-subscription support"

9 years agoSwitch SVC driver to use lsportfc to determine FC target WWPNS
Gerald McBrearty [Thu, 3 Sep 2015 03:08:54 +0000 (22:08 -0500)]
Switch SVC driver to use lsportfc to determine FC target WWPNS

Switched the startup code within SVC driver to use the
SVC lsportfc command rather than the lsnode command to determine the
target WWPNs for an SVC node, and updated SVC testcases.
The SVC lsportfc command returns all of the FC ports so that
all of the FC ports can be zoned and thus utilized by
the VM that a volume is attached to.
Where the lsnode command is documented to only report the
first 4 FC ports.

Closes-Bug: 1490041

Change-Id: I6acac0080a96a5b3dfbc6fb8b54a456206b21688

9 years agoUse consolidated update for failover_replication
Patrick East [Wed, 2 Sep 2015 20:58:02 +0000 (13:58 -0700)]
Use consolidated update for failover_replication

Right now it’s using a special built volume_updates dictionary that
contains some fields *and* a model update. We then glom all of them
together into an update dictionary for the volume model.

This change simplifies them into a single model update more in-line with
how the other volume API’s work for drivers.

It also fixes a bug where the model_update property of the volume_update
was not being applied to the db model.

Change-Id: I8ad85bf0e62099a8ea4dd471dfcb64fa057f1021
Closes-Bug: #1491587

9 years agoVMware: Fix exception messages
Vipin Balachandran [Tue, 25 Aug 2015 09:06:51 +0000 (14:36 +0530)]
VMware: Fix exception messages

Currently some of the exceptions defined in the VMware driver
emit unformatted error messages. This is because they are
not overriding the correct message format variable. This
patch fixes the issue by overriding the correct variable
defined in the exception super class.

Closes-Bug: #1491834
Change-Id: I1c66d60ab2ea402dd944587b3d8b6d7c293c4d85

9 years agoAdds allow_availability_zone_fallback option to Cinder
Edmund Rhudy [Thu, 27 Aug 2015 17:49:58 +0000 (13:49 -0400)]
Adds allow_availability_zone_fallback option to Cinder

This change adds allow_availability_zone_fallback, which allows Cinder
to fall back to an already configured availability zone if the
requested availability zone is unavailable.

Change-Id: Id6b43fc3243b4de82241cfab34ff10953b537874
DocImpact: cinder
Closes-Bug: #1489575

9 years agoNetApp E-Series over-subscription support
Michael Price [Sun, 16 Aug 2015 14:58:41 +0000 (10:58 -0400)]
NetApp E-Series over-subscription support

Add support to the E-Series driver for
over-subscription/overprovisioning. This allows the Cinder scheduler
to more accurately represent the remaining space on a pool when
thin provisioned Cinder volumes are in use on an E-Series backend.

Co-Authored-By: Tom Barron <tpb@dyncloud.net>
DocImpact
Partially-implements: blueprint netapp-block--over-subscription-thin-provisioning
Change-Id: I5fb8f480168b9195221412d70f187c5ddfc4f527

9 years agoZFSSA driver to return project 'available' space
Abhiram Moturi [Mon, 10 Aug 2015 14:23:09 +0000 (14:23 +0000)]
ZFSSA driver to return project 'available' space

This fix allows the iSCSI driver to return the 'available' space
property at project level instead of the pool level which is more
accurate in cases when storage is not thin provisioned.

Change-Id: I52dec5e527eab393fd464fbc7f4f910fafb67268
Closes-Bug: #1479342

9 years agoMerge "Fix problem of efficient volume copy for migration"
Jenkins [Thu, 3 Sep 2015 11:49:18 +0000 (11:49 +0000)]
Merge "Fix problem of efficient volume copy for migration"

9 years agoMerge "Get full volume model in Replication manager API’s"
Jenkins [Thu, 3 Sep 2015 11:38:29 +0000 (11:38 +0000)]
Merge "Get full volume model in Replication manager API’s"

9 years agoMerge "Implement thin provisioning support for E-Series"
Jenkins [Thu, 3 Sep 2015 08:36:12 +0000 (08:36 +0000)]
Merge "Implement thin provisioning support for E-Series"

9 years agoMerge "Generic image-volume cache"
Jenkins [Thu, 3 Sep 2015 08:13:12 +0000 (08:13 +0000)]
Merge "Generic image-volume cache"

9 years agoMerge "Remove executable bits on files"
Jenkins [Thu, 3 Sep 2015 08:12:47 +0000 (08:12 +0000)]
Merge "Remove executable bits on files"

9 years agoMerge "Implement manage/unmanage snapshot in Pure drivers"
Jenkins [Thu, 3 Sep 2015 07:41:45 +0000 (07:41 +0000)]
Merge "Implement manage/unmanage snapshot in Pure drivers"

9 years agoMerge "Cloudbyte fix create_cloned_volume parent id"
Jenkins [Thu, 3 Sep 2015 06:29:03 +0000 (06:29 +0000)]
Merge "Cloudbyte fix create_cloned_volume parent id"

9 years agoMerge "NetApp DOT block driver over-subscription support"
Jenkins [Thu, 3 Sep 2015 00:23:41 +0000 (00:23 +0000)]
Merge "NetApp DOT block driver over-subscription support"

9 years agoGet full volume model in Replication manager API’s
Patrick East [Wed, 2 Sep 2015 20:51:42 +0000 (13:51 -0700)]
Get full volume model in Replication manager API’s

Currently we pass in a dictionary of the volume properties, but not the
actual volume model. This dictionary is missing some of the properties
like ‘name’ which backends may required for volume operations.

Change-Id: Idcb7b2c8313360a77ba336f3b7534d8fa7431a41
Closes-Bug: #1491585

9 years agoFix problem of efficient volume copy for migration
Mitsuhiro Tanino [Wed, 2 Sep 2015 18:33:18 +0000 (14:33 -0400)]
Fix problem of efficient volume copy for migration

After introducing commit f586043fa969b9d1dcf4933aacbf615f53691093,
new volume copy method _copy_volume_data() was added into
manager.py. Originally driver.py had this method and it was copied
into manager.py. However new _copy_volume_data() lost efficient
volume copy logic during the reimplementation.

This patch simply add efficient volume copy logic again into new
_copy_volume_data() to fix the problem.

Change-Id: I183cbd2265c1f47c9047818e1d4915c896927280
Closes-Bug: 1491538

9 years agoMerge "Cleanup for SnapshotObject"
Jenkins [Wed, 2 Sep 2015 18:22:12 +0000 (18:22 +0000)]
Merge "Cleanup for SnapshotObject"

9 years agoMerge "Scheduler-based over-subscription for NFS drivers"
Jenkins [Wed, 2 Sep 2015 18:22:01 +0000 (18:22 +0000)]
Merge "Scheduler-based over-subscription for NFS drivers"

9 years agoMerge "Support efficient non-disruptive volume backup in VNX"
Jenkins [Wed, 2 Sep 2015 18:21:49 +0000 (18:21 +0000)]
Merge "Support efficient non-disruptive volume backup in VNX"

9 years agoGeneric image-volume cache
Patrick East [Wed, 8 Jul 2015 00:23:58 +0000 (17:23 -0700)]
Generic image-volume cache

This introduces a new feature for backends to be able to use cached
glance images when creating volumes from images.

If enabled, and the cinder internal tenant is configured, it will
create a minimal sized clone of a volume the first time it is
downloaded from glance. A new db table ‘image_volume_cache’ tracks
these volumes, which are owned by the Cinder internal tenant. The
original will then be extended to full size. Any subsequent requests to
create a volume from an image will be able to do a volume clone from
the image-volume cache entry instead of downloading the image data from
glance again.

In the future we could create an entry upon creating an image from a
volume right before uploading the volume to glance. This version
however does not aim to do more than add the initial framework and
help with subsequent image downloads. There are certainly more
improvements that can be done over time on top of this.

These image-volumes are host specific, so each backend may end up with
its very own image-volume to do clones from.

The cache is limited in size by number of entries allowed and size in
gb. When creating a new entry if space is needed the last used entries
will be evicted to make room.

In the current implementation the image-volumes will be viewable by a
cloud admin in the volume list, and show up as owned by the Cinder
internal tenant. They can safely be deleted manually by an admin, this
will cause the entry to be removed from the cache. These volumes will
use quota for the internal tenant.

Cache actions will post notifications to Ceilometer. There are
notifications like ‘image_volume_cache.miss’, ‘image_volume_cache.hit’,
and ‘image_volume_cache.evict’. A change will be required to the
event_definitions.yaml to see them nicely. Until then you only need to
add a new event type 'image_volume_cache.*' and look for the ‘image_id’
and ‘host’ fields.

DocImpact: We probably want some instructions on restrictions of the
cache and how to use it. The three new config options should also be
documented somewhere: ‘image_volume_cache_enabled’,
’image_volume_cache_max_size_gb’, ‘image_volume_cache_max_size_count’

Co-Authored-By: Tomoki Sekiyama <tomoki.sekiyama@hds.com>
Implements: blueprint image-volume-cache
Change-Id: If22bbaff89251e4e82a715170a48b4040f95c09f

9 years agoImplement thin provisioning support for E-Series
Michael Price [Wed, 5 Aug 2015 20:36:59 +0000 (15:36 -0500)]
Implement thin provisioning support for E-Series

Implement a new extra spec, 'netapp_thin_provisioned', that will allow
users to define thin provisioned Cinder volumes on E-Series storage,
alongside pre-existing extra specs such as
'netapp_eseries_data_assurance', 'netapp_eseries_flash_reach_cache',
'netapp_raid_type', etc.

We have a followup patch, https://review.openstack.org/#/c/215801/ ,
that reports 'thin_provisioning_support=True/False' and same for
'thick_provisioning_support', in accord with the scheduler-based
over-subscription support added in Kilo.

We are not yet attempting to implement the get_capabilities()
feature just merged into Liberty
(https://review.openstack.org/#/c/201243/)
but fully intend to do so in a way that conforms with that plan of
record.

Partially-Implements: blueprint netapp-eseries-additional-extra-specs
DocImpact
Change-Id: Ia00b56e6d6a644cff81791bbd04e97f0c02b9e65

9 years agoMerge "ScaleIO driver should use os-brick connector"
Jenkins [Wed, 2 Sep 2015 16:05:07 +0000 (16:05 +0000)]
Merge "ScaleIO driver should use os-brick connector"

9 years agoMerge "Earlier authority check for create volume API"
Jenkins [Wed, 2 Sep 2015 16:04:56 +0000 (16:04 +0000)]
Merge "Earlier authority check for create volume API"

9 years agoMerge "Check before add lun to QoS in Huawei driver"
Jenkins [Wed, 2 Sep 2015 16:04:42 +0000 (16:04 +0000)]
Merge "Check before add lun to QoS in Huawei driver"

9 years agoMerge "Minor optimization"
Jenkins [Wed, 2 Sep 2015 16:04:30 +0000 (16:04 +0000)]
Merge "Minor optimization"

9 years agoRemove useless response checks in SolidFire driver
John Griffith [Wed, 2 Sep 2015 15:56:15 +0000 (15:56 +0000)]
Remove useless response checks in SolidFire driver

The main issue_api_request method in the SolidFire driver
has had a mechanism to check validity of response data for
some time now.  It checks the response and if there isn't
a valid result in the response it raises.

The problem is that we still have some cruft from the old
code that does local checking/verfication.  These checks
won't ever actually be called because of the exception, and
they create some confusion.

This patch just removes those useless checks and cleans up
the api_request calls a bit.

Change-Id: Ifbcda0f943bb0b9dc47aff25bbb9245ce361fc48
Closes-Bug: #1491485

9 years agoMerge "Add additional SSC extra specs to E-Series driver"
Jenkins [Wed, 2 Sep 2015 13:23:05 +0000 (13:23 +0000)]
Merge "Add additional SSC extra specs to E-Series driver"

9 years agoMerge "Add delete_snapshot and update_snapshot rules"
Jenkins [Wed, 2 Sep 2015 12:27:32 +0000 (12:27 +0000)]
Merge "Add delete_snapshot and update_snapshot rules"

9 years agoMerge "Implement AutoSupport for NetApp E-Series driver"
Jenkins [Wed, 2 Sep 2015 12:27:12 +0000 (12:27 +0000)]
Merge "Implement AutoSupport for NetApp E-Series driver"

9 years agoMerge "Add support for volume groups and netapp_raid_type"
Jenkins [Wed, 2 Sep 2015 12:25:02 +0000 (12:25 +0000)]
Merge "Add support for volume groups and netapp_raid_type"

9 years agoMerge "Fix backup metadata import missing fields"
Jenkins [Wed, 2 Sep 2015 06:37:01 +0000 (06:37 +0000)]
Merge "Fix backup metadata import missing fields"

9 years agoMerge "Fix a merge problem in VMAX driver"
Jenkins [Wed, 2 Sep 2015 06:36:19 +0000 (06:36 +0000)]
Merge "Fix a merge problem in VMAX driver"

9 years agoMerge "Add instructions on how to deploy API under Apache"
Jenkins [Wed, 2 Sep 2015 06:14:57 +0000 (06:14 +0000)]
Merge "Add instructions on how to deploy API under Apache"