10489 Commits

Author SHA1 Message Date
Zuul
d8e961eeaa Merge "Wait for MariaDB to be accessible via HAProxy" 2019-08-27 12:58:06 +00:00
Zuul
d6e8394320 Merge "Check for CRITICAL, WARNING and ERROR log messages in CI" 2019-08-27 12:42:44 +00:00
Zuul
e8f17f5b7a Merge "Set default timeout to 60 seconds for docker stop" 2019-08-27 12:42:43 +00:00
Zuul
398f928e81 Merge "Remove stale nova-consoleauth variables" 2019-08-27 12:37:46 +00:00
Zuul
d68ed4f5cd Merge "[octavia] Add region-specific catalog lookups" 2019-08-27 12:37:45 +00:00
Zuul
b4379865f9 Merge "[blazar] Use database_address as default DB addr" 2019-08-27 12:14:05 +00:00
Zuul
8189143fe1 Merge "Remove invalid reference to Placement API" 2019-08-27 11:45:11 +00:00
Joseph M
51033d9b31 [octavia] Add region-specific catalog lookups
octavia.conf is missing configuration values required to do service
catalog lookups in multiple region environments. Without them Octavia
can try to contact a service in a different region than its own. Specify
region_name and endpoint_type for the glance, neutron, and nova services
to prevent this from happening.

Change-Id: I753cf443c1506bbd7b69fc47e2e0a9b39857509c
Closes-Bug: #1841479
2019-08-26 18:11:36 -04:00
Zuul
84044f1eac Merge "Use fluentd image labels" 2019-08-23 19:09:54 +00:00
Radosław Piliszek
c24dcf8a38 Fix Zun Docker remote API host
This makes WS (so e.g. console) always work with the way we
deploy Zun. Otherwise it used the first IP address.

Change-Id: Ib31c5944be2f6fa00cdf5da3e638a590e6bace40
Closes-bug: #1841243
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-08-23 19:38:18 +02:00
Jason Anderson
0d93fa71d8
[blazar] Use database_address as default DB addr
The internal FQDN assumes that HAProxy is set up to route traffic to the
DB; other services default to the value of database_address.

Change-Id: I9a333a89adfa4f620f211c831d659b8d52e307d5
2019-08-23 10:37:26 -05:00
Doug Szumski
bcdd0dd257 Remove invalid reference to Placement API
The Placement API has moved out of the Nova role and is no
longer defined in `nova_services`.

Change-Id: I7b9601334c7e4c6b075a233557669ad414556e09
2019-08-23 14:27:34 +01:00
Michal Nasiadka
837f19a770 docs: ceph-ansible usage, add note around ceph keys
ceph-ansible by default generates what we call nova.keyring as
openstack.keyring - adding a note to not confuse users.

Change-Id: I3992a037ab8e7947e35521b5c721a89bd954fdcd
2019-08-23 09:27:04 +00:00
Krzysztof Klimonda
b0ecd8b67c Implement TLS encryption for internal endpoints
This review is the first one in a series of patches and it introduces an
optional encryption for internal openstack endpoints, implementing part
of the add-ssl-internal-network spec.

Change-Id: I6589751626486279bf24725f22e71da8cd7f0a43
2019-08-22 16:39:21 -07:00
Zuul
af77a88775 Merge "Don't assume etcd group exists in baremetal role" 2019-08-22 18:28:13 +00:00
Mark Goddard
331d373b99 Don't assume etcd group exists in baremetal role
The baremetal role does not currently assume too much about the
inventory, and in kayobe the seed is deployed using a very minimal
inventory.

Icf3f01516185afb7b9f642407b06a0204c36ecbe added a reference to the etcd
group in the baremetal role, which causes kayobe seed deployment to fail
with the following error:

    AnsibleUndefinedVariable: 'dict object' has no attribute 'etcd'

This change defaults the group lookup to an empty list.

Change-Id: Ib3252143a97652c5cf70b56cbfd7c7ce69f93a55
Closes-Bug: #1841073
2019-08-22 16:30:56 +01:00
Michal Nasiadka
4180bee020 Use fluentd image labels
In order to orchestrate smooth transition to fluentd 0.14.x
aka 1.0 stable branch aka td-agent 3
from td-agent repository - use image labels (fluentd_version
and fluentd_binary).

