5646 Commits

Author SHA1 Message Date
Mark Goddard
5db9eab042 Fix invalid JSON body in Elasticsearch API requests
The kibana, elasticsearch and monasca roles all use the uri module to
perform Elasticsearch configuration tasks via its API. The body of the
request should be JSON formatted, but these tasks now fail because it is
not.

The following error is seen:

TASK [monasca : Create default control plane organisation if it doesn't
exist]

invalid character '\\'' looking for beginning of object key string

The 'JSON' body in this case was:

{'name': 'monasca_control_plane@default'}

This was probably caused by the recent change to execute these tasks in
the kolla_toolbox container, but may also be caused by an Ansible
version bump (or something else).

This change fixes the issue by ensuring that the body is JSON-encoded in
all cases.

Change-Id: I7acc097381dd9a4af4e014525c1c88213abbde93
Closes-Bug: #1864177
2020-02-21 10:09:51 +00:00
Michal Nasiadka
f031560fa3 Stop using deprecated stores and default_store in glance
Option "stores" from group "glance_store" is deprecated for removal
Option "default_store" from group "glance_store" is deprecated for removal

Multi store support is available since Rocky - time to start using
it.

Change-Id: I4991d754e34ec42a4b38331839d9679b307589bd
2020-02-21 08:48:29 +00:00
Zuul
0c5432dc8e Merge "Introduce influxdb_datadir_volume" 2020-02-20 20:09:03 +00:00
Zuul
bbe5be3611 Merge "Fix reno paths of three recent renos related to deprecations" 2020-02-20 12:15:32 +00:00
Zuul
4ca8b102d0 Merge "Change /run bind mount for neutron/openvswitch" 2020-02-20 12:01:55 +00:00
Radosław Piliszek
e1442879a9 Fix reno paths of three recent renos related to deprecations
Change-Id: I9aa211ceefe7ad3524323be837ec090969f94557
2020-02-20 11:46:46 +01:00
Zuul
c6855fb79f Merge "Deprecate deployment of MongoDB" 2020-02-20 10:44:36 +00:00
Zuul
5dd52a6b64 Merge "Clean up some kolla-kubernetes cruft in OVS" 2020-02-20 10:14:08 +00:00
Zuul
d262ad628d Merge "Deprecate VMware integrations" 2020-02-20 10:03:13 +00:00
Michal Nasiadka
227008cf68 Change /run bind mount for neutron/openvswitch
Currently we have a very wide /run mount for all Neutron/OVS services,
which allows sudo/rootwrap to contact with the hosts dbus - all symptoms
are documented in the related bug.

Since we use tcp connections to OVS from Neutron agents - removing
bind mounts.

Closes-Bug: #1861792

Change-Id: Ifee4bec7b2e9ef4e2d624b1411f1a9e6332325c6
2020-02-20 09:09:12 +01:00
Jason Anderson
5736500030
[gnocchi] Disable statsd daemon by default
This daemon is an additional piece of functionality supported by Gnocchi
and the general pattern in KA is to disable such things unless the user
explicitly wants them. This also helps avoid having to set the
resource_id, user_id, and project_id variables for Gnocchi if you don't
care about this daemon.

Change-Id: I5f14cee4b0bb0d781b1ff53200d11de972d20c82
2020-02-19 15:28:38 -06:00
Radosław Piliszek
b76c571790 Deprecate XenAPI integrations
Per http://lists.openstack.org/pipermail/openstack-discuss/2020-February/012662.html
and http://lists.openstack.org/pipermail/openstack-discuss/2019-September/009180.html

Deprecates support for deploying with XenAPI integrations.
In Victoria support for these will be removed from Kolla Ansible.

This is dictated by lack of interest and maintenance, and upstream
decision of deprecation by Nova (for the same reasons).

Change-Id: Ie2bfc41dd7085f35e89a5c4e0b7fdb44631eb4e3
2020-02-19 21:33:39 +01:00
Radosław Piliszek
175c715e35 Deprecate VMware integrations
Per http://lists.openstack.org/pipermail/openstack-discuss/2020-February/012646.html

