10212 Commits

Author SHA1 Message Date
Radosław Piliszek
6a737b1968 Fix handling of docker restart policy
Docker has no restart policy named 'never'. It has 'no'.
This has bitten us already (see [1]) and might bite us again whenever
we want to change the restart policy to 'no'.

This patch makes our docker integration honor all valid restart policies
and only valid restart policies.
All relevant docker restart policy usages are patched as well.

I added some FIXMEs around which are relevant to kolla-ansible docker
integration. They are not fixed in here to not alter behavior.

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

Change-Id: I1c9764fb9bbda08a71186091aced67433ad4e3d6
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-07-18 13:39:06 +00:00
Zuul
b7098faf88 Merge "Fix ironic inspector iPXE boot with UEFI" 2019-07-17 20:06:51 +00:00
Zuul
efa9819b18 Merge "Add ceph-mds/rgw/nfs to gate" 2019-07-17 16:02:44 +00:00
Zuul
f52eee42c2 Merge "ceph-nfs: Add rpcbind to Ubuntu host bootstrap" 2019-07-17 16:02:43 +00:00
Michal Nasiadka
a77b0f624e Add ceph-mds/rgw/nfs to gate
Depends-On: https://review.opendev.org/669315
Change-Id: I6946290cd890f74c59ed5394e8382a8b75c0c4cd
2019-07-16 17:44:22 +00:00
Michal Nasiadka
efcaf400b8 ceph-nfs: Add rpcbind to Ubuntu host bootstrap
* Ubuntu ships with nfs-ganesha 2.6.0, which requires to do an rpcbind
udp test on startup (was fixed later)
* Add rpcbind package to be installed by kolla-ansible bootstrap when
ceph_nfs is enabled
* Update Ceph deployment docs with a note

Change-Id: Ic19264191a0ed418fa959fdc122cef543446fbe5
2019-07-16 17:38:18 +00:00
Zuul
61a74c0f5b Merge "Do not require valid migration_interface for controllers" 2019-07-16 14:10:09 +00:00
Zuul
0f67261352 Merge "Enhance merge_* action plugins to allow expected relative includes" 2019-07-16 14:10:07 +00:00
Zuul
7a2e08d828 Merge "Note that kolla doesn't support ovsdpdk for RHEL-based distros" 2019-07-15 09:54:40 +00:00
Zuul
c2244260c6 Merge "Test minimum supported and latest versions of Ansible" 2019-07-15 09:54:39 +00:00
chenxing
897391762f Note that kolla doesn't support ovsdpdk for RHEL-based distros
Change-Id: I6974858a0a44d85a065502ed7b3a8e2797be7228
Closes-Bug: #1832979
2019-07-15 08:26:07 +00:00
Zuul
357abf6042 Merge "Internal OpenStack endpoints encryption spec" 2019-07-15 03:06:19 +00:00
Zuul
dc1bce370e Merge "Fix glance with file backend" 2019-07-14 12:17:46 +00:00
Mark Goddard
7b9397566a Fix ironic inspector iPXE boot with UEFI
The ironic inspector iPXE configuration includes the following kernel
argument:

initrd=agent.ramdisk

However, the ramdisk is actually called ironic-agent.initramfs, so the
argument should be:

initrd=ironic-agent.initramfs

In BIOS boot mode this does not cause a problem, but for compute nodes
with UEFI enabled, it seems to be more strict about this, and fails to
boot.

Change-Id: Ic84f3b79fdd3cd1730ca2fb79c11c7a4e4d824de
Closes-Bug: #1836375
2019-07-12 15:09:56 +01:00
Zuul
83dbed6b78 Merge "Add Region and Multiples into default globals.yml" 2019-07-12 13:38:01 +00:00
Raimund Hook
e72c49ed82 Add Region and Multiples into default globals.yml
Currently, the documentation around configuring regions directs
you to make changes to openstack_region_name and multiple_regions_names
in the globals.yml file.
The defaults weren't represented in there which could potentially cause
confusion. This change adds these defaults with a brief description.

TrivialFix

Change-Id: Ie0ff7e3dfb9a9355a9c9dbaf27151d90162806dd
2019-07-12 13:26:16 +01:00
Zuul
ab3377d492 Merge "Language tweaks in multi-region docs for clarity" 2019-07-12 12:02:44 +00:00
Raimund Hook
fd07e3d911 Language tweaks in multi-region docs for clarity
Tweaked some of the language in doc/source/user/multi-regions.rst for
clarity purposes.

TrivialFix

Change-Id: Icdd8da6886d0e39da5da80c37d14d2688431ba8f
2019-07-12 12:45:10 +01:00
Mark Goddard
d5e5e885d1 During deploy, always sync DB
A common class of problems goes like this:

* kolla-ansible deploy
* Hit a problem, often in ansible/roles/*/tasks/bootstrap.yml
* Re-run kolla-ansible deploy
* Service fails to start

This happens because the DB is created during the first run, but for some
reason we fail before performing the DB sync. This means that on the second run
we don't include ansible/roles/*/tasks/bootstrap_service.yml because the DB
already exists, and therefore still don't perform the DB sync. However this
time, the command may complete without apparent error.

We should be less careful about when we perform the DB sync, and do it whenever
it is necessary. There is an argument for not doing the sync during a
'reconfigure' command, although we will not change that here.

This change only always performs the DB sync during 'deploy' and
'reconfigure' commands.

Change-Id: I82d30f3fcf325a3fdff3c59f19a1f88055b566cc
Closes-Bug: #1823766
Closes-Bug: #1797814
2019-07-12 08:56:54 +00:00
Zuul
103e0e43e7 Merge "init-runonce: make public1 network optional" 2019-07-11 09:30:53 +00:00
Mark Goddard
602f89baa6 Fix glance with file backend
Since https://review.opendev.org/647699/, we lost the logic to only
deploy glance-api on a single host when using the file backend.

This code was always a bit custom, and would be better supported by
using the 'host_in_groups' pattern we have in a few other places where a
single group name does not describe the placement of containers for a
service.

Change-Id: I21ce4a3b0beee0009ac69fecd0ce24efebaf158d
Closes-Bug: #1836151
2019-07-11 09:25:46 +01:00
Radosław Piliszek
b166d2550e Do not require valid migration_interface for controllers
Controllers lacking compute should not be required to provide
valid migration_interface as it is not used there (and prechecks
do not check that either).

Inclusion of libvirt conf section is now conditional on service type.
libvirt conf section has been moved to separate included file to
avoid evaluation of the undefined variable (conditional block did not
prevent it and using 'default' filter may hide future issues).
See https://github.com/ansible/ansible/issues/58835
Additionally this fixes the improper nesting of 'if' blocks for libvirt.

Change-Id: I77af534fbe824cfbe95782ab97838b358c17b928
Closes-Bug: #1835713
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-07-10 21:04:14 +02:00
Radosław Piliszek
0c00915c41 Enhance merge_* action plugins to allow expected relative includes
This mimics behavior of core 'template' module to allow relative
includes from the same dir as merged template, base dir of
playbook/role (usually role for us) and its 'templates' subdir.

Additionally old unused code was removed.

Change-Id: I83804d3cf5f17eb2302a2dfe49229c6277b1e25f
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-07-10 20:52:53 +02:00
Zuul
768852f8d5 Merge "Fix the incorrect backup_driver configuration" 2019-07-10 16:50:25 +00:00
Zuul
fc42791e1f Merge "Update designate-guide cli command for dns_domain" 2019-07-10 16:48:34 +00:00
Mark Goddard
3026fd9129 init-runonce: make public1 network optional
Skip creation by setting ENABLE_EXT_NET to 0.

Since adding errexit we are failing in kayobe CI, since we have a
conflicting flat network on physnet1.

Change-Id: I88429f30eb81a286f4b8104d5e7a176eefaad667
2019-07-10 17:48:28 +01:00
Michal Nasiadka
4e3054b5da Add 'allow *' to getting ceph mds keyring
* Sometimes getting/creating ceph mds keyring fails, similar to https://tracker.ceph.com/issues/16255

Change-Id: I47587cbeb8be0e782c13ba7f40367409e2daa8a8
2019-07-10 13:09:38 +02:00
Raimund Hook
ec3fe167af Update designate-guide cli command for dns_domain
Updated the docs to refer to the openstack client, rather than the (old)
neutron client.

TrivialFix

Change-Id: I82011175f7206f52570a0f7d1c6863ad8fa08fd0
2019-07-10 10:57:35 +01:00
Krzysztof Klimonda
ab88284943 Internal OpenStack endpoints encryption spec
An initial specification of the internal TLS implementation for kolla,
describing https://etherpad.openstack.org/p/kolla-internal-tls and
https://blueprints.launchpad.net/kolla-ansible/+spec/add-ssl-internal-network

Change-Id: I5a42226b724affad2dc12390e345336f375c7a57
2019-07-10 08:57:53 +00:00
chenxing
8b55268d44 Fix the incorrect backup_driver configuration
The "backup_driver" option should be configured to
cinder.backup.drivers.ceph.CephBackupDriver instead of
cinder.backup.drivers.ceph.

Change-Id: I22457023c6ad76b508bcbe05e37517c18f1ffc81
Closes-Bug: #1832878
2019-07-10 16:06:35 +08:00
Radosław Piliszek
53ea3fe4af Trivial fix: log stderr of init-runonce as well
Missed by me in a recent merge.

TrivialFix
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>

Change-Id: I83b1e84a43f014ce20be8677868be3f66017e3c2
2019-07-09 15:38:47 +02:00
Zuul
8ec3ffc64b Merge "Fix nova deploy with Ansible<2.8" 2019-07-09 09:33:28 +00:00
Mark Goddard
b9da05be55 Test minimum supported and latest versions of Ansible
We have a minimum supported version of Ansible, currently 2.5. We should
test this in addition to the latest version. This change tests latest on
Ubuntu, and minimum on other distros.