Depends-On: https://review.opendev.org/676411
Change-Id: Iab8518c34ef876056c6abcdb5f2e9fc9f1f7dbdd
2019-08-22 12:36:51 +00:00
Mark Goddard
67c59b1cf7 Remove stale nova-consoleauth variables
Nova-consoleauth support was removed in
I099080979f5497537e390f531005a517ab12aa7a, but these variables were
left.

Change-Id: I1ce1631119bba991225835e8e409f11d53276550
2019-08-22 12:25:18 +01:00
Zuul
e25d915dd9 Merge "Fix HAProxy check for MariaDB" 2019-08-22 10:33:14 +00:00
Zuul
ea4d672113 Merge "Add --force to ceph mgr dashboard enablement" 2019-08-22 10:27:29 +00:00
Michal Nasiadka
361f61d4a9 Add --force to ceph mgr dashboard enablement
Sometimes mgr dashboard enablement fails with following message:
"Error ENOENT: all mgr daemons do not support module 'dashboard',
pass --force to force enablement"

Change-Id: Ie7052dbdccb855e02da849dbc207b5d1778e2c82
2019-08-21 14:31:45 +00:00
ljhuang
74edd54b67 Add meta for some roles
The meta is missing, this PS to add it

Change-Id: Ib7e39820a48659202ddd1c1f91b2e8c3f0529443
2019-08-21 07:41:45 +00:00
Zuul
e8212a3080 Merge "Fix import of horizon custom_local_settings on python3" 2019-08-20 20:15:03 +00:00
Dincer Celik
120e8080ab Fix import of horizon custom_local_settings on python3
Change-Id: I71f3e8ab50426246b595755a8f3298ba7ca0a50d
Closes-Bug: #1803029
2019-08-20 17:15:25 +00:00
Doug Szumski
d34147b84b Fix HAProxy check for MariaDB
The MariaDB role HAProxy config section exposes MariaDB on the
mariadb_port which may not always be the same as database_port. The
HAProxy role checks that the database_port is free, and not the
mariadb_port. This could mean that the check passes, but the actual
port which HAProxy will attempt to use is taken.

This change configures HAProxy to talk to the MariaDB instances on
the mariadb_port, and maps them to the database_port which is used by
most services as part of the DB connection string.

There is a small risk that it may break someones override config.

Change-Id: I9507ee709cb21eb743112107770ed3170c61ef74
2019-08-20 17:59:39 +01:00
Zuul
7fe8cc5a6a Merge "Fix Zun connectivity to itself and Cinder" 2019-08-20 09:58:01 +00:00
Isaac Prior
ff8c24d62a Removes monasca_grafana persistent volume
The monasca_grafana docker volume currently persists across container
builds, causing changes to installed plugins during build to be ignored.
This change deletes the volume entirely and forces plugin changes to be
applied via rebuild.

Change-Id: I36e62235a085e5c1955fdb5ae31f603be8ba69bf
2019-08-19 15:17:30 +01:00
Mark Goddard
33efcb814c Set default timeout to 60 seconds for docker stop
The previous default timeout was 10 seconds, which does not always
allow services enough time to shut down safely.

Change-Id: I54eff91567108a7e5d99f067829ae4a6900cd859
2019-08-19 11:54:14 +01:00
Zuul
249cb4be45 Merge "CI - remove unused required-projects" 2019-08-19 10:03:47 +00:00
Zuul
4b4c10af2b Merge "Use default BGP speaker driver in bgp_dragent.ini" 2019-08-19 07:31:13 +00:00
Zuul
b93e33e78e Merge "Remove nova [DEFAULT]firewall_driver option" 2019-08-19 07:07:01 +00:00
Radosław Piliszek
b693746cb0 Fix Zun connectivity to itself and Cinder
Zun was misconfigured and defaulted to using public endpoints
which are likely inaccessible from the internal network.
This patch fixes that and removes unused and deprecated
options. Validity of options confirmed from Queens to Train
against respective docs.

