6616 Commits

Author SHA1 Message Date
Zuul
8e9b4ced7e Merge "Add forgotten 'Restart container' handler for swift" 2021-06-08 09:51:55 +00:00
Mark Goddard
0cd5b027c9 Fix RabbitMQ restart ordering
The host list order seen during Ansible handlers may differ to the usual
play host list order, due to race conditions in notifying handlers. This
means that restart_services.yml for RabbitMQ may be included in a
different order than the rabbitmq group, resulting in a node other than
the 'first' being restarted first. This can cause some nodes to fail to
join the cluster. The include_tasks loop was introduced in [1].

This change fixes the issue by splitting the handler into two tasks, and
restarting the first node before all others.

[1] https://review.opendev.org/c/openstack/kolla-ansible/+/763137

Change-Id: I1823301d5889589bfd48326ed7de03c6061ea5ba
Closes-Bug: #1930293
2021-06-08 08:20:46 +00:00
Maksim Malchuk
5c19f9a5e0 Add forgotten 'Restart container' handler for swift
Since I0474324b60a5f792ef5210ab336639edf7a8cd9e swift role uses the new
service-cert-copy role introduced in the
I6351147ddaff8b2ae629179a9bc3bae2ebac9519 but the swift role itself
doesn't contain the handler used in the service-cert-copy. Right now,
restarting the swift container isn't necessary, but the handler should
exist. Also we should fix the name of the service used.

Closes-Bug: #1931097
Change-Id: I2d0615ce6914e1f875a2647c8a95b86dd17eeb22
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2021-06-08 02:48:40 +03:00
John Garbutt
70f6f8e4c0 Reduce RabbitMQ busy waiting, lowering CPU load
On machines with many cores, we were seeing excessive CPU load on systems
that were not very busy. With the following Erlang VM argument we saw
RabbitMQ CPU usage drop from about 150% to around 20%, on a system with
40 hyperthreads.

    +S 2:2

By default RabbitMQ starts N schedulers where N is the number of CPU
cores, including hyper-threaded cores. This is fine when you assume all
your CPUs are dedicated to RabbitMQ. Its not a good idea in a typical
Kolla Ansible setup. Here we go for two scheduler threads.
More details can be found here:
https://www.rabbitmq.com/runtime.html#scheduling
and here:
https://erlang.org/doc/man/erl.html#emulator-flags

    +sbwt none

This stops busy waiting of the scheduler, for more details see:
https://www.rabbitmq.com/runtime.html#busy-waiting
Newer versions of rabbit may need additional flags:
"+sbwt none +sbwtdcpu none +sbwtdio none"
But this patch should be back portable to older versions of RabbitMQ
used in Train and Stein.

Note that information on this tuning was found by looking at data from:
rabbitmq-diagnostics runtime_thread_stats
More details on that can be found here:
https://www.rabbitmq.com/runtime.html#thread-stats

Related-Bug: #1846467

Change-Id: Iced014acee7e590c10848e73feca166f48b622dc
2021-06-07 13:18:39 +01:00
Zuul
dda787fca9 Merge "Bump min Docker version" 2021-06-07 09:00:26 +00:00
John Garbutt
e7ff199dcf Robustify fluentd output tag matching
We really want elasticsearch or monasca to catch all logs,
to providd the required centrailsed logging.

While these appears to make little material difference,
it should make it harder for logs to not get caught by
any of the outputs we have configured.

TrivialFix

Change-Id: I3bb74dcdc3cbe78cd1e1657f44e2a0af9d6508ef
2021-06-07 09:16:03 +01:00
Scott Shambarger
aea9bf3550 monasca-thresh: Fix topology submission to storm
monasca-thresh currently runs a local copy of the storm
to handle the threshold topology.  However, it doesn't setup
the environment correctly, and the executable fails, causing
the container to continually restart.

