1121 Commits

Author SHA1 Message Date
Mark Goddard
c3f9ba835b nova: Use cinder user for Ceph
In Ussuri, nova stopped using separate Ceph keys for the volumes and vms
pools by default. Instead, we set ceph_nova_keyring to the value of
ceph_cinder_keyring by default, which is ceph.client.cinder.keyring.
This is in line with the Ceph OpenStack integration guide [1]. However,
the user used by nova to access the vms pool (ceph_nova_user) defaults
to nova, meaning that nova will still try to use a
ceph.client.nova.keyring, which probably does not exist. We did not see
this issue in CI, because we set ceph_nova_user to cinder.

This change fixes the issue by setting ceph_nova_user to the value of
ceph_cinder_user by default, which is cinder.

Closes-Bug: #1934145
Related-Bug: #1928690

[1] https://docs.ceph.com/en/latest/rbd/rbd-openstack/

Change-Id: I6aa8db2214e07906f1f3e035411fc80ba911a274
2021-07-28 10:08:27 +00:00
Zuul
18fd27feff Merge "Allow user to set sysctl_net_ipv4_tcp_retries2" 2021-06-23 13:57:13 +00:00
Michal Arbet
09d0409ed4 Allow user to set sysctl_net_ipv4_tcp_retries2
This patch is adding configuration option to
manipulate with kernel option sysctl_net_ipv4_tcp_retries2.

More informations about kernel option in [1][2]
and RedHat suggestion [3] to set for DBs and HA.

[1]: https://pracucci.com/linux-tcp-rto-min-max-and-tcp-retries2.html
[2]: https://blog.cloudflare.com/when-tcp-sockets-refuse-to-die/
[3]: https://access.redhat.com/solutions/726753

Closes-Bug: #1917068
Change-Id: Ia0decbbfa4e33b1889b635f8bb1c9094567a2ce6
2021-06-23 10:34:12 +00:00
Zuul
f5fa171983 Merge "Add ability to use the Neutron packet logging framework" 2021-06-14 14:44:53 +00: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
Michał Nasiadka
278b63a0eb docs: Update Freenode to OFTC
Change-Id: Idaae03612dd7feabd2cdc57e510947328524e98b
2021-05-31 09:51:04 +02:00
Zuul
5f9c5dab9a Merge "docs: add code reviews to contributor guide" 2021-05-25 12:34:35 +00:00
Zuul
8d806277f2 Merge "docs: Add note about internal VIP when HAProxy is disabled" 2021-05-25 12:34:17 +00:00
Zuul
4e28adbe6e Merge "docs: update supported OS distros" 2021-05-25 12:33:59 +00:00
Zuul
75a9ef4ad5 Merge "Mariadb shards documentation" 2021-05-25 10:29:13 +00:00
Zuul
cc5667db01 Merge "Remove Monasca Grafana service" 2021-05-21 09:42:42 +00:00
Michal Arbet
f184f94360 Mariadb shards documentation
Change-Id: Id9a24c54db9a70c777e51ea10504159d5090f9a7
2021-05-17 15:36:30 +02:00
Mark Goddard
f295b1a055 docs: update supported OS distros
* add CentOS Stream 8 info & reno
* mark RHEL as deprecated in docs

Change-Id: Ifa3b8c7365e4092202bf9e89b67293cf8d983e0a
2021-05-12 10:35:54 +01: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
Radosław Piliszek
83f3422fbd Deprecate enable_host_ntp
As agreed during IRC meeting. [1]

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

Change-Id: Ibffa019e2106784e97f5c482106bb5082f788752
2021-04-27 16:03:22 +00:00
Doug Szumski
82cf40edf2 Remove Monasca Grafana service
In the Xena cycle it was decided to remove the Monasca
Grafana fork due to lack of maintenance. This commit removes
the service and provides a limited workaround using the
Monasca Grafana datasource with vanilla Grafana.

Depends-On: I9db7ec2df050fa20317d84f6cea40d1f5fd42e60
Change-Id: I4917ece1951084f6665722ba9a91d47764d3709a
2021-04-27 11:06:25 +00:00
Zuul
4579b76d89 Merge "[doc] fix a typo" 2021-04-26 14:56:59 +00:00
wuchunyang
fc406d035d [doc] fix a typo
Trivial Fix

