614 Commits

Author SHA1 Message Date
Mark Goddard
2b662cfb12 Allow ironic_ipxe to serve instance images
Ironic provides a feature to allow instance images to be served from a
local HTTP server [1]. This is the same server used for PXE images with
iPXE. This does not work currently because the ironic_ipxe container
does not have access to /var/lib/ironic/images (ironic docker volume),
where the images are cached. Note that to make use of this feature, the
following is required in ironic.conf:

[agent]
image_download_source = http

This change fixes the issue by giving ironic_ipxe container access to
the ironic volume.

[1] https://docs.openstack.org/ironic/latest/admin/interfaces/deploy.html#deploy-with-custom-http-servers

Change-Id: I501d02cfd40fbacea32d551c3912640c5661d821
Closes-Bug: #1856194
2019-12-12 14:41:00 +00:00
Zuul
a46292f6b6 Merge "Support configuration of Docker client timeout" 2019-12-10 12:38:57 +00:00
Zuul
558b745ae1 Merge "Support deploying Elasticsearch Curator" 2019-12-10 10:52:46 +00:00
Doug Szumski
d4381456fd Support deploying Elasticsearch Curator
This allows users to supply an Elasticsearch Curator actions file
to manage log retention [1]. Curator then runs on a cron job, which
defaults to every day. A default curator actions file is provided,
which can be customised by the end user if required.

[1] https://www.elastic.co/guide/en/elasticsearch/client/curator/current/actionfile.html

Change-Id: Ide9baea9190ae849e61b9d8b6cff3305bdcdd534
2019-12-09 14:49:05 +00:00
Radosław Piliszek
58b5acbf65 Default to etcd3gw driver for etcd-based coordination
To fix instability and availability issues:

etcd3 is not available in repos for binary kolla images.

etcd3 does not support eventlet-based services [1].

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