Change-Id: I25cc8792351c43eb9ff45465e49fa72ceccd6cb5
Closes-bug: #1840572
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-08-18 17:13:04 +02:00
Zuul
d9dd536cf8 Merge "CI: Zun jobs" 2019-08-17 11:58:46 +00:00
Zuul
5394cf187d Merge "Allow to configure docker for Zun" 2019-08-17 11:58:45 +00:00
Zuul
58cca6801c Merge "Allow cinder coordination backend to be configured" 2019-08-16 16:06:01 +00:00
Zuul
483304dc03 Merge "update horizon configuration for python3 migrating" 2019-08-16 16:05:59 +00:00
Zuul
83d8b1053c Merge "CI: Add docker inspect output to docker_info logs" 2019-08-16 15:40:38 +00:00
Mark Goddard
a14eee24d1 Check for CRITICAL, WARNING and ERROR log messages in CI
At the end of a CI run, check all log files.

Change-Id: I99afc1c5207757e35beabf7daebd86c56151c96d
2019-08-16 15:33:54 +00:00
Radosław Piliszek
d4de1d7520 CI: Zun jobs
- Test Zun on CentOS too
- Make etcd change also trigger Zun jobs (like kuryr and zun)
- Test multinode Zun deployments instead of AIO
  (more likely to break)
- In Zun scenario, stop configuring docker for legacy swarm mode
  (Zun is no swarm)
- Separate test-zun.sh testing script
- Show appcontainer to see which node it has been started on

Change-Id: I289b1009fe00aedb9b78cbd83298b14da5fd9670
Depends-On: https://review.opendev.org/676736
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-08-16 17:11:00 +02:00
Radosław Piliszek
44f88d16ac Allow to configure docker for Zun
Change-Id: Icf3f01516185afb7b9f642407b06a0204c36ecbe
Closes-Bug: #1840315
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-08-16 15:35:11 +02:00
Scott Solkhon
09e02ef8f1 Support configuration of trusted CA certificate file
This commit adds the functionality for an operator to specify
their own trusted CA certificate file for interacting with the
Keystone API.

Implements: blueprint support-trusted-ca-certificate-file
Change-Id: I84f9897cc8e107658701fb309ec318c0f805883b
2019-08-16 12:47:42 +00:00
Michal Nasiadka
8cf24bcc81 CI: Add docker inspect output to docker_info logs
Change-Id: I081f2f4762651bca935f08a67b20f21946aaf051
2019-08-16 09:30:16 +00:00
Radosław Piliszek
de2f7be981 TrivialFix: remove unused template var
Change-Id: I7d0ed4ad94e3d07220de131b2a0fcd399d942782
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-08-16 08:25:22 +02:00
Zuul
aa135e37f7 Merge "Standardize the configuration of "oslo_messaging" section" 2019-08-15 20:04:56 +00:00
Zuul
fac646406f Merge "Testing Masakari role in gate" 2019-08-15 17:26:56 +00:00
Zuul
bf372c2502 Merge "Add Masakari Ansible role" 2019-08-15 16:36:44 +00:00
Rafael Weingärtner
22a6223b1b Standardize the configuration of "oslo_messaging" section
After all of the discussions we had on
"https://review.opendev.org/#/c/670626/2", I studied all projects that
have an "oslo_messaging" section. Afterwards, I applied the same method
that is already used in "oslo_messaging" section in Nova, Cinder, and
others. This guarantees that we have a consistent method to
enable/disable notifications across projects based on components (e.g.
Ceilometer) being enabled or disabled. Here follows the list of
components, and the respective changes I did.

* Aodh:
The section is declared, but it is not used. Therefore, it will
be removed in an upcomming PR.

* Congress:
The section is declared, but it is not used. Therefore, it will
be removed in an upcomming PR.

* Cinder:
It was already properly configured.

* Octavia:
The section is declared, but it is not used. Therefore, it will
be removed in an upcomming PR.

* Heat:
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Ceilometer:
Ceilometer publishes some messages in the rabbitMQ. However, the
default driver is "messagingv2", and not ''(empty) as defined in Oslo;
these configurations are defined in ceilometer/publisher/messaging.py.
Therefore, we do not need to do anything for the
"oslo_messaging_notifications" section in Ceilometer

* Tacker:
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Neutron:
It was already properly configured.