Change-Id: Ie08877e339455bed45ee467a87de9648678e88c5
2021-04-26 17:02:51 +08:00
Zuul
9d0734f99d Merge "docs: Improve policy documentation" 2021-04-26 07:43:51 +00:00
wuchunyang
3ba06b87ea [doc] introduce octavia tenant management network
Change-Id: I713f6fafe328e060a71dbb584e61603e547deaf6
2021-04-19 10:44:27 +00:00
Mark Goddard
030a9a28d7 docs: Improve policy documentation
Change-Id: Iede747ceaafa54a00186761943fe2f4ac13f9559
2021-04-19 09:39:51 +00:00
Doug Szumski
19095475ee Nit fixes for change 776219
Minor corrections to doc and release note.

Change-Id: I8a90cbac0b9a1eaa5f6c02271515f2357547f908
2021-04-07 16:18:11 +00:00
Radosław Piliszek
b647cb4128 Deprecate and disable chrony by default
Per [1].

[1] http://lists.openstack.org/pipermail/openstack-discuss/2021-February/020707.html

Change-Id: Id6f3cd158bf5d01750971249b11364b6a8631789
Closes-Bug: #1885689
2021-04-06 09:17:51 +00:00
Zuul
93c4448365 Merge "baremetal: Add support for Docker http/https proxy setup" 2021-03-29 09:54:36 +00:00
Michal Nasiadka
7fa419cfc3 baremetal: Add support for Docker http/https proxy setup
Change-Id: I947c2940518c0f4872acaa977edeaca370dc9a96
2021-03-26 17:51:17 +00:00
Zuul
69b053469f Merge "Add kolla_externally_managed_cert option" 2021-03-26 10:26:11 +00:00
Mark Goddard
db1bc8fc7a docs: Add note about internal VIP when HAProxy is disabled
Change-Id: I08030ac88911d3594c75cb2184767067ad177139
2021-03-25 09:23:26 +00:00
Zuul
8e9da5fa2d Merge "Follow up fixes for Monasca docs and formatting" 2021-03-24 19:03:42 +00:00
Zuul
ff2c29b21c Merge "Support bypassing Monasca Log API for control plane logs" 2021-03-24 19:03:19 +00:00
Zuul
d3a1a1a504 Merge "Support disabling Monasca alerting pipeline" 2021-03-24 19:02:54 +00:00
Zuul
f9a9a9f327 Merge "Disable Monasca Log Metrics service by default" 2021-03-24 18:32:17 +00:00
Zuul
6c18e5814e Merge "Remove Monasca Log Transformer" 2021-03-24 18:21:04 +00:00
Bartosz Bezak
733fb0e7b8 Trivial fixes in grafana-guide doc.
Change-Id: Ie888e84a3b6e27afc23f89f643fdaa58880aae6d
2021-03-18 15:11:56 +01:00
Zuul
8313d092d9 Merge "docs: fix registry mirror example" 2021-03-18 11:07:01 +00:00
Mark Goddard
608836d956 docs: fix registry mirror example
The docker configuration should be a URL, not a host:port.

Closes-Bug: #1919932
Change-Id: I5025fdb7e48c79a107b45f1454f5d5e81367a2f9
2021-03-18 09:38:14 +00:00
Zuul
2ba4c88c8d Merge "Add support for custom grafana dashboards" 2021-03-17 16:48:48 +00:00
Bartosz Bezak
a9e30382fe Add support for custom grafana dashboards
Allow users to import custom grafana dashboards.
Dashboards as JSON files should be placed into
"{{ node_custom_config }}/grafana/dashboards/" folder.

Change-Id: Id0f83b8d08541b3b74649f097b10c9450201b426
2021-03-16 17:10:19 +01:00
Zuul
067a752206 Merge "Bump up supported Ansible version to 2.10" 2021-03-11 12:30:29 +00:00
Zuul
cc1dda3035 Merge "Add Neutron DHCP agent to OVN networking setup" 2021-03-09 20:15:28 +00:00
Zuul
5ccd134cd1 Merge "Deprecate Prometheus 1.x" 2021-03-09 17:51:13 +00:00
Michał Nasiadka
1ccccbcf0a Bump up supported Ansible version to 2.10
Min version stays as 2.9

Change-Id: I7ec8c5eb36757248c9aa016dc7d4e495ec5bb635
2021-03-08 11:40:31 +00:00
Doug Szumski
92f252af4b Follow up fixes for Monasca docs and formatting
Change-Id: Ief84e093829677c97c8df9a08aefca43b1e51aac
2021-03-07 10:10:22 +00:00
Doug Szumski
ca1a80ab2f Support bypassing Monasca Log API for control plane logs
This change allows a user to forward control plane logs
directly to Elasticsearch from Fluentd, rather than via
the Monasca Log API when Monasca is enabled. The Monasca
Log API can continue to handle tenant logs.