Change-Id: I430bab735da204fc81696130b17931a89214c876
Closes-bug: #1852086
Closes-bug: #1854932
2019-12-07 08:52:12 +00:00
Zuul
f52082abf7 Merge "Fix Swift with kernel 4.19 and later" 2019-12-04 10:16:10 +00:00
Zuul
f8862c6cc2 Merge "[Train] Fix Tacker config for the local Glance store" 2019-12-03 10:21:34 +00:00
Radosław Piliszek
21488710d6 Fix Swift with kernel 4.19 and later
We mount Swift volumes with xfs.
The 'nobarrier' option we used was made noop [1]
and deprecated [2] (with warning) in kernel 4.10.
In 4.19 it was removed [3] resulting in an error
when using e.g. Debian Buster as host.
The noop patch was backported to CentOS 7 so
it is safe to remove this option with no behavior
change and backport to where needed.
Ubuntu Bionic uses 4.15 which only warns.
CentOS 8 uses 4.18 which only warns as well.
Debian Buster uses 4.19 exactly which breaks.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2291dab2c9d1880efd19469df2042e2277c8b7a4
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4cf4573d899cd80d8578c050061dc342f99f3a32
[3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1c02d502c20809a2a5f71ec16a930a61ed779b81

Change-Id: I006dea21321146c7fc738d0b41c401b72d271a99
Closes-bug: #1800132
2019-11-30 12:56:36 +01:00
Mark Goddard
01050dc01f Support configuration of Docker client timeout
Adds support for configuration of the Docker client timeout via
'docker_client_timeout'.

This change also increases the default timeout to 120 seconds, as we
sometimes see timeouts in CI and heavily loaded or underpowered
environments. Increasing 'docker_client_timeout' further may be helpful
in cases where Docker reports 'Read timed out'.

Change-Id: I73745771078cb2c0ebae2b1d87ba2c4c12958d82
Closes-Bug: #1809844
2019-11-28 10:10:00 +00:00
Zuul
734e86a02f Merge "Split out OVS/Linuxbridge agent configs from ml2_conf.ini" 2019-11-27 18:14:43 +00:00
Michal Nasiadka
0947974ff6 Split out OVS/Linuxbridge agent configs from ml2_conf.ini
Change-Id: I799993728112a525e34cfbc4e786a10f0ed03be9
2019-11-27 13:42:48 +00:00
Radosław Piliszek
c5f9ea9590 [Train] Fix Tacker config for the local Glance store
It turned out the previous fix ([1]) was incomplete.
Additionally, it seems we have to limit Tacker server
to one instance co-located with conductor.

[1] https://review.opendev.org/684275
commit b96ade3cf01009d822f85744efee523127f2674c

Change-Id: I9ce27d5f68f32ef59e245960e23336ae5c5db905
Closes-bug: #1853715
Related-bug: #1845142
2019-11-25 20:13:15 +01:00
Zuul
e04d03e764 Merge "Default to disabling haproxy for memcached" 2019-11-25 10:30:48 +00:00
Zuul
58968223db Merge "Remove Neutron integration with ONOS" 2019-11-20 18:57:36 +00:00
Michal Nasiadka
865ac24fc5 Remove Neutron integration with ONOS
Change-Id: Ie35ea07b8b6f95cbb56eb722ae2366c00243e562
2019-11-18 15:39:19 +00:00
Zuul
82c22c9050 Merge "Attempt to pull image before stopping and removing container" 2019-11-18 15:39:14 +00:00
Michal Nasiadka
eec6831fff Remove OpenDaylight role
Opendaylight support has been deprecated in Train - time to remove it.

Change-Id: I3a61bfbcbf366c327ea3e25d2424bc3fedca29f0
2019-11-18 11:57:32 +00:00
Mark Goddard
64d07c0b7f Attempt to pull image before stopping and removing container
* Deploy services using kolla-ansible deploy
* Reconfigure the image for one or more services to use an invalid
* config
* Deploy/reconfigure services using kolla-ansible reconfigure

The invalid config could be a wrong docker registry, wrong image name,
wrong tag, etc.

The restart handler for the service fails, and the old container is
left running.

The restart handler for the service fails, and the old container is
stopped and removed. This leaves the service in a broken state.

This change fixes the issue by pulling the image if necessary prior to
stopping and removing the container.

Change-Id: I85b2a1b224d4c4d85c32c4922a2cd2c41171a1dc
Closes-Bug: #1852572
2019-11-14 15:08:09 +00:00
Zuul
a52808c5bd Merge "Remove enable_xtrabackup variable" 2019-11-14 14:50:55 +00:00
Mark Goddard
ad01556925 Remove enable_xtrabackup variable
This was deprecated in the Train release in favour of enable_mariadb.

Change-Id: Iea0c6eb51ff26817eeb913c9aa241a9fe7553588
2019-11-14 11:39:24 +00:00
Keith Plant
a3a1b068fe Add support for custom HAProxy service config
Allow users to create/override HAProxy service configuration by
copying over '*.cfg' files from {{ node_custom_config
}}/haproxy/services.d/

Ex: /etc/kolla/config/haproxy/services.d/radosgw.cfg

Change-Id: Id84e3b6e62e544582d6917047534e846e026798d
Signed-off-by: Keith Plant <kplantjr@gmail.com>
2019-11-11 15:24:46 -05:00
0dc4af9bce Update master for stable/train
Add file to the reno documentation build to show release notes for
stable/train.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.

Change-Id: I7cc8f7853d49a22be6cc04312366a811c0d2799c
Sem-Ver: feature
2019-11-11 15:41:24 +00:00
Mark Goddard
7f47ddf7f4 Use mariabackup for database backups
Currently, Xtrabackup is used for database backups. However, Xtrabackup
is not compatible with MariaDB 10.3. This change switches to use
mariabackup [1], which is available in the mariadb image.

The documented full and incremental restore procedures have been
modified to use mariabackup, following [2] and [3].

[1] https://mariadb.com/kb/en/library/mariabackup-overview/
[2] https://mariadb.com/kb/en/library/full-backup-and-restore-with-mariabackup/
[3] https://mariadb.com/kb/en/library/incremental-backup-and-restore-with-mariabackup/

Change-Id: Id52b9b1f7b013277e401b1f6b8aed34473d2b2c4
Closes-Bug: #1843043
Depends-On: https://review.opendev.org/691290
2019-11-01 18:44:10 +00:00
Zuul
d55dac92dd Merge "Allow passing arguments to RabbitMQ server" 2019-10-28 09:55:25 +00:00
Jan Vondra
9137828b97 Allow passing arguments to RabbitMQ server
Adds rabbitmq_server_additional_erl_args variable which
is appended to RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS
environment variable to RabbitMQ server startup script.

This can be used to configure the schedulers.

Docs attached.

Change-Id: Id683c8cc6dac61354ffd94f3b460335b42136ba2
Co-authored-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Related-bug: #1846467
2019-10-25 11:38:45 +02:00
Zuul
4353f0a4dc Merge "Fix swift.conf custom configuration path collision" 2019-10-25 06:27:39 +00:00
Zuul
089efa3b2f Merge "Tidy up release notes for Train" 2019-10-24 12:45:10 +00:00
Mark Goddard
99f1096986 Tidy up release notes for Train
Change-Id: If72fd2c060c8ecd014a61338a3506d93578804b2
2019-10-24 11:08:35 +00:00
Mark Goddard
86ccefc623 Fix swift.conf custom configuration path collision
Both swift.conf and proxy-server.conf are affected be
/etc/kolla/config/swift/proxy-server.conf. However, some options in
proxy-server.conf are not valid in swift.conf.

This change keeps this path for proxy-server.conf, but modifies the path
for swift.conf to /etc/kolla/config/swift/proxy-server/swift.conf. The
same applies for other services, object-*, account-*, container-*.

Change-Id: I600891a15244ce705861f6ec93eec1d5ba83c1b8
Closes-Bug: #1849265
2019-10-24 09:44:31 +01:00
Radosław Piliszek
668463ef19 Default to disabling haproxy for memcached
Since at least the Rocky release we have been enabling
this needlessly.
The enable_haproxy_memcached parameter is not documented but it
can be kept as it is very light on maintenance.

Change-Id: I8b3a6a9f676d2d79657d859190198b17cc8e8a82
2019-10-24 09:09:45 +02:00
Zuul
a2c7be1dc9 Merge "Add prelude for Train release" 2019-10-23 03:04:22 +00:00
Zuul
96663e2c0f Merge "Zun: add Cinder (volume) iSCSI support" 2019-10-22 12:56:44 +00:00
Zuul
111adf3bc4 Merge "[nova][train] Remove deprecated RetryFilter" 2019-10-22 09:23:54 +00:00
Mark Goddard
4a06551a93 Add prelude for Train release
Change-Id: Ifd96a8127b9f2e398b8e853fb1de08eaf22eb696
2019-10-21 14:47:28 +01:00
Zuul
160af32c2c Merge "[train] Add required Tacker Conductor config and docs" 2019-10-21 13:17:00 +00:00
Zuul
b71068c3e6 Merge "Do not disable IPv6 in Tempest" 2019-10-21 09:22:32 +00:00
Eduardo Gonzalez
b96ade3cf0 [train] Add required Tacker Conductor config and docs
Tacker requires config for storing CSAR vnf packages.
This patch adds it as well as relevant docs.
Only one Tacker Conductor is deployed by default due to
lack of a shared filesystem.

Change-Id: Iad391f35105e79fa9319502256528990915df9b7
Co-authored-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Closes-Bug: #1845142
2019-10-21 11:15:29 +02:00
Radosław Piliszek
9e5b3e3fef Add IPv6 control plane feature release note
IPv6 control plane implementation [1] follow-up.

[1] Ia34e6916ea4f99e9522cd2ddde03a0a4776f7e2c

Change-Id: Ia18fdaf3fbfb2bfcb565eaa0f06447d00a3d46f5
2019-10-20 19:44:43 +02:00
Radosław Piliszek
2447c161b8 Zun: add Cinder (volume) iSCSI support
This makes iSCSI with Zun and Cinder work out-of-the-box.
(LVM included)

Change-Id: I2c4aa666ff9f952e32c450347d31ddbf2e58209e
Related-bug: #1797448
Closes-bug: #1848933
2019-10-20 18:27:37 +02:00
Radosław Piliszek
ebf88232dd [nova][train] Remove deprecated RetryFilter
Affects config with Blazar and fake Nova only.
The default does not include it.

Upstream docs:
RetryFilter - Deprecated since version 20.0.0 (Train)
Since the 17.0.0 (Queens) release, the scheduler has provided
alternate hosts for rescheduling so the scheduler does not need to
be called during a reschedule which makes the RetryFilter useless.

Change-Id: I26bf45997005124e9166b5bf1d44cb276624430b
2019-10-18 10:30:37 +02:00
Radosław Piliszek
baa85527c9 Do not disable IPv6 in Tempest
IPv6 need not have been disabled in Tempest before either.

Change-Id: I77f691b6b028d1a7f57537442a79557ede5f861e
2019-10-17 13:58:34 +02:00
Zuul
cdfc1c2344 Merge "Set RabbitMQ cluster_partition_handling to pause_minority" 2019-10-17 10:38:57 +00:00
Doug Szumski
78a828ef42 Support multiple nova cells
This patch adds initial support for deploying multiple Nova cells.

Splitting a nova-cell role out from the Nova role allows a more granular
approach to deploying and configuring Nova services.

A new enable_cells flag has been added that enables the support of
multiple cells via the introduction of a super conductor in addition to
cell-specific conductors. When this flag is not set (the default), nova
is configured in the same manner as before - with a single conductor.

The nova role now deploys the global services:

* nova-api
* nova-scheduler
* nova-super-conductor (if enable_cells is true)

The nova-cell role handles services specific to a cell:

* nova-compute
* nova-compute-ironic
* nova-conductor
* nova-libvirt
* nova-novncproxy
* nova-serialproxy
* nova-spicehtml5proxy
* nova-ssh

This patch does not support using a single cell controller for managing
more than one cell. Support for sharing a cell controller will be added
in a future patch.

This patch should be backwards compatible and is tested by existing CI
jobs. A new CI job has been added that tests a multi-cell environment.

ceph-mon has been removed from the play hosts list as it is not
necessary - delegate_to does not require the host to be in the play.

Documentation will be added in a separate patch.

Partially Implements: blueprint support-nova-cells
Co-Authored-By: Mark Goddard <mark@stackhpc.com>
Change-Id: I810aad7d49db3f5a7fd9a2f0f746fd912fe03917
2019-10-16 17:42:36 +00:00
Gaëtan Trellu
5b0a281d51 Set RabbitMQ cluster_partition_handling to pause_minority
This is to avoid split-brain.

This change also adds relevant docs that sort out the
HA/quorum questions.

Change-Id: I9a8c2ec4dbbd0318beb488548b2cde8f4e487dc1
Closes-Bug: #1837761
Co-authored-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-10-14 10:44:16 +02:00
Zuul
6bdd7dba75 Merge "[designate] Add coordination backend for designate workers" 2019-10-03 13:15:52 +00:00
Joseph M
9cae608392 [designate] Add coordination backend for designate workers
Add coordination backend configuration to designate.conf which is
required in multinode environments. Fixes warning from designate:

WARNING designate.coordination [-] No coordination backend configured,
assuming we are the only worker. Please configure a coordination backend

Change-Id: I23c4d2de7e3f9368795c423000a4f9a6c3a431e2
Closes-Bug: #1843842
Related-Bug: #1840070
2019-09-30 11:02:27 -04:00
Zuul
87e671c6b4 Merge "Add a job that *only* deploys updated containers" 2019-09-30 13:19:28 +00:00
Zuul
53a05b54ed Merge "Remove Nova legacy upgrade" 2019-09-30 08:47:12 +00:00
Zuul
2abfa97e82 Merge "Add custom filters for checking services" 2019-09-29 20:36:17 +00:00
Doug Szumski
0d7a34e8c7 Remove Nova legacy upgrade
The rolling upgrade has been the default since Stein. The legacy
upgrade has been removed because it doesn't follow the upgrade
guide [1].

[1] https://docs.openstack.org/nova/latest/user/upgrade.html

Change-Id: I2aa879699cb4e9955bf5c38053eada5a53fb6211
2019-09-26 18:04:50 +01:00