* Nova
It was already properly configured. However, we found another issue
with its configuration. Kolla-ansible does not configure nova
notifications as it should. If 'searchlight' is not installed (enabled)
the 'notification_format' should be 'unversioned'. The default is
'both'; so nova will send a notification to the queue
versioned_notifications; but that queue has no consumer when
'searchlight' is disabled. In our case, the queue got 511k messages.
The huge amount of "stuck" messages made the Rabbitmq cluster
unstable.

https://bugzilla.redhat.com/show_bug.cgi?id=1478274
https://bugs.launchpad.net/ceilometer/+bug/1665449

* Nova_hyperv:
I added the same configurations as in Nova project.

* Vitrage
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Searchlight
I created a mechanism similar to what we have in AODH, Cinder, Nova,
and others.

* Ironic
I created a mechanism similar to what we have in AODH, Cinder, Nova,
and others.

* Glance
It was already properly configured.

* Trove
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Blazar
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Sahara
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Watcher
I created a mechanism similar to what we have in AODH, Cinder, Nova,
and others.

* Barbican
I created a mechanism similar to what we have in Cinder, Nova,
and others. I also added a configuration to 'keystone_notifications'
section. Barbican needs its own queue to capture events from Keystone.
Otherwise, it has an impact on Ceilometer and other systems that are
connected to the "notifications" default queue.

* Keystone
Keystone is the system that triggered this work with the discussions
that followed on https://review.opendev.org/#/c/670626/2. After a long
discussion, we agreed to apply the same approach that we have in Nova,
Cinder and other systems in Keystone. That is what we did. Moreover, we
introduce a new topic "barbican_notifications" when barbican is
enabled. We also removed the "variable" enable_cadf_notifications, as
it is obsolete, and the default in Keystone is CADF.

* Mistral:
It was hardcoded "noop" as the driver. However, that does not seem a
good practice. Instead, I applied the same standard of using the driver
and pushing to "notifications" queue if Ceilometer is enabled.

* Cyborg:
I created a mechanism similar to what we have in AODH, Cinder, Nova,
and others.

* Murano
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Senlin
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Manila
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Zun
The section is declared, but it is not used. Therefore, it will
be removed in an upcomming PR.

* Designate
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

* Magnum
It was already using a similar scheme; I just modified it a little bit
to be the same as we have in all other components

Closes-Bug: #1838985

Change-Id: I88bdb004814f37c81c9a9c4e5e491fac69f6f202
Signed-off-by: Rafael Weingärtner <rafael@apache.org>
2019-08-15 13:18:16 -03:00
Mark Goddard
d54c8fbdcc Use internal API for heat -> heat communication
Heat has a new option (server_keystone_endpoint_type), which can be used
to set the keystone endpoint used by instances to make callbacks to
heat. This needs to be public, since we can't assume users have access
to the internal API. However, the current method of setting
[clients_heat] endpoint_type means that communication from heat to its
own API (e.g. when a stack is a resource in another stack) uses the
public network also, and this might not work if TLS is enabled.

This change uses server_keystone_endpoint_type to keep instance traffic
on the public API, and removes the [clients_heat] endpoint_type option
to use the default in [clients] endpoint_type of internalURL.

This feature was added to heat in https://review.opendev.org/#/c/650967.

Change-Id: I932ea55a3c2a411557c34361db08bcb3a2b27eaf
Closes-Bug: #1812864
Related-Bug: #1762754
Related-Bug: #1688331
2019-08-15 16:04:44 +01:00
Kien Nguyen
577bb50a04 Add Masakari Ansible role
Masakari provides Instances High Availability Service for
OpenStack clouds by automatically recovering failed Instances.

Depends-On: https://review.openstack.org/#/c/615469/
Change-Id: I0b3457232ee86576022cff64eb2e227ff9bbf0aa
Implements: blueprint ansible-masakari
Co-Authored-By: Gaëtan Trellu <gaetan.trellu@incloudus.com>
2019-08-15 09:58:53 -04:00
Scott Solkhon
03cd7eb356 Wait for MariaDB to be accessible via HAProxy
Explicitly wait for the database to be accessible via the load balancer.
Sometimes it can reject connections even when all database services are up,
possibly due to the health check polling in HAProxy.

Closes-Bug: #1840145
Change-Id: I7601bb710097a78f6b29bc4018c71f2c6283eef2
2019-08-15 10:00:36 +00:00