For many use cases this is simpler, reduces resource
consumption and helps to decouple control plane logging
services from tenant logging services.

It may not always be desired, so is optional and off by
default.

Change-Id: I195e8e4b73ca8f573737355908eb30a3ef13b0d6
2021-03-04 09:19:50 +00:00
Doug Szumski
444097848c Support disabling Monasca alerting pipeline
The Monasca alerting pipeline provides multi-tenancy alerts and
notifications. It runs as an Apache Storm topology and generally
places a significant memory and CPU burden on monitoring hosts,
particularly when there are lot of metrics. This is fine if the
alerting service is in use, but sometimes it is not. For example
you may use Prometheus for monitoring the control plane, and
wish to offer tenants a monitoring service via Monasca without
alerting and notification functionality. In this case it makes
sense to disable this part of the Monasca pipeline and this patch
adds support for that.

If the service is ever re-enabled, all alerts and notifications
should spawn back automatically since they are persisted in the
central mysql database cluster.

Change-Id: I84aa04125c621712f805f41c8efbc92c8e156db9
2021-03-04 09:19:44 +00:00
Doug Szumski
a52d661219 Disable Monasca Log Metrics service by default
The Log Metrics service is an admin only service. We now have
support in Fluentd via the Prometheus plugin to create metrics
from logs. These metrics can be scraped into Monasca or Prometheus.
It therefore makes sense to deprecate this service, starting by
disabling it by default, and then removing it in the Xena release.
This should improve the stability of the Monasca metrics pipeline
by ensuring that all metrics pass via the Monasca API for
validation, and ensure that metrics generated from logs are
available to both Prometheus and Monasca users by default.

Change-Id: I704feb4434c1eece3eb00c19dc5f934fd4bc27b4
2021-03-03 17:20:18 +00:00
Doug Szumski
0743a9bf4b Remove Monasca Log Transformer
Historically Monasca Log Transformer has been for log
standardisation and processing. For example, logs from different
sources may use slightly different error levels such as WARN, 5,
or WARNING. Monasca Log Transformer is a place where these could
be 'squashed' into a single error level to simplify log searches
based on labels such as these.

However, in Kolla Ansible, we do this processing in Fluentd so
that the simpler Fluentd -> Elastic -> Kibana pipeline also
benefits. This helps to avoid spreading out log parsing
configuration over many services, with the Fluentd Monasca output
plugin being yet another potential place for processing (which
should be avoided). It therefore makes sense to remove this
service entirely, and squash any existing configuration which
can't be moved to Fluentd into the Log Perister service. I.e.
by removing this pipeline, we don't loose any functionality,
we encourage log processing to take place in Fluentd, or at least
outside of Monasca, and we make significant gains in efficiency
by removing a topic from Kafka which contains a copy of all logs
in transit.

Finally, users forwarding logs from outside the control plane,
eg. from tenant instances, should be encouraged to process the
logs at the point of sending using whichever framework they are
forwarding them with. This makes sense, because all Logstash
configuration in Monasca is only accessible by control plane
admins. A user can't typically do any processing inside Monasca,
with or without this change.

Change-Id: I65c76d0d1cd488725e4233b7e75a11d03866095c
2021-03-03 17:20:18 +00:00
Arthur Outhenin-Chalandre
57220ce1d9 Add kolla_externally_managed_cert option
This option disables copy of certificates from the operator host to
kolla-ansible managed hosts.

This is especially useful if you already have some mechanisms to handle
your certificates directly on your hosts.

Co-Authored-By: Marc 'risson' Schmitt <marc.schmitt@risson.space>
Change-Id: Ie18b2464cb5a65a88c4ac191a921b8074a14f504
2021-03-02 18:09:06 +01:00
Zuul
1b1d06a9d7 Merge "Add Monasca Grafana security note" 2021-03-02 16:35:57 +00:00
Piotr Parczewski
a50bef0f76 Deprecate Prometheus 1.x
Deprecates support for Prometheus v1.x.
In Xena support for it will be removed from Kolla Ansible.

Change-Id: I027b19621196c698e09f79af294ba1b5dbfc0516
2021-03-02 16:33:35 +01:00
Mark Goddard
106644e496 docs: add code reviews to contributor guide
(cherry picked from kolla commit abc4f7c124265f9e7b72d448b2ef18d6d4e84888)

Change-Id: I7e51a76287cd0f5a22d11dc3af9284b556d06eca
2021-02-24 11:32:43 +00:00