244 Commits

Author SHA1 Message Date
Jenkins
98f2cafe8b Merge "Set cinder coordination backend url" 2016-11-30 16:30:23 +00:00
Jenkins
6c80f2a485 Merge "Remove check for nova-volumes API" 2016-11-30 16:30:16 +00:00
Matt Riedemann
b6cbf922d7 Change CINDER_LVM_TYPE back to 'default' as the default
Change dddb2c7b5f85688de9c9b92f025df25d2f2d3016 recently
changed devstack to enable the Cinder image cache by default
and changed to use thinly provisioned LVM volumes by default.

Since then we've had a spike in thin LVM snapshot test failures
in the gate, which is by far our top gate bug at 219 hits in the
last 10 days.

So unless there is a fix on the Cinder side, this changes the
default lvm_type back to 'default' for thick provisioning.

Change-Id: I1c53bbe40177fe104ed0a222124bbc45c553b817
Related-Bug: #1642111
2016-11-21 21:10:49 -05:00
Jenkins
928b3cd36e Merge "Setup the Cinder image-volume cache by default" 2016-11-02 17:09:47 +00:00
Daniel Gonzalez
a283526c88 Set cinder coordination backend url
If DLM is enabled, cinder should be configured to use the correct
backend url for the dlm.
At the moment only zookeeper is supported, as it is the only backend
currently supported in devstack.