Change-Id: I45a7173139f057177a71e919ad3e718a99d9f87b
2019-07-09 08:04:26 +00:00
Zuul
887938bbcb Merge "Exit on failure in init-runonce" 2019-07-09 07:33:46 +00:00
Zuul
48223fe83c Merge "Deprecate Ceph deployment" 2019-07-08 22:22:57 +00:00
Mark Goddard
5be093ac5a Fix nova deploy with Ansible<2.8
Due to a bug in ansible, kolla-ansible deploy currently fails in nova
with the following error when used with ansible earlier than 2.8:

TASK [nova : Waiting for nova-compute services to register themselves]
*********
task path:
/home/zuul/src/opendev.org/openstack/kolla-ansible/ansible/roles/nova/tasks/discover_computes.yml:30
fatal: [primary]: FAILED! => {
    "failed": true,
    "msg": "The field 'vars' has an invalid value, which
        includes an undefined variable. The error was:
        'nova_compute_services' is undefined\n\nThe error
        appears to have been in
        '/home/zuul/src/opendev.org/openstack/kolla-ansible/ansible/roles/nova/tasks/discover_computes.yml':
        line 30, column 3, but may\nbe elsewhere in the file
        depending on the exact syntax problem.\n\nThe
        offending line appears to be:\n\n\n- name: Waiting
        for nova-compute services to register themselves\n ^
            here\n"
}

Example:
http://logs.openstack.org/00/669700/1/check/kolla-ansible-centos-source/81b65b9/primary/logs/ansible/deploy

This was caused by
https://review.opendev.org/#/q/I2915e2610e5c0b8d67412e7ec77f7575b8fe9921,
which hits upon an ansible bug described here:
https://github.com/markgoddard/ansible-experiments/tree/master/05-referencing-registered-var-do-until.

We can work around this by not using an intermediary variable.

Change-Id: I58f8fd0a6e82cb614e02fef6e5b271af1d1ce9af
Closes-Bug: #1835817
2019-07-08 19:58:51 +00:00
Zuul
6d6aa27f50 Merge "Add Python 3 Train unit tests" 2019-07-08 17:24:43 +00:00
Zuul
772568e888 Merge "CI: add periodic-stable-jobs Zuul project template" 2019-07-08 09:46:41 +00:00
Zuul
14a51cb31d Merge "CI: Test ironic also when nova role is modified" 2019-07-08 09:23:17 +00:00
Zuul
65783c90dd Merge "CI: Pull images before upgrade" 2019-07-08 09:21:57 +00:00
Zuul
4fc523c3f4 Merge "Fixes for MariaDB bootstrap and recovery" 2019-07-08 09:21:55 +00:00
Zuul
ec78645928 Merge "Bump minimum Ansible version to 2.5" 2019-07-08 09:21:53 +00:00
Zuul
db55408620 Merge "Fix conditionals in CI playbook" 2019-07-07 10:52:01 +00:00
Corey Bryant
09b5738168 Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Change-Id: Ic5f9c5c666e08bc34127d97f9540033536c5b08f
Story: #2005924
Task: #34216
2019-07-05 11:44:23 -04:00
Zuul
fb964ce41b Merge "CI - remove unused setup scripts" 2019-07-05 15:42:42 +00:00
Zuul
8daad1abcf Merge "Wait for all compute services before cell discovery" 2019-07-05 10:31:29 +00:00
Mark Goddard
86f373a198 Fixes for MariaDB bootstrap and recovery
* Fix wsrep sequence number detection. Log message format is
  'WSREP: Recovered position: <UUID>:<seqno>' but we were picking out
  the UUID rather than the sequence number. This is as good as random.

* Add become: true to log file reading and removal since
  I4a5ebcedaccb9261dbc958ec67e8077d7980e496 added become: true to the
  'docker cp' command which creates it.

* Don't run handlers during recovery. If the config files change we
  would end up restarting the cluster twice.

* Wait for wsrep recovery container completion (don't detach). This
  avoids a potential race between wsrep recovery and the subsequent
  'stop_container'.

* Finally, we now wait for the bootstrap host to report that it is in
  an OPERATIONAL state. Without this we can see errors where the
  MariaDB cluster is not ready when used by other services.

Change-Id: Iaf7862be1affab390f811fc485fd0eb6879fd583
Closes-Bug: #1834467
2019-07-05 09:20:34 +00:00
Zuul
dfa1a3844d Merge "Add upgrade-bifrost command" 2019-07-05 09:17:16 +00:00
Zuul
70b7cddd2b Merge "Add parameters to configure number of processes and threads of horizon" 2019-07-05 09:17:14 +00:00
Zuul
af8ae0aa41 Merge "Simplify handler conditionals" 2019-07-04 21:34:14 +00:00