234 Commits

Author SHA1 Message Date
Mark Goddard
242625dff4 Generate Ceph configuration during upgrade
If upgrading the nova, cinder or manila services via 'kolla-ansible
upgrade', the Ceph config files are not generated. Users will expect
that these files are generated, to pull in any changes from their
configuration or the base kolla configuration.

This change moves Ceph tasks inside config.yml to ensure that they are
performed during deploy, reconfigure and upgrade. This has been done for
nova, cinder, gnocchi and manila - glance already does this.

Change-Id: Ic75692c2bcba9b81dee922ff6fbbccd160e7fa19
Closes-Bug: #1794275
2018-10-10 10:48:55 +01:00
Mark Goddard
b50917fe2c Fix non-root reconfiguration with ceph enabled
Various ceph-related tasks were missing a 'become' that would allow them
to work as a non-root user. This seems to only cause a problem after an
initial deployment, perhaps due to the recursive ownership & permissions
changes at the end of the ceph.yml and external_ceph.yml files.

This change adds the necessary becomes.

Change-Id: I887c7b3bdef49db1dd1bf9e5bdbf5dc47b7f41af
Closes-Bug: #1795125
2018-10-02 09:16:34 +01:00
Adam Harwell
f1c8136556 Refactor haproxy config (split by service) V2.0
Having all services in one giant haproxy file makes altering
configuration for a service both painful and dangerous. Each service
should be configured with a simple set of variables and rendered with a
single unified template.

Available are two new templates:

* haproxy_single_service_listen.cfg.j2: close to the original style, but
only one service per file
* haproxy_single_service_split.cfg.j2: using the newer haproxy syntax
for separated frontend and backend

For now the default will be the single listen block, for ease of
transition.

Change-Id: I6e237438fbc0aa3c89a3c8bd706a53b74e71904b
2018-09-26 03:30:38 -07:00
jiangpch
d57c7019a9 Make haproxy proxy to the right glance_api backend
Since glance_api only start one container when using file
backend, the haproxy should follow this rule.

See: https://review.openstack.org/#/c/448654

Closes-Bug: #1722422

Change-Id: Id3519581e0f54509dacd24d0dd542c630342c771
2018-09-13 15:24:02 +01:00
Zuul
cde23811f7 Merge "Support checkout dedicated version from git with dev mode" 2018-08-29 05:53:04 +00:00
Zuul
3288e0c4e3 Merge "Update usage of "|" to "is"" 2018-08-23 10:23:54 +00:00
MinSun
12f4554330 Support checkout dedicated version from git with dev mode
Now kolla dev mode only support clone master branch from git,
add version tag to support clone dedicated branch.

Change-Id: I88de238e5dc7461ba0662a3ecea9a2d80fd0db60
2018-08-14 16:06:00 +08:00
caoyuan
471985dc2c Update usage of "|" to "is"
With the more recent versions of ansible, we should now use
"is" instead of the "|"

This should update it.

Change-Id: I6fba56fca182349972e8b0ee5452b37aa4090e0c
2018-08-13 12:40:10 +05:30
ZhongShengping
ae246945a6 Deprecate auth_uri option
Option auth_uri from group keystone_authtoken is deprecated[1].
Use option www_authenticate_uri from group keystone_authtoken.

[1]https://review.openstack.org/#/c/508522/

Co-Authored-By: confi-surya <singh.surya64mnnit@gmail.com>
Change-Id: Ifd8527d404f1df807ae8196eac2b3849911ddc26
Closes-Bug: #1761907
2018-08-07 11:58:23 +05:30
Zuul
3e45b2cbec Merge "Use include_tasks instead of include" 2018-07-27 08:16:08 +00:00
Zuul
d1e427b7c1 Merge "Apply Resource Constraints to Openstack Services" 2018-07-26 14:18:34 +00:00
Lakshmi Prasanna Goutham Pratapa
76210a2d85 Apply Resource Constraints to Openstack Services
This commit is to apply resource-constraints only to few OpenStack services.
Commit to apply constraints to other services will be made in coming commits.

Partially-Implements: blueprint resource-constraints

