314 Commits

Author SHA1 Message Date
Ghanshyam Mann
d331fa7a2d Set cinder's my_ip based on SERVICE_IP_VERSION value
Devstack's lib/cinder set the my_ip on cinder side but it
hard-code it with HOST_IP[1]. It is no issue for IPv4 env
but when you build or run the IPv6 job then this ip is left
to set with IPv6. my_ip should be set to HOST_IP or HOST_IPV6
based on SERVICE_IP_VERSION value.

As part of Train community goal 'Support IPv6-Only Deployments',
we will expand the 'devstack-tempest-ipv6' job to do IPv6-only
deployments verification so we need fix the the my_ip setting.

Closes-Bug: #1838250

Depends-On: https://review.opendev.org/#/c/677524/

[1]6aeaceb0c4/lib/cinder (L231)

Change-Id: I71c74e46467a5d3c1bf9c7d683f364cba7cf9d80
2019-08-21 05:42:08 +00:00
Dirk Mueller
8ab64b3236 Drop signing_dir option from configure_auth_token_middleware
This is no longer being used due to Keystone PKI tokens no longer
being implemented.

In order to not break backward compatibility we create a new function
that is to be used instead and deprecate the old one. Modify the old
function to ignore the 3rd argument and display a deprecation warning.
Adjust callers to no longer create and set that directory, calling the
new function instead.

Change-Id: Id0dec1ba72467cce5cacfcfdb2bc0af2bd3a3610
2019-06-28 16:28:03 +00:00
Brian Rosmaita
87daf8abe6 End support for changing cinder periodic_interval
Support for changing the cinder periodic_interval config option
was added way back in havana as a workaround for bug #1180976
by change I20e52e66fcc94b224476cdd14c88bd6981b4e617.  As the fix
for that bug does not require modifying this config value, and
such modification may have unintentional adverse effects, end
the support.

