6616 Commits

Author SHA1 Message Date
Mark Goddard
0b132775eb Fix neutron-ovn-metadata-agent with policy.yaml
The config.json template for neutron-ovn-metadata-agent uses a
hard-coded policy file name of policy.json. This prevents use of a
policy.yaml file with this service. This patch fixes this.

TrivialFix

Change-Id: Ib96d68f1dc60a0cbb5b79302c1face9c2272946a
2021-04-29 09:11:03 +01:00
Zuul
9418a39476 Merge "Bump up python version for Debian Bullseye" 2021-04-28 09:42:49 +00:00
Radosław Piliszek
c3afbd3c5e Check config when checking the containers
The proposed approach allows for checking whether config
files are current, e.g. cases when the deployment was aborted after
config files were generated but before they were injected into the
containers which lead to old config staying in containers.

After this patch we can do:
  kolla-ansible genconfig
  kolla-ansible deploy-containers
and it would do what we expected rather than being a noop
in the second part.

We also lose the need to have notifies
and whens in config and handler sections respectively.
This is optimised in a separate patch.

Future work:
- optimise for large files
  - could we get away with comparing timestamps and sizes?
    container's should have a newer timestamp due to copy,
    could also preserve it

Change-Id: I1d26e48e1958f13b854d8afded4bfba5021a2dec
Closes-Bug: #1848775
Depends-On: https://review.opendev.org/c/openstack/kolla/+/773257
Co-Authored-By: Mark Goddard <mark@stackhpc.com>
2021-04-27 17:53:40 +00: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
2b3284b3f3 Remove redundant Monasca Kafka client option
This override is now the default.

Change-Id: I98cbf71532b2bc068ab4f34e648a5dad15139f6f
2021-04-27 11:20:34 +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
a3233552cf Merge "Avoid an Ansible quirk in hacluster role" 2021-04-26 10:36:41 +00:00
Zuul
2be34edb93 Merge "Add global tag variables for Panko and Skydive" 2021-04-26 07:43:38 +00:00
Radosław Piliszek
7e81e20e76 Skip setting rp_filter by default
We don't do the best job with it and it's better to rely on users'
and distros' default policies than try to water those down.

Closes-Bug: #1837551
Change-Id: I72b13adef60900fc31f1293c516030026f004216
2021-04-25 14:54:55 +00:00
Michał Nasiadka
d9b21cde93 Bump up python version for Debian Bullseye
Depends-On: https://review.opendev.org/c/openstack/kolla/+/772479
Change-Id: I7ae919875fb9dea756ca26d90dc1af791ac766ce
2021-04-24 21:45:34 +00:00
Radosław Piliszek
f3da3d8e19 Avoid an Ansible quirk in hacluster role
Followup on I91e5c1840ace8f567daf462c4eb3ec1f0c503823

When+run_once do not play nicely. [1]
The general workaround is to use include_tasks. [2]
However, it is very unlikely user wishes to run this role
without having any pacemaker nodes so the simplification that we
use throughout the Kolla Ansible code should be enough.

[1] https://github.com/ansible/ansible/issues/11496
[2] https://github.com/ansible/ansible/issues/11496#issuecomment-412936547

Change-Id: Ifaf64e3d9d89b2ec36a883fb7458556745b64802
2021-04-24 18:34:27 +00:00
Zuul
058dd6828d Merge "Apply Zun configuration for Docker based on inventory" 2021-04-21 13:09:13 +00:00
Mark Goddard
5c39810de2 Apply Zun configuration for Docker based on inventory
If docker_configure_for_zun is set to true, then Zun-specific
configuration for Docker is applied to all nodes. It should only be
applied based on the relevant inventory groups. In some cases this can
cause Docker to fail to start. See
https://storyboard.openstack.org/#!/story/2008544 for details.

This change applies the configuration based on the zun-compute and
zun-cni-daemon groups. It also modifies the expression to not assume
that these groups exist in the inventory.

Change-Id: I0141abf0dd83e3a567ea6dcca945f86db129becf
Closes-Bug: #1914378
Story: 2008544
Task: 41645
Co-Authored-By: Buddhika Sanjeewa <bsanjeewa@kln.ac.lk>
2021-04-21 10:42:55 +00:00
Zuul
980dd33721 Merge "mariadb: Deprecate wsrep-notify.sh" 2021-04-21 09:50:44 +00:00
Doug Szumski
d01192c160 Extend support for custom Grafana dashboards
The current behaviour is to support supplying a single
folder of Grafana dashboards which can then be populated
into a single folder in Grafana. Some users may wish
to have sub-folders of Dashboards, and load these into
separate dashboard folders in Grafana via a custom
provisioning file. For example, a user may have a
sub-folder of Ceph dashboards that they wish to keep
separate from OpenStack dashboards. This patch supports
sub-folders whilst not affecting the original mechanism.

Trivial-Fix