Change-Id: Icafa54baca24d2de64238222a5677b9d8b90e2aa
2018-07-25 17:05:04 +01:00
Jeffrey Zhang
b51eeed89e Use include_tasks instead of include
include is marked as deprecated since ansible 2.4[0]

[0] https://docs.ansible.com/ansible/2.4/include_module.html#deprecated

Co-Authored-By: confi-surya <singh.surya64mnnit@gmail.com>
Change-Id: Ic9d71e1865d1c728890625aeddf424a5734c0a8a
2018-07-25 23:57:22 +08:00
Joshua Harlow
07dfc20292 Allow externally managed swift as glance backend
It is possible to have an accessible swift API that is not managed by
kolla-ansible -- for example, ceph exposes a swift API, and using that
requires setting swift as the glance backend.

So, we should loosen the requirement that using the swift backend for
glance requires swift be enabled in kolla-ansible.

Co-Authored-By: Adam Harwell <flux.adam@gmail.com>

Change-Id: I17076d5412d2b1e1f13bb0badceaca85a5cee108
2018-07-20 08:55:57 +00:00
Adam Harwell
8cc97c60d3 Fix glance config copy when a service is disabled
In this patch, the glance-registry service was disabled:
https://review.openstack.org/#/c/566804/

However, the config task still tries to copy files for it, which will
break due to path errors.

Change-Id: If39bb12bf830e6559342037ae2a2b99a784ee503
2018-07-18 14:08:40 -07:00
Zuul
66205ab1fa Merge "Migrate ceph keyring creation to kolla_ceph_keyring module" 2018-07-05 07:29:37 +00:00
Jeffrey Zhang
3397668d10 Migrate ceph keyring creation to kolla_ceph_keyring module
In this way, keyring caps is updatable.

Change-Id: Idf7f222645b5073e2c72d59eecf3d47b3f1dc6ba
2018-07-02 09:49:48 +08:00
Mark Duggan
87043bc918 config proxy settings inside glance_api container
Adding the capability to configure settings for http_proxy https_proxy
and no_proxy inside glance_api container. This is required when import
images from external http resources behind a proxy.

Co-Authored-By: Paul Bourke <paul.bourke@oracle.com>
Closes-bug: #1775815
Change-Id: I85661f04311d5671adecc84c470f2e4db07cfe1d
2018-06-24 11:51:32 +00:00
Ha Manh Dong
30be04ea91 Specify 'become' for all tasks that use kolla_docker module
Add become to all tasks that use the module "kolla_docker"

Change-Id: I4309c4011687b88ec31d739fd8f834fe2326ff10
Partial-Implements: blueprint ansible-specific-task-become
2018-06-08 12:39:24 +00:00
Zhangfei Gao
ce809aea23 osprofiler support redis
Currently osprofiler only choose elasticsearch,
which is only supported on x86.
On other platform like aarch64 osprofiler can
not be used since no elasticsearch package.

Enable osprofiler by enable_osprofiler: "yes",
which choose elasticsearch by default.
Choose redis by enable_redis: "yes" & osprofiler_backend: "redis"
On platform without elasticsearch support like aarch64
set enable_elasticsearch: "no"

Change-Id: I68fe7a33e11d28684962fc5d0b3d326e90784d78
2018-06-01 09:34:04 +08:00
Zuul
06b46533a4 Merge "Fix ansible warning" 2018-05-11 04:13:44 +00:00
Zuul
10b3e38961 Merge "Apply Glance database migration" 2018-05-11 02:55:14 +00:00
Jeffrey Zhang
c567055176 Fix ansible warning
- rename action and serial to kolla_ansible and kolla_serial
- use become instead of "sudo <command>" in shell
- Remove quota for failed_when and changed_when in rabbitmq tasks

Change-Id: I78cb60168aaa40bb6439198283546b7faf33917c
Implements: blueprint migrate-to-ansible-2-2-0
2018-05-11 02:54:02 +00:00
Duong Ha-Quang
365e3d3a3f Apply Glance database migration
Apply Glance database upgrade procedure:

https://docs.openstack.org/glance/latest/admin/zero-downtime-db-upgrade.html

Rolling upgrade in Glance requires that glance-registry is not deployed and run

Depends-On: https://review.openstack.org/532128
Depends-On: https://review.openstack.org/566804