Deprecates support for deploying with VMware integrations.
In Victoria support for these will be removed from Kolla Ansible.

This is dictated by lack of interest and maintenance.

Change-Id: I9b3d81b0cfcb1c43dc1b671b4f646d06b95b4b42
2020-02-19 21:20:07 +01:00
Mark Goddard
0ab13dc7db Clean up some kolla-kubernetes cruft in OVS
The start-ovsdb-server script is only ever called with one argument by
kolla ansible, so we can remove the multiple argument handling used by
kolla-kubernetes (RIP).

Change-Id: I9c3bc8ad24768052fc883c6fedd5f19336eb3fa4
2020-02-19 17:39:12 +00:00
Will Szumski
4cf7ff9fa2 Introduce influxdb_datadir_volume
This allows you to tune the performance of InfluxDB by locating the
volume on a drive that is separate to the default docker storage.

Change-Id: Iea555a2702b225b30f5d7035b8a703d4f3376ee7
2020-02-19 16:08:33 +00:00
Zuul
65b0110ebc Merge "Allow setting additional galera WSREP options" 2020-02-19 12:56:40 +00:00
Michal Nasiadka
ea36bbf1d1 Allow setting additional galera WSREP options
Change-Id: I26206bece95d31c0182e75f2a585c50d6f0fad6f
2020-02-19 10:56:54 +01:00
Radosław Piliszek
a6c97d7284 Deprecate deployment of MongoDB
Per http://eavesdrop.openstack.org/meetings/kolla/2020/kolla.2020-02-12-15.01.txt

Deprecates support for deploying MongoDB. In Victoria support for
deploying MongoDB will be removed from Kolla Ansible. Note CentOS 8
already lost support for MongoDB due to decisions made upstream.

This affects Panko as it will no longer be possible to get automatic
deployment of MongoDB database for it. However, the default, SQL,
backend is and will be supported via MariaDB.

MongoDB lost its position in OpenStack environment after
controversial relicensing under their custom SSPL (Server Side
Public License) which did not pass OSI (Open Source Initiative)
validation.

Change-Id: I09f77d275dfd2c8f9ae97a47c8ab1136a8de880f
2020-02-19 09:30:51 +00:00
Radosław Piliszek
5dd9c532c6 Fix RabbitMQ hostname address resolution precheck
Make it require uniqueness of resolution as well to avoid later
issues with RabbitMQ going crazy.

Change-Id: I000ba6c62ab44eac0abdf8d5d1f069adfbc6552f
Closes-bug: #1863363
2020-02-16 10:07:12 +01:00
Radosław Piliszek
eff22e7c56 Fix Cinder Backup access to kernel modules (iscsi_tcp issue)
It looks like the only missing part was the actual mount of
/lib/modules

Now Cinder Backup volumes differ from Cinder Volume volumes only
by /etc/target which is not relevant (Cinder Backup does not
provide a target).

Change-Id: Iccf4298c4f9306eb0a95b6712815778555ef44fc
Closes-bug: #1863094
2020-02-14 08:54:30 +01:00
Michal Nasiadka
ab3151d8f2 Fix swift entries in group_vars/globals.yml
Change-Id: I41c2fb7d476d553aeaca34feef1d045967c284fb
2020-02-13 15:33:13 +01:00
Zuul
cd3c51197e Merge "Remove kolla-ceph" 2020-02-13 10:09:24 +00:00
Radosław Piliszek
410fcc6363 Fix Prometheus mysqld exporter pointing to VIP address
Change-Id: I4f553bd0888e200ddf744604c5029e67a95ee2cd
Closes-bug: #1863041
2020-02-13 10:27:45 +01:00
Zuul
e298475488 Merge "Use internal API for masakari-monitor" 2020-02-12 18:48:23 +00:00
Radosław Piliszek
adbe115e39 Use more permissive regex to remove the offending 127.0.1.1
line from /etc/hosts