Change-Id: I9cd289a1ea79f00cee4d2ef30cbb508ac73f9767
2021-04-19 11:11:43 +01:00
Michał Nasiadka
451844ac67 mariadb: Deprecate wsrep-notify.sh
Change-Id: I14376dac46809f8bb466ec41f279be8d323d459d
2021-04-15 08:12:31 +00:00
Zuul
0b5089ed5a Merge "masakari: support host monitor" 2021-04-14 20:02:30 +00:00
Michal Arbet
5d17100118 Additional small changes in role/mariadb
- Replace hardcoded haproxy monitor user with variable.
 - Rename mariadb_backup variable to mariadb_backup_possible.
 - Drop creation of monitor user in handlers as this is
   now handled in register.yml for good reason.

Change-Id: I255a79d36ae18ca42d0befd00b235ca509197db3
2021-04-14 16:10:30 +02:00
Michał Nasiadka
d7a9be84d4 mariadb: Disable wsrep-notify script if clustercheck enabled
Change-Id: Id16ec7d7b57630ae20430675c4a196e63ca8d4a5
2021-04-14 09:46:20 +00:00
LinPeiWen
1ddef85973 Use Docker healthchecks for rabbitmq services
This change enables the use of Docker healthchecks for rabbitmq services.

Implements: blueprint container-health-check
Depends-On: https://review.opendev.org/c/openstack/kolla/+/784562

Change-Id: I23a2c2efab858b9ed39c6ce0ec4a82df10e7f93d
2021-04-14 05:47:13 +00:00
Zuul
09fcfe8cd2 Merge "octavia: Add support for disabling amphora provider" 2021-04-13 10:12:27 +00:00
Michał Nasiadka
810c4d9471 octavia: Add support for disabling amphora provider
Change-Id: I1010ee42aaf1c650d9e3b5332ebf828646a6badf
2021-04-12 14:41:00 +00:00
Zuul
fd7512b070 Merge "Add HAcluster Ansible role" 2021-04-09 17:59:51 +00:00
Zuul
d4db69c079 Merge "Refactor mariadb to support shards" 2021-04-09 14:23:54 +00:00
Zuul
2aef63e10a Merge "OVN: Make OVS db entries idempotent" 2021-04-09 13:20:56 +00:00
Mark Goddard
db517a44e4 masakari: support host monitor
Change-Id: I3f43df7766c57622ab8d01a759fbeeef0a0c2b93
Implements: blueprint masakari-hostmonitor
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2021-04-08 16:39:47 +00:00
Zuul
f49f9909ca Merge "Drop the NTP service precheck" 2021-04-08 09:53:41 +00:00
Gaëtan Trellu
9f578c85e0 Add HAcluster Ansible role
Adds HAcluster Ansible role. This role contains High Availability
clustering solution composed of Corosync, Pacemaker and Pacemaker Remote.

HAcluster is added as a helper role for Masakari which requires it for
its host monitoring, allowing to provide HA to instances on a failed
compute host.

Kolla hacluster images merged in [1].

[1] https://review.opendev.org/#/c/668765/

Change-Id: I91e5c1840ace8f567daf462c4eb3ec1f0c503823
Implements: blueprint ansible-pacemaker-support
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Co-Authored-By: Mark Goddard <mark@stackhpc.com>
2021-04-08 06:39:19 +00:00
Michal Arbet
09b3c6ca07 Refactor mariadb to support shards
Kolla-ansible is currently installing mariadb
cluster on hosts defined in group['mariadb']
and render haproxy configuration for this hosts.

This is not enough if user want to have several
service databases in several mariadb clusters (shards).

Spread service databases to multiple clusters (shards)
is usefull especially for databases with high load
(neutron,nova).

How it works ?

It works exactly same as now, but group reference 'mariadb'
is now used as group where all mariadb clusters (shards)
are located, and mariadb clusters are installed to
dynamic groups created by group_by and host variable
'mariadb_shard_id'.

It also adding special user 'shard_X' which will be used
for creating users and databases, but only if haproxy
is not used as load-balance solution.

This patch will not affect user which has all databases
on same db cluster on hosts in group 'mariadb', host
variable 'mariadb_shard_id' is set to 0 if not defined.

Mariadb's task in loadbalancer.yml (haproxy) is configuring
mariadb default shard hosts as haproxy backends. If mariadb
role is used to install several clusters (shards), only
default one is loadbalanced via haproxy.

Mariadb's backup is working only for default shard (cluster)
when using haproxy as mariadb loadbalancer, if proxysql
is used, all shards are backuped.

After this patch will be merged, there will be way for proxysql
patches which will implement L7 SQL balancing based on
users and schemas.

Example of inventory:

[mariadb]
server1
server2
server3 mariadb_shard_id=1
server4 mariadb_shard_id=1
server5 mariadb_shard_id=2
server6 mariadb_shard_id=3