Change-Id: Ia5d0cee2385facefda9d423051b74ab51d075f13
Implements: blueprint apply-service-upgrade-procedure
2018-05-09 16:29:27 +00:00
Duong Ha-Quang
a155e796af Disable glance-registry
As described in [1], [2], glance-registry was deprecated from Queens and will be
removed in S, so we should disable glance registry in Queens but keep the image
and deploy logic if user need this (but it's low chance due to glance-registry
almost do nothing currently).

This patch only disable glance registry microservice.

[1]: http://specs.openstack.org/openstack/glance-specs/specs/newton/approved/glance/deprecate-registry.html
[2]: https://blueprints.launchpad.net/glance/+spec/deprecate-registry

Change-Id: I6667325711d1c54cf5233ad6973d89ea396a46b5
Closes-bug: #1769837
2018-05-08 14:43:30 +07:00
Zuul
2b8bc555cb Merge "Fix SSL api for multiple services" 2018-04-27 08:55:48 +00:00
caoyuan
1822d4890d Avoid creating an empty volume
Avoid creating an empty volume[0] when not use dev mode
for glance.

[0]: https://github.com/openstack/kolla-ansible/blob/master/ansible/roles/glance/defaults/main.yml#L14

Change-Id: Ib27489abe20fb562acbc28263f7680e39d9dab44
2018-04-22 21:11:06 +08:00
Zuul
1bdb98e9a3 Merge "Make dev mode available to glance-registry" 2018-04-21 16:03:25 +00:00
Kevin TIBI
a81a5d5d5d Fix SSL api for multiple services
If SSL is enabled, api of multiple services returns
wrong external URL without https prefix.

Removal of condition for deletion of http  header.

Change-Id: I4264e04d0d6b9a3e11ef7dd7add6c5e166cf9fb4
Closes-Bug: #1749155
Closes-Bug: #1717491
2018-04-18 17:20:27 +02:00
Jeffrey Zhang
84ade4e149 Remove useless module_extra_vars in registry.yml
- remove uesless module_extra_vars, this is a historical issue. In the
  past, we use 'docker exec kolla_toolbox ansible xxx' to run module on
  target node, so complex data have to pass through extra_vars. Now we
  are using kolla_toolbox module, no need to use extra_vars anymore.
- Remove some useless until.

Change-Id: I72ed28001202917f9a82a1c3ea33cd6319911ec8
2018-04-16 09:14:54 +08:00
caoyuan
654196d674 Make dev mode available to glance-registry
Change-Id: I04bd9cf102a1aa0a4d159a11c384118aba45257d
2018-04-16 00:18:43 +08:00
Zuul
e65781e679 Merge "When copying glance-swift.conf ensure mode and become used" 2018-04-09 07:56:46 +00:00
Joshua Harlow
0adee7b589 When copying glance-swift.conf ensure mode and become used
This makes it so that the file copied has the same perms
as the other copied files and that become is used so that the
copy works (otherwise it does not).

Change-Id: I22f39ef30760701e174f304de6ff959ff60607ad
2018-04-06 13:07:58 -07:00
Zuul
c5b3cfd847 Merge "Retry glance API sanity checks" 2018-04-04 06:32:18 +00:00
Eduardo Gonzalez
ea1a1dee0d Verify YAML syntax in gates
This patchset implements yamllint test to all *.yml
files.

Also fixes syntax errors to make jobs to pass.

Change-Id: I3186adf9835b4d0cada272d156b17d1bc9c2b799
2018-03-26 17:56:22 +02:00
Zuul
c3987096e5 Merge "Have glance notifications work like the other projects" 2018-03-26 07:07:12 +00:00
Zuul
37f6e92bb1 Merge "Configure application for ceph pool" 2018-03-26 02:51:11 +00:00
Joshua Harlow
39cb42ecf5 Glance policy copy is not using correct name
This is currently using the full path for the destination
which doesn't appear to be what is wanted; instead the
actual file name should be used.

Closes-Bug: 1757532

Change-Id: If85e98097a0d0e0b55d0b2993185c8591e6dd10e
2018-03-22 09:11:45 -07:00
Jeffrey Zhang
6e377622be Configure application for ceph pool
pool application is mandatory since ceph Luminous.