This patch updates the container command to correctly
submit the topology to the running Apache storm.  The
container will exit after it finishes the submission,
so the restart_policy is updated to on-failure, this way
if the storm is temporarily unavailable, the submission
will be retried. (NOTE: further deploys will see the
container as "changed" as it won't be running)

Patch uses KOLLA_BOOTSTRAP to trigger the container to
check if the topology is already submitted, and if so skips
the submission command so the container doesn't fail.

The config task now triggers a new reconfigure handler that
spawns a one-shot container to replace any existing topology
if the configuration has changed.

Also, all the storm.* variables in storm.yml.j2 are
removed as they were only needed for local mode and
make submitted topologies fail to load when the storm
is restarted (the referenced directories not mounted
on nimbus).

Depends-On: https://review.opendev.org/c/openstack/kolla/+/792751
Closes-Bug: #1808805
Change-Id: Ib225d76076782d695c9387e1c2693bae9a4521d7
2021-06-06 13:41:29 -07:00
Mark Goddard
46bd05250d baremetal: fix /etc/hosts generation when api_interface has dashes
Interface names with dashes can cause problems in Ansible since dashes
are replaced with underscores when referencing facts. In the baremetal
role we reference the fact for api_interface without replacing dashes
with underscores. This may result in host entries being omitted from
/etc/hosts.

This change fixes the issue.

Change-Id: I667adc7d8a7dbd20dbfa293f389e02355f8275bb
Related-Bug: #1927357
2021-06-04 17:11:05 +01:00
John Garbutt
dee9d22dcf Add suppress_type_name to stop warnings with ES7
When using elasticsearch 7 with fluentd, you seem to get a lot
of warnings in the docker logs output that look like:

    [types removal] Specifying types in bulk requests is deprecated.

The docs suggest adding suppress_type_name to stop these warnings,
and that seems to work without affecting any functionality.

Further info here:
https://github.com/uken/fluent-plugin-elasticsearch/issues/785

Closes-Bug: #1930856
Change-Id: I45be67df3717f78d78bcdc7df69600ab8681922f
2021-06-04 10:21:24 +01:00
John Garbutt
7f1248fee5 Fix parsing of infra.mariadb.xinetd logs
Currently the logs tagged with infra.mariadb.xinetd flow into
elasticsearch with no hostname or programname attach, thus making
navigating the logs very hard.

The quick fix is renaming the tag to infra.mariadb-xinetd, which is just
enought to ensure the logs are processed correctly with the existing
filters.

TrivialFix

Change-Id: Icd72206de7c1f701bdf35c8fb3b128ef2dbe29a8
2021-06-03 18:16:20 +01:00
John Garbutt
0c7ba86e05 Stop fluentd deprecation warnings of type vs @type
Currently when elasticsearch log output is enabled there are lots
of warnings going into elasticsearch about type being deprecated
and needing to move to @type. This change stops those warnings.

TrivialFix

Change-Id: Ideac1925cb764ad0d7d8416f56d5e4a993c6d8b6
2021-06-03 18:08:14 +01:00
Mark Goddard
84ac7b3096 chrony: allow to remove the container
The chrony container is deprecated in Wallaby, and disabled by default.
This change allows to remove the container if chrony is disabled.

Change-Id: I1c4436072c2d47a95625e64b731edb473384b395
2021-06-02 17:28:35 +00:00
Zuul
f2d42d80f4 Merge "Add support for Debian Bullseye (11) as host distro" 2021-06-02 02:52:30 +00:00
Zuul
667d145ae3 Merge "[docker] Add support for setting CgroupnsMode" 2021-06-02 02:49:39 +00:00
Zuul
70ebc91e7e Merge "Make rabbitmq cluster_partition_handling configurable" 2021-05-31 16:08:40 +00:00
Zuul
13f8fd75db Merge "Trivial if conditional fix in keystone.json" 2021-05-31 14:30:39 +00:00
Radosław Piliszek
9a77fb1ca0 Add support for Debian Bullseye (11) as host distro
Makes nova-libvirt container always run in 'host' CgroupnsMode
to ensure it works.

Change-Id: I75105baf434977c68bc5c8ca1f5213e602c52c8c
2021-05-30 18:40:12 +00:00
Maksim Malchuk
4d6a79d217 Add the ansible_managed header for admin-openrc.sh
This change inform us that the file is 'Ansible managed'

TrivialFix

Change-Id: I99ebeb493ff9c3c7af0010ce1efea45c7f9a2559
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2021-05-30 21:38:12 +03:00
Radosław Piliszek
95520df094 [docker] Add support for setting CgroupnsMode
This is required to support Debian Bullseye (11) - need to set
nova-libvirt to use 'host' CgroupnsMode.

Change-Id: I40213d4092fa325bcf37bb1fb4437ab125fe328b
2021-05-30 18:28:54 +00:00
Radosław Piliszek
a3caf8c3a0 Bump min Docker version
And python-docker version.
Make them less scary.

Change-Id: I134e8aa8ed5eae479e5af743464dc2a0e40a1353
2021-05-28 13:22:38 +00:00
Pierre Riteau
bb56861cc5 Use mariadb-server image for mariabackup
The mariadb image was removed in Wallaby, leading to database backup
failures.

Change-Id: I90986e7521779997df2782767bb95efcbd8ef232
Closes-Bug: #1928129
2021-05-28 13:24:11 +02:00
Zuul
99e09537f2 Merge "cinder: fix condition to copy backend TLS certs" 2021-05-28 10:56:48 +00:00
Scott Shambarger
283b0dec63 fluentd: Fix check for external elasticsearch
When enable_elasticsearch is False, and kolla_internal_fqdn is set
and elasticsearch_address is the default, fluentd is still enabling
output to elasticsearch.

elasticsearch_address defaults to kolla_internal_fqdn, but the
check to enable logging to an "external" elasticsearch host
compares with kolla_internal_vip_address (fqdn != vip address).

This patch fixes the comparison to use the kolla_internal_fqdn.

Closes-Bug: #1927880
Change-Id: If23a6b1273c2639d1296becc9d222546d52f63ac
2021-05-27 17:26:04 +00:00
Pierre Riteau
7d1af053b5 Remove [octavia]/base_url option from neutron.conf
This configuration option was only used by neutron-lbaas, which is now
retired. It should have been added to neutron_lbaas.conf.j2 instead.

Change-Id: Iba591473abf4304413eca0d84e0b2be197c527fc
2021-05-26 15:28:09 +02:00
Zuul
cc5667db01 Merge "Remove Monasca Grafana service" 2021-05-21 09:42:42 +00:00
Zuul
e9490fc747 Merge "Disable usage collection in Kibana" 2021-05-21 09:42:04 +00:00
Michal Arbet
c99841272f Make rabbitmq cluster_partition_handling configurable
Change-Id: If2fdab2ae0f981d9fcbb0fea7a92fcde325804f8
2021-05-21 10:55:24 +02:00
Zuul
a753d54fc0 Merge "Use Docker healthchecks for qdrouterd services" 2021-05-20 02:57:19 +00:00
likui
6b61cbe6f4 Merge glance sections for nova.conf.j2
Change-Id: I1727a6706520130793d31f8b514d955993d2c2a5
2021-05-19 20:35:13 +08:00
Michał Nasiadka
b053bd8ecf baremetal: Install Docker SDK less than 5.0.0
Docker 5.0.0 [1] dropped requirement for six, but still imports it.

[1]: https://github.com/docker/docker-py/issues/2807

Closes-Bug: #1928915
Change-Id: I726541f4b3fdc357387a44c6a2153593a10bf282
2021-05-19 07:33:35 +00:00
Zuul
c61bee3fb4 Merge "baremetal: Don't start Docker after install on Debian/Ubuntu" 2021-05-14 09:40:04 +00:00
Michał Nasiadka
bc96179195 baremetal: Don't start Docker after install on Debian/Ubuntu
docker-ce on Debian/Ubuntu gets started just after installation, before
baremetal role configures daemon.json - which results in iptables rules
being implemented - but not removed on docker engine restart.

Closes-Bug: #1923203

Change-Id: Ib1faa092e0b8f0668d1752490a34d0c2165d58d2
2021-05-14 09:00:01 +02:00
Michal Arbet
d43642ac37 Trivial if conditional fix in keystone.json
Change-Id: I30988176c8d5a59cf61527af1a43c5d33ba6268d
2021-05-13 15:47:00 +02:00
Christian Berendt
6230971b92 gnocchi: fix external ceph integration when gnocchi-statsd is disabled
Closes-Bug: #1926914

Change-Id: I7f472a27eb9f2e1f267d7c4bac22236cdd076322
2021-05-13 08:11:56 +00:00
Zuul
9df0098669 Merge "Disable Alertmanager's peer gossip in non-HA deployments" 2021-05-12 10:54:45 +00:00
Piotr Parczewski
b300f7bc40 Disable Alertmanager's peer gossip in non-HA deployments
Reference:

https://github.com/prometheus/alertmanager#turn-off-high-availability

Closes-Bug: #1926463
Change-Id: I60e1dedeac25fa8fe9538a3a8e582bd8cc9324d7
2021-05-11 14:39:29 +00:00
Florian LEDUC
e923236001 Add ability to use the Neutron packet logging framework
* Enables the Neutron packet logging framework for OVS
(https://docs.openstack.org/neutron/latest/admin/config-logging.html).
* Adds a toggle variable "enable_neutron_packet_logging"

Change-Id: Ica3594cdac634b496949a06ed813dccd18090af4
Implements: blueprint neutron-log-service-plugin
2021-05-11 13:50:49 +02:00
Zuul
4195e7177e Merge "cleanup no longer needed task for cinder" 2021-05-11 10:37:56 +00:00
Zuul
d4f240241e Merge "Use @type instead of type" 2021-05-11 10:37:34 +00:00
Zuul
8815deda19 Merge "Do not write octavia_amp_ssh_key if auto_config disabled" 2021-05-10 19:15:52 +00:00
Zuul
f86a810b72 Merge "Fix "Restart mariadb-clustercheck container" during config gen" 2021-05-10 18:50:41 +00:00
John Garbutt
fe66477475 Use @type instead of type
This is a follow up on the change with the following ID:

I337f42e174393f68b43e876ef075a74c887a5314

TrivialFix

Change-Id: Ibb67811d7b086ef9ef4c695ae589171af0c4d657
2021-05-10 15:58:03 +01:00
wu.chunyang
f94c7beab1 cleanup no longer needed task for cinder
we don't need this task anymore.

Change-Id: I1ba60fa51ecc86c74d05898b897d7b84c70707ef
2021-05-10 19:36:11 +08:00
Michal Arbet
41fe771bcc Do not write octavia_amp_ssh_key if auto_config disabled
This task is writing private key from passwords to
/etc/kolla/octavia-worker/{{ octavia_amp_ssh_key_name }} even
if user disabled octavia auto configure.

This patch is adding conditional for this task and skipping
it if octavia_auto_configure: "no".

Closes-Bug: #1927727

Change-Id: Ib993b387d681921d804f654bea780a1481b2b0d0
2021-05-10 11:13:41 +00:00
Zuul
4cb9192d79 Merge "octavia: Fix duplicate api_settings" 2021-05-09 16:20:41 +00:00
Michał Nasiadka
e5ab32afaf octavia: Fix duplicate api_settings
Change-Id: Ib85cc2cb10e3c97de9f7d608e75694a0fc2714c2
2021-05-07 10:31:22 +02:00
Michał Nasiadka
aff99355d2 ovn: make DVR work on VLAN tenant networks
In order for DVR to work on VLAN tenant networks we need to configure
external_ids:ovn-chassis-mac-mappings with per node generated MAC [1]
on computes [1].

[1]: 1fed74cfc1

Co-Authored-By: Bartosz Bezak <bartosz@stackhpc.com>

Depends-On: https://review.opendev.org/c/openstack/neutron/+/782250
Change-Id: I3a3ccde5b9ef2afb4c3e9206f13827687880cb57
2021-05-06 10:17:59 +00:00
Michał Nasiadka
999b5cfb2b ovn: omit unnecessary bridge mappings
Co-Authored-By: Bartosz Bezak <bartosz@stackhpc.com>

Change-Id: I4fc2cb451589dfec82c343868667020f8dcee901
2021-05-06 09:44:56 +00:00
Radosław Piliszek
b056f54c14 Deprecate tempest and rally
Per [1].

[1] http://eavesdrop.openstack.org/meetings/kolla/2021/kolla.2021-04-28-15.00.html

Change-Id: Ie109d15db1e26e20b78efdb4ab0653d24054820f
2021-05-05 08:10:28 +00:00
Petr Tuma
f3314eacd7 Redis configuration syntax update
Replication syntax of Redis config files updated to
Redis 5.x.

Signed-off-by: Petr Tuma <p.tuma@partner.samsung.com>
Change-Id: I45bacefc7912870c48f618e27ff759f9c249dc33
2021-04-30 07:17:27 +00:00