Ubuntu always uses 127.0.1.1 for that with some tricky sauce
around `hostname` depending on whether it contains '.' or not.
And when I mean `hostname` it's the one returned by `hostname`
command with no arguments.

ansible_hostname is always a single word so we can match on that.

I did not want to remove just any 127.0.1.1 in case someone
is using it for other purposes. :-)

Change-Id: I8bd3d42a5e3bd0f63336ed60a0af90d52b1650d6
Closes-bug: #1862739
2020-02-12 12:16:26 +01:00
Gaëtan Trellu
7f951ea56e Use internal API for masakari-monitor
By default api_interface is set to public, masakari-monitor
on compute nodes should communicate via the internal API to
reach masakari-api.

Change-Id: I454f44e57d7b17d93d4aefc4cbbed93aefe874b1
Closes-Bug: #1858431
2020-02-12 10:23:50 +00:00
Michal Nasiadka
4e6fe7a6da Remove kolla-ceph
Kolla-Ansible Ceph deployment mechanism has been deprecated in Train [1].

This change removes the Ansible code and associated CI jobs.

[1]: https://review.opendev.org/669214

Change-Id: Ie2167f02ad2f525d3b0f553e2c047516acf55bc2
2020-02-11 11:42:06 +01:00
Michal Nasiadka
d43fd1864b External Ceph: Fix hardcoded gnocchi keyring
Change-Id: I507ebba82227e5f4567de6f5a0cb76f8ee46b2e3
Closes-Bug: #1862393
2020-02-11 08:59:07 +00:00
Zuul
4200089716 Merge "Generate self signed TLS certificates" 2020-02-07 17:33:49 +00:00
Zuul
c108e07db9 Merge "Use kolla_toolbox to execute REST methods" 2020-02-07 17:33:48 +00:00
Zuul
b3c8ff59f1 Merge "Copy CA into containers." 2020-02-07 17:25:01 +00:00
Pierre Riteau
fc3492bcb1 Use InfluxDB default [http]/max-row-limit setting
Since version 1.2.2, InfluxDB uses 0 (unlimited) as default value for
[http]/max-row-limit [1].

Using the default value resolves an issue with the CloudKitty v1 API
returning only 10000 dataframes.

[1] https://docs.influxdata.com/influxdb/v1.7/about_the_project/releasenotes-changelog/#v1-2-2-2017-03-14

Change-Id: I6eb8c1216e3a9295b7d8cb7fbcbb8778ae7caf7e
Closes-Bug: #1862358
2020-02-07 16:41:29 +01:00
Alexis Deberg
bbf58f5723 Swift: remove meta field from rsync command
Remove the {meta} from the default settings in the account, container
and object services templates.

Change-Id: I079fddf8feb020bed93bf44b8aaec0882823e15c
Closes-Bug: #1862058
2020-02-06 17:04:18 -05:00
Zuul
157acea6d5 Merge "CentOS 8: Deploy CentOS 8 containers" 2020-02-05 10:34:06 +00:00
Zuul
36c2201a3b Merge "Fix keystone fernet bootstrap" 2020-02-05 10:31:52 +00:00
Doug Szumski
f19eb7de88 Disable Fluentd Monasca plugin retry limit
By default a retry limit of 17 exists. When the limit is reached buffered
logs are discarded. To avoid this, we disable the retry limit. The risk of
bringing down the host by filling the Fluent data docker volume is managed
by the maximum buffer size which is 2GB by default.

In summary, after this change, the net behaviour is that Fluentd should
buffer up to a maximum of 2GB of logs locally, and attept to post them to
the Monasca Log API at intervals not exceeding 30 minutes.

Closes-Bug: #1855702
Change-Id: I0d5a3dab29635c00411f4f51e5a0721726df2abd
2020-02-04 17:00:00 +00:00
Doug Szumski
5293b1294f Enable buffering to file for Monasca logs
This enables buffering to file, rather than memory for Monasca logs.
A dedicated docker volume is used for the file buffer. If a post
to the Monasca Log API fails, retries will be made using an exponential
backoff algorithm with a maximum retry interval of 30mins. The maximum
interval is set relatively low to try and reduce the risk of large
buffers accumulating, and therefore the risk of overloading the Monasca
Log API.