Change-Id: I8c124899b46b1388ab3c2957b4ece0f6aab1378b
Closes-Bug: #1757957
2018-03-22 15:13:31 +08:00
Joshua Harlow
98d1e4534f Have glance notifications work like the other projects
Currently glance has a very simplistic ability to configure
notifications which seems different than nova and neutron which
both allow for selecting the topics used. In order to make glance
work like the others just have glance be configured like the other
projects notifications are being configured.

Change-Id: Ia12993e1b86d040c2705e72b32f93b874fe4adc6
2018-03-21 13:36:01 -07:00
Clint Byrum
42f7e25125 Retry glance API sanity checks
Apparently this API takes a little while to get started and working.

Change-Id: I328929d596765d3597f4f868cbbe288b63130bca
2018-02-23 12:53:33 -08:00
Alexandru Bogdan Pica
9822bb535e Fix MySQL access denied error during upgrade
This change makes it so that if preconfigured database users are used,
the attempt to change the log_bin_trust_function_creators mysql
variable isn't made anymore.

Also updated the upgrade docs

Change-Id: I356313952d435de6d3b5444c0dd8a71f45aee452
Closes-Bug: 1748269
2018-02-09 14:18:05 +02:00
Jeffrey Zhang
4c5e403ae8 Allow normal user to create functions during databas sync in glance
Closes-Bug: #1748347
Change-Id: I9fffc86e7c69ac5edb93c88636e7d49f73544d85
2018-02-09 11:25:26 +08:00
Dai Dang Van
d77930373e Support policy.yaml file [part 2]
- Keystone
- Glance
- Nova
- Cinder

This will copy only yaml or json policy file if they exist.

Change-Id: I4a9415d82322aed68c9b7650bdf346f58fa49e2a
Implements: blueprint support-custom-policy-yaml
Co-authored-By: Duong Ha-Quang <duonghq@vn.fujitsu.com>
2018-01-29 13:35:59 +00:00
Alexandru Bogdan Pica
8e3b79440c Implement external MariaDB and pre-configured Databases support
This change allows the following use cases:

1. Using an already-configured MariaDB / MySQL server / Cluster
2. Using already-created DB users, without requiring root DB access.

Update: added external mariadb precheck

Change-Id: I78b0d178306d7c5293b0bf53e445f19f18b4b824
Implements: blueprint external-mariadb-support.
Closes-Bug: #1603121
2018-01-23 13:07:40 +00:00
caoyuan
b63ecd7e3e Update kolla_internal_fqdn to database_address since it defined in all.yml
through the database_address has beed defined in groups_vars/all.yml, we should
better use it, this way, if we want to use external database, we just need to
redefined in all.yml

refer to https://github.com/openstack/kolla-ansible/blob/master/ansible/group_vars/all.yml#L83
Co-Authored-By: chenqiaomin <chen.qiaomin@99cloud.net>

Change-Id: Ie559301451954e16347ceaabf02f594c5c5cbe56
2018-01-17 13:01:48 +08:00
caoyuan
d8f6c76f6b fix the tempest failure for external ceph
show_multiple_locations is missing for external ceph, and it will
cause tempest run failed.
it means the conditon for show_multiple_locations is
glance_backend_ceph but not enable_ceph, this patch it fix it.

Change-Id: I3c95c3b0a7e34639b376bdfd0205f3930b06e2cd
Closes-Bug: #1741022
Co-Authored-By: chenqiaomin <chen.qiaomin@99cloud.net>
2018-01-03 19:05:38 +08:00
Zuul
d891ac396b Merge "Remove show_image_direct_url for ceph plugin" 2017-12-28 07:34:08 +00:00
zhubingbing
3dee904215 Remove show_image_direct_url for ceph plugin
To fix it we change the default param to True.
'show_image_direct_url' will be overridden.
Currently glance v2 doesn't allow to specify custom
locations for image by default, it returns 403.


Closes-Bug: #1740223

Related to https://review.openstack.org/#/c/279630/2

Change-Id: Ib4dd54c69830ab8f3f9812877b026f81c23c224a
2017-12-27 07:06:13 +00:00
Zuul
a9b8a392ce Merge "Restart services after a change in the external ceph configuration" 2017-12-13 17:58:43 +00:00