Extra:
wait_for_loadbalancer is removed instead of modified as its role
is served by check already. The relevant refactor is applied as
well.

Change-Id: I933067f22ecabc03247ea42baf04f19100dffd08
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2021-04-07 23:19:42 +02:00
Mark Goddard
0b0dd35837 masakari: fix minor issues with instance monitor
* Don't generate masakari.conf for instance monitor
* Don't generate masakari-monitors.conf for API or engine
* Use a consistent name for dimensions -
  masakari_instancemonitor_dimensions
* Fix source code paths in dev mode

Change-Id: I551f93c9bf1ad6712b53c316074ae1df84e4352b
2021-04-07 13:28:01 +00:00
Zuul
0d153af87f Merge "Fix cyborg api doesn't listen on api interface" 2021-04-07 09:54:15 +00:00
Zuul
9ccb941a5a Merge "Deprecate and disable chrony by default" 2021-04-06 13:46:41 +00:00
Zuul
01859ade96 Merge "Use Docker healthchecks for vitrage services" 2021-04-06 13:17:39 +00:00
Radosław Piliszek
04315751a4 Drop the NTP service precheck
We can't check this with timedatectl as it is not aware
of any "non-native" NTP daemon.

This could be a warning-level message but we don't have
such messages from the prechecks.

Closes-Bug: #1922721
Change-Id: I6db37576118cf5cff4ba7a63e179f0ab37467d22
2021-04-06 12:24:15 +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
Mark Goddard
fbd80bcdc8 octavia: Ensure service auth project exists
Kolla Ansible supports configuration of the project used by Octavia to
communicate with other services, via octavia_service_auth_project. Until
Ussuri, this was set to admin. In Ussuri it changed to service. It may
also be set to a different value.

Kolla Ansible currently gives the octavia user the admin role in the
project, but it does not ensure that the project exists. For admin and
service projects, this is not a problem. If the project has been
customised however, it will not necessarily exist, which will cause
Octavia deployment to fail.

This change fixes the issue by ensuring that the service auth project
exists, in addition to the service project.

Closes-Bug: #1922100
Change-Id: I968efbf3ad1de676548b4e3aeefc20bf80ca94a0
2021-03-31 15:57:07 +01:00
Michał Nasiadka
a52cf61b22 octavia: Fix log directory permission
After WSGI implementation the permissions were not fixed.

Depends-On: https://review.opendev.org/c/openstack/kolla/+/783845

Change-Id: I908efe29dcd16c10b0bc88582d8dfb23ba573a35
2021-03-30 12:32:22 +00:00
LinPeiWen
3c1fd44092 Use Docker healthchecks for memcached services
This change enables the use of Docker healthchecks for memcached services.
Implements: blueprint container-health-check

Change-Id: I571e6d6cac634fd86429e12b946d6f7b4a2ab02c
2021-03-30 03:12:01 +00:00
Zuul
93c4448365 Merge "baremetal: Add support for Docker http/https proxy setup" 2021-03-29 09:54:36 +00:00
Zuul
f261b97a00 Merge "openvswitch: Add healthchecks" 2021-03-26 20:36:25 +00:00
Zuul
a2eb9a6a21 Merge "Use Docker healthchecks for cinder services" 2021-03-26 19:48:32 +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
LinPeiWen
561be6de32 Use Docker healthchecks for mistral services
This change enables the use of Docker healthchecks for mistral services.
Implements: blueprint container-health-check

Change-Id: I5c60d22936d0e2e92fc9e6bcbf0a869d3f0b1687
2021-03-26 14:28:36 +00:00
wuchunyang
76579b80a1 Fix cyborg api doesn't listen on api interface
host -> host_ip[0]
Remove deprecated configuration notification_topics.

WARNING oslo_config.cfg [-] Deprecated: Option "notification_topics"
from group "DEFAULT" is deprecated. Use option "topics" from
group "oslo_messaging_notifications".

[0]https://docs.openstack.org/cyborg/latest/configuration/sample-config.html

Change-Id: Ia5d53fb60d34c1509c6cdb905cbd0a93dd1c8b3d
2021-03-26 21:38:59 +08:00
Zuul
0a2b80eed8 Merge "Use Docker healthchecks for haproxy services" 2021-03-26 11:51:01 +00:00
Zuul
a29bfbf889 Merge "Use Docker healthchecks for kibana services" 2021-03-26 11:26:28 +00:00
Zuul
28c65af96a Merge "Use Docker healthchecks for sahara services" 2021-03-26 10:40:30 +00:00
Zuul
00e7aa5ff7 Merge "Use Docker healthchecks for watcher services" 2021-03-26 10:29:02 +00:00
Zuul
4f798ef79b Merge "Use Docker healthchecks for senlin services" 2021-03-26 10:28:45 +00:00
Zuul
e9436d6adf Merge "Use Docker healthchecks for cyborg services" 2021-03-26 10:27:25 +00:00