Closes-Bug: #1855700
Change-Id: Ib5286e9dbaf2bc92d2f4960b2131223ab5dbdbec
2020-02-04 16:59:54 +00:00
Zuul
ac876459ba Merge "Remove unused python path calculation from vmtp" 2020-02-04 14:10:40 +00:00
Zuul
14a9ec7916 Merge "Python 3: Use distro_python_version for monasca agent CA file" 2020-02-04 14:07:12 +00:00
Zuul
d3055e683e Merge "Python 3: Use distro_python_version for WSGI python_path" 2020-02-04 13:48:01 +00:00
Zuul
666b58b383 Merge "Python 3: Use distro_python_version for dev mode" 2020-02-04 13:40:31 +00:00
Dincer Celik
27da6da1c9 Fixes gnocchi-api script name for Ubuntu/Debian
The old script name was 'python3-gnocchi-api'. It should be
'gnocchi-api' anymore.

Closes-Bug: #1861688

Change-Id: I78fb248859b43dc1636133dadc036028388ab564
2020-02-04 09:04:55 +03:00
Michal Nasiadka
0799782ce8 Fix keystone fernet bootstrap
There are cases when a multinode deployment ends up in unusable
keystone public wsgi on some nodes.

The root cause is that keystone public wsgi doesn't find fernet
keys on startup - and then persists on sending 500 errors to any
requests - due to a race condition between
fernet_setup/fernet-push.sh and keystone startup.

Depends-On: https://review.opendev.org/703742/
Change-Id: I63709c2e3f6a893db82a05640da78f492bf8440f
Closes-Bug: #1846789
2020-02-03 13:41:11 +01:00
Zuul
7de63ac4ec Merge "Followup on MariaDB handling fixes" 2020-02-03 10:06:20 +00:00
Radosław Piliszek
1ea029a91d Followup on MariaDB handling fixes
This fixes issues reported by Mark:
- possible failure with 4-node cluster (however unlikely)
- failure to stop all nodes from progressing when conditions are
  not valid (due to: "any_errors_fatal: False")

Change-Id: Ib6995bf4c99202c9813859b3d9e2f420448f0445
2020-02-02 16:39:29 +01:00
Zuul
b9b8aaa02a Merge "Fix qemu loading of ceph.conf (permission error)" 2020-02-01 12:00:55 +00:00
Ning Yao
91910d2a45 Fix qemu loading of ceph.conf (permission error)
ceph.conf is loaded by qemu, not libvirt.
Since qemu runs as the nova user, ceph.conf owned by root
causes a permission error. The logs in
/var/log/libvirt/qemu/instance-*.log reveal the error.

This change fixes the issue by changing the ownership of ceph.conf
in nova-libvirt to the nova user.

Closes-Bug: #1861513
Change-Id: I1881f51a6c8508f0f186a5623443343dc1df41d4
Signed-off-by: Ning Yao <yaoning@unitedstack.com>
2020-01-31 17:50:50 +01:00
Mark Goddard
72779d4df4 Remove unused python path calculation from vmtp
Its use was removed in If801f54709114b931677adb605dffb75cfab25cd.

Change-Id: I577d74a5971dbdf7e4c8288d5742e8bd340680b0
2020-01-30 14:14:52 +00:00
Mark Goddard
70008536a3 Python 3: Use distro_python_version for monasca agent CA file
Change-Id: Ia840cd037cd2c2eded429bd0edaede4bb44caa8e
Partially-Implements: blueprint python-3
2020-01-30 14:10:41 +00:00
Mark Goddard
c56d273c93 Python 3: Use distro_python_version for WSGI python_path
Currently the WSGI configuration for binary images uses python2.7
site-packages in some places. This change uses distro_python_version to
select the correct python path.

Change-Id: Id5f3f0ede106498b9264942fa0399d7c7862c122
Partially-Implements: blueprint python-3
2020-01-30 14:08:13 +00:00