Change-Id: I7afc8dc95bc5b3f11b888e10607615c1212c45f4
2016-10-05 21:52:07 +02:00
Gregory Haynes
4b49e409f8 Use apache for tls-proxy ssl termination
Stud is now abandonware (see https://github.com/bumptech/stud) and is
not packaged in xenial. Lets use Apache for SSL termination since its
there already.

Change-Id: Ifcba410f5969521e8b3d30f02795541c1661f83a
2016-09-20 08:14:11 -07:00
Sean Dague
e56318f9bc Remove manual setting of privsep helper
The privsep helper should have a sane default for all libraries,
pushing this into devstack means we cheat past a part of the upgrade
that we really shouldn't be.

Change-Id: I52259e2023e277e8fd62be5df4fd7f799e9b36d7
2016-08-01 10:29:03 -04:00
Patrick East
657cdcdbd1 Allow for Nova to use os-brick from git
This option to install os-brick from git was only added
into lib/cinder previously. When testing all-in-one nodes
this worked fine, but if you have multi-node setups with
compute nodes that don't install any c-* services we
only get packaged os-brick. With this change non-cinder
nodes can now test against unreleased os-bricks.

Change-Id: Ibb7423d243d57852dada0b6298463bbdfc6dc63c
2016-07-12 09:01:00 -07:00
Matt Riedemann
16edbe4356 Remove check for nova-volumes API
The osapi_volume API in Nova has been gone forever,
so we don't need to check for that anymore.

Change-Id: I7303d3f434fc27a4a1a127e455a7d3b88f588537
2016-07-07 14:43:39 -04:00
Patrick East
dddb2c7b5f Setup the Cinder image-volume cache by default
This will have devstack setup the Cinder internal tenant and generic
image-volume cache by default. If left alone it will use reasonable
defaults.

More information about configuration options and the cache can be found
here: http://docs.openstack.org/admin-guide/blockstorage_image_volume_cache.html

As part of this we switch the default lvm type to thin so it will
work more efficiently with the image cache.

Change-Id: I0b2cc261736f32d38d43c60254f0dc7225b24c01
Implements: blueprint cinder-image-volume-cache
2016-06-24 18:09:16 +00:00
Jenkins
ca3a857d35 Merge "Have a way to disable Glance v1 in devstack" 2016-06-14 19:50:38 +00:00
Flavio Percoco
22c695f08a Have a way to disable Glance v1 in devstack
As part of the process of deprecating Glance's V1, the glance team would
like to start testing V2-only environments. Therefore, this change
provides a way to force other services to use V2.

Change-Id: I87e77d07964eac01e9a796817cbc88bd6e59c721
2016-06-03 14:55:26 -04:00
Michał Dulko
9ee1426847 Set my_ip in cinder.conf
Cinder uses my_ip config option to provide iscsi_targets. It gets
defaulted to the IP of the first interface in the system, which is fine
for some cases, but for example with Vagrant first interface can be used
only to contact with host machine.

To get over it we should set my_ip to HOST_IP from local.conf and this
commit implements that.

Change-Id: I4d2960d92f388ac689dfa6b436dc8bfc1e129fbf
Closes-Bug: 1588825
2016-06-03 15:41:37 +02:00
Ivan Kolodyazhny
8d0d3115cc Allow override of python-brick-cinderclient-ext library used by cinder
Added to requirements:
https://review.openstack.org/309084

Functional tests were added
https://review.openstack.org/265811

But they still use the version of python-brick-cinderclient-ext from pip.

This change updates devstack to pull in the changes from
python-brick-cinderclient-ext patch sets instead, when configured to do so.

Change-Id: I6d0f09950ea1200d3367a53aa4a3eea9be7abc66
Needed-by: I34f3b5ceaad7a50b1e9cadcc764f61c0aabe086d
2016-05-26 23:52:53 +03:00
Jenkins
a898099634 Merge "Set config file to db sync and other manage operation" 2016-05-17 10:42:50 +00:00
Einst Crazy
4f55c2d5c3 Set config file to db sync and other manage operation
Currently, the db sync operation does not specify the config dir or
config file.
If there is a config file in the home path, it will use this one,
but not the right one devstack write.

Set config file to these operations.

Change-Id: Id1fbc3d85280c19596f5ebd301c46bcf018fa2f6
Closes-Bug: #1578098
2016-05-09 01:43:32 +00:00
Victor Ryzhenkin
878d7d8f13 Adjust region name for images, networks and volumes during deployment
In a multiregion installation of devstack, conflicts occur in the
creation of images, networks, or volume types, when the region is not
set.

This patch adjusts commands to include the region, and
also adjusts the region_name in the nova configuration section of
neutron.conf to include the region.

Change-Id: Ifedff6a124fa49d57cc7b2f35916d8d96f5e5f7a
2016-04-28 15:13:58 +00:00
Matt Riedemann
ae4578bed9 Revert "Don't check for existing endpoints"
This reverts commit 7d1ec430046256ac3f536f4920a43936e28ef0c4.

This broke the sahara and layer4 dsvm jobs. The layer4 job
is voting on tempest changes so tempest is also broken.

Change-Id: Ide69f10cd85bf7ff0d86bc8cba56dedd26850362
Partial-Bug: #1573868
2016-04-23 01:45:40 +00:00
Sean Dague
7d1ec43004 Don't check for existing endpoints
We really should only have code that create endpoints once, making all
osc calls get_or_set adds 3 seconds per call for no really good
reason.

This also stops creating the internal endpoints in the service
catalog. It's a pattern that we're trying not to propogate, so lets
not have it in devstack any more.

Change-Id: Ia8cefe43753900d62117beae330db46deb6a9fc9
2016-04-22 10:44:10 -04:00
Alex Meade
06c7a4404e Add volumev3 endpoint for Cinder
Change-Id: I97caa6bfababf7d1cc714296ae66f77d22bf24ab
2016-04-18 17:32:22 +00:00
Sean Dague
ab0a1b8812 change cinder SC to use $(project_id)
This removes another place where we reference tenant_id

Change-Id: I88fa1c5475105c301b27672b028bddb289f9c108
2016-04-04 09:09:27 -04:00
Jenkins
daa2d34e14 Merge "cinder.conf: Set privsep_osbrick.helper_command" 2016-04-01 01:37:30 +00:00
Angus Lees
8a6d7678b5 cinder.conf: Set privsep_osbrick.helper_command
When os-brick starts using privsep, it will need to know how to invoke
its privileged half.  Amazingly the name of the rootwrap executable
isn't anywhere else in the config, so the privsep default uses just
"sudo" (no rootwrap).

We need to either:

1. set the privsep command line to use cinder-rootwrap in
   cinder.conf (and similar in other configs), or

2. add the privsep-helper line to sudoers and bypass rootwrap entirely.

This change implements (1) for devstack/cinder and is similar to the
corresponding nova change in I90dc41bc77993bd83b80c92286e015e14f290b45

Change-Id: I8a0b1728cc66c4861f69623b1b16b1f759b57b25
2016-02-25 14:33:11 +11:00
Sean Dague
7580a0c3e3 Replace TENANT => PROJECT phase 1
This replaces the use of TENANT variables with PROJECT ones during the
initial setup. The openrc will still export a OS_TENANT_NAME because
many tools (cinderclient, glanceclient amoung them) will not function
without it. We warn when we do that.

Change-Id: I824b1121842eb5821034071874bf1bb2d7c3631e
2016-02-22 11:55:17 +11:00
Sean Dague
985e958dda remove keystone templated catalog
This is just another code path for little benefit in devstack which is
going to rot out. We should be opinionated here and only support the
dynamic catalog.

Change-Id: I4e5c7e86aefe72fc21c77d423033e9b169318fec
2016-02-10 15:39:31 -05:00
Allen Gao
40e2f508e4 Remove option 'DEFAULT/verbose'
Option "verbose" from group "DEFAULT" is deprecated for removal.
Its value may be silently ignored in the future.

If this option is not set explicitly, there is no such warning.
Furthermore, the default value of verbose is true, so there is
no need to set this value in config files.

TrivialFix

Change-Id: I581238e661c2eb0c29dd915d1b1e4773dcdeb4c8
2016-01-25 02:30:30 +00:00
Wanlong Gao
cf04a9acb3 notification_driver is deprecated to driver
TrivialFix
https://review.openstack.org/#/c/249508/

Change-Id: I18599c7221272279dfc2e9f5b297af09faff5c3b
2016-01-19 17:17:01 +08:00
Jordan Pittier
a263e7dd52 lib/cinder:configure tgt even if the package was purged
On Ubuntu, after a successful ./stack.sh and ./unstack.sh, if one
"apt-get purge tgt", then the directory /etc/tgt/stack.d/ still
exist (i.e it is not purged) but /etc/tgt/targets.conf is removed.
Thus any subsequent ./stack.sh would fail to configure
/etc/tgt/targets.conf properly.

Change-Id: I252789f3f39bd64b5a1e7d9abb923386d2a158dd
2016-01-07 19:40:44 +01:00
Jenkins
e8788c0129 Merge "Specify HTTPS URLs to fix tls-proxy mode" 2016-01-02 13:23:13 +00:00
Sean McGinnis
357dff588e Remove Cinder API version cap
Cinder API was pinned to v1 due to openstackclient missing some of the
v2 commands, as reported in osc bug 1475060. That bug has since been
marked invalid, but its intent was covered by the blueprint:

https://blueprints.launchpad.net/python-openstackclient/+spec/volume-v2

This removes the pinning to the v1 API now that osc supports v2. Also
removing the enablement of v1 as it was deprecated three releases ago
and we would like to get more coverage on v2.

Change-Id: Ia4d97734738d026c8721791669110778ff5eb6e5
2015-12-11 14:12:19 -06:00
Jenkins
4300f83acf Merge "Config graceful_shutdown_timeout option for services" 2015-12-01 16:01:30 +00:00
Ian Wienand
523f488036 Namespace XTRACE commands
I noticed this when debugging some grenade issues failures.

An include of grenade/functions stores the current value of XTRACE
(on) and disables xtrace for the rest of the import.

We then include devstack's "functions" library, which now overwrites
the stored value of XTRACE the current state; i.e. disabled.

When it finishes it restores the prior state (disabled), and then
grenade restores the same value of XTRACE (disabled).

The result is that xtrace is incorrectly disabled until the next time
it just happens to be turned on.

The solution is to name-space the store of the current-value of xtrace
so when we finish sourcing a file, we always restore the tracing value
to what it was when we entered.

Some files had already discovered this.  In general there is
inconsistency around the setting of the variable, and a lot of obvious
copy-paste.  This brings consistency across all files by using
_XTRACE_* prefixes for the sotre/restore of tracing values.

Change-Id: Iba7739eada5711d9c269cb4127fa712e9f961695
2015-11-27 15:36:04 +11:00
Rob Crittenden
cdba7b0e53 Specify HTTPS URLs to fix tls-proxy mode
A number of new settings are required for glance, cinder
and keystone to be installable when the tls-proxy
service is enabled.

For cinder a new public_endpoint option was added and this
needs to be set to the secure port.

Keystone needs the admin_endpoint and public_endpoints
defined otherwise during discovery the default,
non-secure versions, will be returned.

The keystone authtoken identity_uri was set at its default value
in the glance registry and API configuration files.

Change-Id: Ibb944ad7eb000edc6bccfcded765d1976d4d46d0
Closes-Bug: #1460807
2015-11-17 19:39:54 +00:00
Matt Riedemann
cdcdeb6460 Remove CINDER_VOLUME_CLEAR value validation
132fbcd38ebae52bdd20da54905131b75581520f in cinder changed the
volume_clear StrOpt to use the choices kwarg which enforces the value
specified and raises a ValueError if an invalid value is set for the
option in cinder.conf.

This lets us remove the validation that devstack was doing.

Change-Id: Ia7eead6297ed0f3a972de2021170fe9c7225e856
2015-10-29 09:48:17 -07:00
Marian Horban
7159b4ba59 Config graceful_shutdown_timeout option for services
To avoid hanging services during gracefull shutdown option
graceful_shutdown_timeout should be configured.

Closes-Bug: #1446583

Change-Id: I2b7f0df831d65c55ae8cae241478f49c9641d99f
2015-10-29 11:44:12 -04:00
Jenkins
310cedf677 Merge "Use swift port variable in keystone and cinder" 2015-10-29 04:57:22 +00:00
Falk Reimann
22f747b8df Use swift port variable in keystone and cinder
This patch alows specifiying a deviation of the swift default port 8080 with
variable SWIFT_DEFAULT_BIND_PORT. The created endpoints in keystone for
object-store and the backup_swift_url in cinder.conf will use variable
SWIFT_DEFAULT_BIND_PORT instead of the fixed port 8080.

Change-Id: I47bbcf77368c430718fb8f29b7de1ff305e64422
Closes-Bug: #1489767
2015-10-23 09:19:32 +02:00
Jenkins
d111182f21 Merge "Don't mix declaration and set of locals" 2015-10-14 02:43:52 +00:00
Sean Dague
72ad942796 use deprecated function instead of modifying global
It's safer to run this through a common function to let us make
changes later.

Change-Id: Ic661824027577e1946726c1843a29ac8325915bf
2015-10-07 15:15:16 -04:00
Ian Wienand
ada886dd43 Don't mix declaration and set of locals
Ia0957b47187c3dcadd46154b17022c4213781112 proposes to have bashate
find instances of setting a local value.  The issue is that "local"
always returns 0, thus hiding any failure in the commands running to
set the variable.

This is an automated replacement of such instances

Depends-On: I676c805e8f0401f75cc5367eee83b3d880cdef81
Change-Id: I9c8912a8fd596535589b207d7fc553b9d951d3fe
2015-10-07 17:03:32 +11:00
Anton Arefiev
651cb1ad75 Add toggle to run Cinder API under Apache
This change adds apache templates for Cinder API services.
Also add possibility to switch between the old and new ways
to setup Cinder API.

Related Cinder blueprint:
 https://blueprints.launchpad.net/cinder/+spec/non-eventlet-wsgi-app

Change-Id: Icfad40ee6998296727a95613199e5c2d87bd0a45
Depends-On: Ifbab059001d1567b1f7b394c0411a9ca4629f846
Co-Authored-By: Ivan Kolodyazhny <e0ne@e0ne.info>
2015-09-28 15:01:03 +00:00
Sean Dague
346edcc532 check all possible services when configuring tempest
The previous approach assumed that devstack in tree service support
would always be a super set of tempest. That's not necessarily
true. Instead when configuring tempest we should look at all the
possible services that tempest could know about, which will let us
disable services we don't have support for.

Change-Id: I9c24705e494689f09a885eb0a640efd50db33fcf
2015-08-26 09:38:37 -04:00
Jamie Lennox
7e5fb63b71 Always use volume v1 API for type create.
OpenStackClient doesn't currently support volume type create on the V2
API. Make sure that all requests use the V1 api until this has been
fixed in OpenStackClient.

Change-Id: I2fa133d30753e188d383d3de78c0022a3625cb34
Closes-Bug: #1475062
2015-07-16 10:40:43 +10:00
Jenkins
32a3e322b4 Merge "Use openstack cli for cinder type creation" 2015-07-15 05:35:31 +00:00
Jenkins
aaae79b095 Merge "Use identity V3 API for endpoint creation" 2015-07-14 04:53:34 +00:00
Jamie Lennox
494f7cdf35 Use openstack cli for cinder type creation
This command was commented out so assumedly there used to be a bug. Switch to
OpenStackClient as the cinder CLI doesn't handle v3 auth correctly.

Implements: bp keystonev3
Change-Id: I1acdc04cf04b7056701bdded31ef2a015de5bce3
2015-07-08 05:17:00 +10:00
Jamie Lennox
b17ad7560d Use identity V3 API for endpoint creation
Always use the keystone V3 API when creating services and endpoints. The syntax
here is slightly different but we maintain the function interface.

Change-Id: Ib3a375918a45fd6e37d873a1a5c0c4b26bdbb5d8
Implements: bp keystonev3
2015-07-08 05:17:00 +10:00
Brian Haley
180f5eb652 Add IPv6 support to devstack infrastructure
By default, most Openstack services are bound to 0.0.0.0
and service endpoints are registered as IPv4 addresses.
With this change we introduce two new variables to control
this behavior:

SERVICE_IP_VERSION - can either be "4" or "6".

When set to "4" (default if not set) devstack will operate
as today - most services will open listen sockets on 0.0.0.0
and service endpoints will be registered using HOST_IP as the
address.

When set to "6" devstack services will open listen sockets on ::
and service endpoints will be registered using HOST_IPV6 as the
address.

There is no support for "4+6", more work is required for that.

HOST_IPV6 - if SERVICE_IP_VERSION=6 this must be an IPv6
address configured on the system.

Some existing services, like the Openvswitch agent, will continue
to use IPv4 addresses for things like tunnel endpoints.  This is
a current restriction in the code and can be updated at a later
time.  This change is just a first step to supporting IPv6-only
control and data planes in devstack.

This change is also partly based on two previous patches,
https://review.openstack.org/#/c/140519/ and
https://review.openstack.org/#/c/176898/

Change-Id: I5c0b775490ce54ab104fd5e89b20fb700212ae74
Co-Authored-By: Sean Collins <sean@coreitpro.com>
Co-Authored-By: Baodong Li <baoli@cisco.com>
Co-Authored-By: Sridhar Gaddam <sridhar.gaddam@enovance.com>
Co-Authored-By: Adam Kacmarsky <adam.kacmarsky@hp.com>
Co-Authored-By: Jeremy Alvis <jeremy.alvis@hp.com>
2015-07-02 15:16:34 -06:00
Jenkins
c342243cf8 Merge "Add ability to specify cinder lvm_type option" 2015-06-20 17:17:52 +00:00
Dirk Mueller
6bc089fce0 Cinder: On SUSE, avoid restarting tgt
There is a known bug that restart tgtd fails, so go the
workaround way and stopping/starting it instead.

In addition, remove the else case since unstack also
uses cleanup_cinder, which already unconditionally supports
all distros.

Change-Id: Ib70917a95f001ef36a51815f08416fa30084aad6
2015-06-13 22:49:30 +02:00