Change-Id: I1ef1fe564123216b19582262726cdb1078b7650e
Partial-bug: #1824837
2019-04-24 09:41:57 -04:00
whoami-rajat
f28c75f87a Cinder: create target directory for targetcli-fb package
While installing 'targetcli-fb' on bionic, a dependent package
'python-rtslib-fb' requires (but doesn't create) /etc/target
and fails[1] when this directory not found.
This patch creates the required directory.

[1] http://logs.openstack.org/26/641926/1/check/cinder-tempest-dsvm-lvm-lio-barbican/8f95df1/logs/devstacklog.txt.gz#_2019-03-13_03_36_44_623

Related-bug: #1819819
Change-Id: I7efefead873037da4aaacbdc6284458bdaad0f6b
2019-03-14 10:20:37 +00:00
Eric Harney
363acd9d3d Cinder: install targetcli-fb for Bionic
The "targetcli" package no longer exists
in Bionic and has been superseded by
"targetcli-fb".

Change-Id: I99e4e8ad8fbb6e7c86571af8b0c222dafacf6447
2019-03-04 17:50:47 -05:00
Attila Fazekas
bfd2a54c13 Stop creating the cinderv1 endpoint
The cinder v1 api is disabled by default,
the catalog entry is confusing.

Change-Id: Ifea283d8aff9f7a70b68d601c5225c3d4fe250e6
2019-02-08 14:53:37 -05:00
aojeagarcia
61f6cafed7
Switch to lioadm in openSUSE distros
This patch switches the CINDER_ISCSI_HELPER from tgtadm
to lioadm in openSUSE distros, as it increase the performance
and reduce the flakiness on some tests.

Change-Id: Ic3ee9c6baabe20f8f4d14246f6e29808796a5db9
Signed-off-by: aojeagarcia <aojeagarcia@suse.com>
2018-09-24 12:34:15 +02:00
Matt Riedemann
31c7d5c796 cinder: configure backup_swift_url in subnodes
The tempest-multinode-full job is running the c-bak
service on the subnode where swift isn't running, and
because of the "is_enabled_service swift" check, cinder
on the subnode wasn't getting configured to talk to
swift so the c-bak service was down. Since chances are
good that we're running swift, just configure cinder
to always use it.

Change-Id: I86b090967dadeeefc017ff0311beeea9441b6ba6
Closes-Bug: #1783128
2018-07-23 09:25:08 -04:00
Zuul
5da7e4a22e Merge "Fix running with SERVICE_IP_VERSION=6" 2018-07-10 06:10:28 +00:00
Monty Taylor
69057d4655
Register versioned endpoint for block-storage service
cinder does not yet support operations without project_id in the url.
The unversioned endpoint is not a usable endpoint for a user that
requests the block-storage service. Although it would be lovely to have
the block-storage service have the unversioned endpoint in the catalog,
we need to get project-id out of the urls first.

Change-Id: I4246708b6ea31496ba4d565ab422abc76f730ee7
Needed-By: https://review.openstack.org/564494
2018-05-01 05:57:21 -05:00
Zuul
a534913572 Merge "Remove default value for Cinder Auth Strategy" 2018-03-13 16:35:13 +00:00
Ivan Kolodyazhny
165199eebd Remove default value for Cinder Auth Strategy
Cinder supports both noauth and keystone auth mode. So now we can
configure this value via local.conf:

[[post-config|$CINDER_CONF]]
[DEFAULT]
auth_strategy = noauth

Change-Id: I1e434362117ab30dae71a8f3a80bc139e78f51bc
2018-03-12 22:26:17 +02:00
Jens Harbott
dc7b429463 Fix running with SERVICE_IP_VERSION=6
- There are some locations where we need the raw IPv6 address instead of the
  url-quoted version enclosed in brackets.
- Make nova-api-metadata service listen on IPv6 when we need that.
- Use SERVICE_HOST instead of HOST_IP for TLS_IP.

Change-Id: Id074be38ee95754e88b7219de7d9beb06f796fad
Partial-Bug: 1656329
2018-03-11 08:53:41 +00:00
Zuul
a6a36d11d8 Merge "Allow overrides for ETCD ports" 2018-03-11 05:43:44 +00:00
Lenny Verkhovsky
f63ddd609f Replace depricated iscsi_helper with target_helper
Cinder change I5231f8fe3399deb9c57e6efb121d0d008dc9c7f4
replaces iscsi_helper with more general one.



Change-Id: I49fe0365b170e5a5b0449d80003bcf970e4c191d
2018-03-01 07:38:28 +00:00
Monty Taylor
22d70554ac
Add /volume to block-storage endpoint
The block-storage endpoint was added to the catalog, but in the suburl
case it was not added with the /volume suburl. This leads to find it and
attempting to use it but not being able to because it's mis-formed.

Needed-By: https://review.openstack.org/545117
Change-Id: I84721c8ae637417e4b01be9e546ff77c250fc149
2018-02-15 16:42:49 -06:00
Zuul
632d87a17c Merge "Create block-storage endpoint for cinder" 2018-01-31 08:27:54 +00:00
Zuul
3d0f7c7af3 Merge "lioadm make sure targetcli is there" 2018-01-01 22:53:25 +00:00
Zuul
924b1149c8 Merge "Remove Cinder policy.json install" 2017-12-13 04:31:01 +00:00
Attila Fazekas
501aaeb4e7 lioadm make sure targetcli is there
Without installing the targetcli package
tools and configs can be missing.

The code was correct baside a typo,
it is `ISCSI` not `ICSI`

Change-Id: I32e5d84d87560458f0eaaf820dcd00c86e6dec8b
2017-12-11 13:20:19 +00:00
lkuchlan
cb8256f225 Add fixed_key parameter under key_manager section in cinder conf
This change is necessary for uploading an encrypted volume to glance.

Change-Id: I0975fc0c49ec243025d076f0406e28c4f5522d3a
2017-12-04 10:58:58 +02:00
Sean McGinnis
1d12784912 Remove Cinder policy.json install
Cinder has now implemented "policy in code" and policy.json is
only needed for overriding default policies. The default policy.json
file has been removed in Cinder so we need to stop trying to copy
it during Cinder setup.

Change-Id: I364e401227fe43e2bacf8a799e10286ee445f835
2017-11-30 14:15:04 -06:00
Davanum Srinivas
27367bea48 Allow overrides for ETCD ports
This will enable us to run one etcd for devstack and another
for kubernetes in the same box if necessary

Change-Id: Ib71ded24727b80afd4d98eb68bade0f8c0f72311
2017-11-30 20:04:05 +00:00
Eric Fried
cda2cb557f Create block-storage endpoint for cinder
block-storage is the official service type for cinder, according to the
service-types-authority.  Add it as a service in devstack, with cinder's
unversioned endpoint, to enable proper discovery.

Change-Id: I75cf7212678f7f270c3c32f0bce227dbbf6b466d
2017-10-10 11:49:06 -05:00
Ian Wienand
1f82f43016 Revert "Remove cache dirs from the services"
This reverts commit ef5ebed6c9ca3d9d47fd2a732a1542555a0f65ba.

The problem here is a backwards-incompatible change to
configure_auth_token_middleware.  Plugins are still passing a
"signing_dir" which is interpreted now as the "section" argument
... this leads to an interesting red-herring issue; because "v" is a
gnu sed command for checking the version, a signing_dir of "/var/..."
(as done in most plugins) gives the weird error:

 sed: -e expression #1, char 32: expected newer version of sed

I think we'll either need a new function, or dummy arguments to get
this back in.

Change-Id: I2098d4eb2747282622cf486fa7dbf216f932f58b
2017-10-04 09:54:43 +11:00
Jamie Lennox
ef5ebed6c9 Remove cache dirs from the services
PKI tokens have been actively deprecated from keystone and there are
deprecations being emitted from keystonemiddleware. Because of this we
no longer need an auth cache directory in the services where the PKI
certifcates used to be stored.

Remove the creation and use of all these AUTH_CACHE directories.

Change-Id: I5680376e70e74882e9fdb87ee1b95d5f40570ad7
2017-09-26 10:10:11 +10:00
Sean McGinnis
3271271778 Change Cinder api_class setting to backend
Castellan switched the `api_class` config option to `backend` in commit
8980bf7da55dd084ad84c84534fe937f0d43b9c0. The old setting will still be
recognized for now, but we should switch to using the new, correct config
option.

Change-Id: I5e46c738531d5d56777e91a00f4cee9531356f2e
2017-09-25 08:46:00 -05:00
Jenkins
5f348dace5 Merge "Change deprecated nova settings" 2017-09-25 13:37:20 +00:00
Jenkins
86bdfffbe0 Merge "clean up screen and tail_log references" 2017-09-19 13:23:02 +00:00
Jenkins
0fb4cd64e1 Merge "Change CINDER_LVM_TYPE to 'auto' as the default" 2017-09-19 05:52:56 +00:00
Jenkins
f60babc563 Merge "Fix errors in tls-proxy startup for cinder" 2017-09-19 01:58:13 +00:00
Gyorgy Szombathelyi
c04ac03e21 Change deprecated nova settings
Change-Id: I0d129150411ede344c9b710d1aca5af1df3478b6
2017-09-13 10:32:41 +00:00
Jenkins
80021b8f9f Merge "Fix URLs when running with tls-proxy enabled" 2017-09-08 15:27:18 +00:00
Sean McGinnis
486376e91b Change CINDER_LVM_TYPE to 'auto' as the default
This was previously set to thin as the default, but at the time
there were failures seen with what appeared to be race conditions
when creating snapshots.

These failures are not seen locally, and we have a lot of installs
using the default auto by this point with no reports from the field
of seeing this failure. This is to be able to more extensively test
this in the gate, and hopefully get this switched over to be able
to thinly provision by default when possible.

Change-Id: I3e99adadd1c37ba8b24b6cb71a8969ffc93f75a1
Related-bug: #1642111
2017-09-06 07:47:12 -05:00
Sean Dague
0eebeb415a clean up screen and tail_log references
Change-Id: I6bcfa09931ed1f70e071ccb16688c15c7ef2898f
2017-09-01 15:08:17 -04:00
Jens Harbott
52609c684a Fix errors in tls-proxy startup for cinder
Two typos made starting tls-proxy fail when CINDER_USE_MOD_WSGI is
False.

Change-Id: I0435282182087a36d987843699152c1c08c4a494
2017-08-31 08:46:14 +00:00
Jens Harbott
411c34da69 Fix URLs when running with tls-proxy enabled
Various services are returning broken links when running behind
tls-proxy. These issues can be fixed by setting the X-Forwarded-Proto
header in the apache config and letting oslo_middleware parse it.

Change-Id: Ibe5dbdc4644ec812f0435f59319666fc336c195a
Partial-Bug: 1713731
2017-08-29 14:40:26 +00:00
Davanum Srinivas
aceb27e858 Add procname for uwsgi based services
Code in grenade and elsewhere rely on the process/service name
when one runs "ps auxw" and they grep for example "grep -e glance-api"
to check if the service is running. with uwsgi, let us make sure
we use process name prefix so it is easier to spot the services
and be compatible with code elsewhere that relies on this.

Change-Id: I4d1cd223ed9904fcb19b26fc9362b676e0b4f9b3
2017-08-17 10:33:14 -04:00
Eric Harney
8ea8660e36 Fix Cinder tls-proxy WSGI test
This currently will throw errors like:

lib/cinder: line 480: [True: command not found

Change-Id: I6bc08532cf99411f39d23523f9fc7851e7804131
2017-08-10 13:36:13 +00:00
Sean McGinnis
daf1274409 Run cinder-api with uWSGI
Per the Pike goal, switching the Cinder API control plane to
use WSGI in Apache.

Co-Authored-By: Ivan Kolodyazhny <e0ne@e0ne.info>
Depends-On: Ie8a0eeab1bf31887d6f37cf155b2d161ddfb172d
Depends-On: I14b68f36e7fcc5341bbdbcf165274d9d50f7dd04
Change-Id: I8cef6c98f9242cc38d66de0ac499490e2a237887
2017-06-29 15:13:49 +03:00
Jenkins
66109302ab Merge "Switch to lioadm for centos cinder" 2017-06-28 23:22:30 +00:00
Jenkins
9c39cb68df Merge "Stop setting osapi_volume_base_URL" 2017-06-28 21:33:24 +00:00
Matthew Treinish
1fa6536357 Revert "Revert "Use uwsgi for glance-api""
This reverts commit 3410e3e01bdbdbfd360d9baebeac081c33ee0821.

Change-Id: Ic58711311eb8534cb3c4b25c333197c412ffdce5
2017-06-23 22:32:37 +00:00
Ian Wienand
3410e3e01b Revert "Use uwsgi for glance-api"
This reverts commit e6217a9719b88b550ccbbce7c9bc064cb746c1a3.

Unfortunately it seems to break glance; for examples see some of the
nodepool dib jobs which have all failed to upload images into glance.

Note this has a revert for 43304849cfde41fa86a6fdd334ab6e703598ef8d as
well, since that uses GLANCE_URL defined here.

[1] http://logs.openstack.org/51/475051/2/gate/gate-dsvm-nodepool-redhat-src/e1bdb34/
[2] http://logs.openstack.org/51/475051/2/gate/gate-dsvm-nodepool-ubuntu-src/6a7665b/
[3] http://logs.openstack.org/51/475051/2/gate/gate-dsvm-nodepool-opensuse-src/b357de1/

Change-Id: I2aea120e733b05e806801121ec994f4e31a337d9
2017-06-22 13:48:06 +10:00
Jenkins
7fef90aff9 Merge "Use uwsgi for glance-api" 2017-06-21 08:34:52 +00:00
Clark Boylan
633dbc3d8e Track db sync command time useage
We are trying to keep better track of what pieces of devstack consume
the most time. Add the db sync commands to the time tracking as they run
the database migrations which can take more time than expected.

Change-Id: Ib92f2b8304ccf703712d45fd7207444de3599e2d
2017-06-14 12:09:21 -07:00
Clark Boylan
902158bb8f Don't treat service as enabled if in disabled list
The old implementation for is_$service_enabled simply checked if any of
the subservices were enabled and if so the service was considered to be
enabled. This makes disabling services complicated as it means you have
to list every single subservice which can and do change over time.

Instead also check if the generic service name is in the disabled
services list and if so don't treat the service as enabled.

Change-Id: I7fe4dfca2cd9c15069d50a04161a29c5638291cb
2017-06-07 17:23:38 +00:00
Jenkins
adabee29f6 Merge "Don't run and check c-api if it is disabled" 2017-06-05 20:22:10 +00:00
Sean McGinnis
29ec28216f Configure volume_clear setting per backend
volume_clear is currently set in the DEFAULT section,
but this is a backend specific setting, and therefore
needs to be set in the backend config section.

Change-Id: Ifa3a659bb4768b8915a0f23e7f14b0f3348d93d2
2017-05-30 15:51:17 -05:00
Clark Boylan
2dfca047d9 Don't run and check c-api if it is disabled
Previously we didn't block out the c-api startup code because the
devstack functions to start services check that for us. However, since
the cinder devstack code checks the service is up and runs the tls proxy
if tls is enabled we need to block it all off to avoid doing those
things if c-api is disabled.

Change-Id: I1c4f22f785af96caaf4baa21ff28714b9afd3458
2017-05-30 13:22:39 -07:00