183 Commits

Author SHA1 Message Date
Zuul
3766b33557 Merge "Document a backup procedure for the seed" 2019-02-01 19:14:03 +00:00
Will Szumski
84172bfbe0 Support complete installation of Kayobe as a python package
This adds the ansible playbooks required by kayobe to the manifest by
using the data_files option in setuptools. When using pip to install
kayobe into a virtualenv, these files will be placed in
<venv>/kayobe/share/.

In an editable install, e.g using `pip install -e .`, data_files are not
installed into the virtualenv. Instead, we must follow the egg-link file
to find out the actual location.

Story: 2004252
Task: 27787
Change-Id: Ibef040eceb547476007f83c0d5dcdb2bc6986d1e
2019-02-01 12:55:27 +00:00
Zuul
0341bb3692 Merge "Add docs on building images" 2019-01-30 18:33:43 +00:00
Zuul
0d948bd7fe Merge "Add docs on host configuration" 2019-01-30 18:17:31 +00:00
Pierre Riteau
55f73c52ca Add support for setting defroute
Change-Id: I483d8f4189a569d58bc95591c7c86a88c9c5b5f3
Story: 2004884
Task: 29165
2019-01-29 14:58:21 +00:00
Mark Goddard
31da0cdc29 Add docs on building images
Change-Id: I0074b8ef2153813b3ffdd5e8254d76df25e49302
Story: 2004337
Task: 28486
2019-01-11 17:10:05 +00:00
Mark Goddard
b9ae3e2290 Add docs on host configuration
Change-Id: I2962d148afb77834f78deedf206060b86445055a
Story: 2004337
Task: 27924
2019-01-11 17:10:03 +00:00
Mark Goddard
e12bcd9a4d Document a backup procedure for the seed
Adds instructions for a database backup.

Change-Id: I97c4bdb4e5d7d28c06a03ceb1cc290db9b1dccb5
Story: 2004359
Task: 27959
2019-01-11 16:32:39 +00:00
Mark Goddard
7593a8b925 Test upgrading seed services in CI
Adds the kayobe-seed-upgrade-centos job, which performs an upgrade of
the seed services from the previous release to the current release.

Change-Id: Ia3eb39cf81cb3618fd94c4456bd576b52098c946
Story: 2004308
Task: 27873
2018-12-21 15:21:47 +00:00
Mark Goddard
6496af1f67 Add kayobe seed service upgrade command
Adds a new command to upgrade containerised services on the seed:

kayobe seed service upgrade

This is largely the same as the deploy command, since there is no
kolla-ansible bifrost-upgrade command yet.

A limitation in Bifrost requires us to remove IPA images before
upgrading the bifrost container.

Change-Id: Ibbe01e972487e69dbb753a67efcf13e3ae0800de
Story: 2004308
Task: 27872
2018-12-21 15:21:30 +00:00
Pierre Riteau
058a1351e3 Fix reference to Kolla-Ansible inventory
Change-Id: Iae19672b2ec7e2a9fe39d412f16d0c1a41c0bc99
2018-12-05 16:25:00 +00:00
Zuul
4244a8d7a6 Merge "Reorganise administration guide into sections" 2018-12-04 17:01:26 +00:00
Zuul
c3ec38632e Merge "Make ansible_host optional for all switch types" 2018-11-28 13:46:53 +00:00
Mark Goddard
72ce93dbfe Reorganise administration guide into sections
The administration guide has become a bit bloated, and not well
organised. This change creates new subsections within it.

Change-Id: I8aa133c183fb6b7d87a86d5ab66cc7faa5e64112
Story: 2004337
Task: 28082
2018-11-28 13:41:49 +00:00
Zuul
91566b0f12 Merge "Add commands to enable and disable the serial console" 2018-11-27 19:49:08 +00:00
Mark Goddard
ae340128e6 Make ansible_host optional for all switch types
The Juniper device support allows ansible_host variable to not be set
for a switch, in which case the inventory_hostname will be used instead.

This change applies this default consistently across all switch types.

Change-Id: Ibc1e673a6b988f2e8d7bb6c62d30ccdb7ce96351
Story: 2004358
Task: 27958
2018-11-27 18:56:27 +00:00
Zuul
3df008fdc4 Merge "Add documentation about physical network config" 2018-11-27 18:53:45 +00:00
Zuul
2aeb134390 Merge "Add release.sh, a script for creating releases" 2018-11-27 18:53:44 +00:00
Ross Martyn
73fb8c39c8 Added manila.conf details to kolla-ansible documentation
This small update is to show users where to put their manila
configuration file for kolla-ansible.

Change-Id: I050bb6e388c8b82de05e4deeaa357b98525c004e
Story: 2004414
Task: 28058
2018-11-27 07:52:33 +00:00
Mark Goddard
03b496b93f Add documentation about physical network config
Change-Id: I267a65137910b71540aba6ea79f475607f5e2e98
Story: 2004337
Task: 27923
2018-11-19 16:43:21 +00:00
Mark Goddard
b87135d3c3 Add release.sh, a script for creating releases
Also adds documentation on releasing to the developer guide.

Change-Id: Ic26daf362ce79fa1ea9ce217cf470d85c961affa
2018-11-18 17:41:43 +00:00
Zuul
0bcebebde6 Merge "Support configuration of custom fluentd inputs" 2018-11-09 17:25:27 +00:00
Will Szumski
4867c91481 Add commands to enable and disable the serial console
This allows you to access the serial console from within
Horizon.

Change-Id: Id40e72047174fc0c0c565871f24b775b30e83825
Story: 2004192
Task: 27682
2018-11-07 15:35:47 +00:00
Mark Goddard
6266312fa1 Test upgrades in CI
There is currently no coverage of upgrades in CI, which leaves us open
to regression in this infrequently tested but crucial area. This change
adds the required scripts and Zuul configuration.

A control plane is first deployed using the Kayobe stable/pike branch
and associated default configuration. The control plane is tested by
deploying then deleting a server instance. An upgrade to Queens is
performed, using the Kayobe master branch, or code in review if
applicable. The upgraded control plane is tested by deploying then
deleting a second server instance.

A workaround was required to restart the nova_compute service after the
upgrade, since the SIGHUP sent to it by Kolla Ansible during upgrade
appeared to be putting it into a degraded state.

A future improvement to this test could be to leave a server instance
running during the upgrade.

Change-Id: I0e595524e39d1131fe3ec6aaf2aeec3ff3d6a536
Story: 2003472
Task: 24732
2018-11-05 12:02:31 +00:00
Pierre Riteau
496ff70119 Fix description of --display argument
Change-Id: Ia9589ba33ce4ae83c1fece6fa100c5740432c4e5
2018-11-01 17:38:41 +00:00
Mark Goddard
9dce0488ea Merge pre-reno release notes with reno notes
Prior to the Queens release, release notes were added to the kayobe
sphinx documentation. During the Queens release cycle they were changed
to be generated via the reno tool.

This change moves the pre-Queens release notes to the reno source,
ensuring that all release notes are available in one place.

Change-Id: I9606cbe50aacc498a645bff163e3d2dafac198e3
2018-10-10 19:13:21 +01:00
Zuul
175eb3c891 Merge "Use a virtualenv for remote operations by default" 2018-10-09 16:54:27 +00:00
Zuul
ffb7e06bb8 Merge "Use readthedocs for release notes" 2018-10-09 16:34:55 +00:00
Mark Goddard
a276d1686c Support configuration of custom fluentd inputs
It is now possible to configure custom inputs for fluentd by placing files in
etc/kayobe/kolla/config/fluentd/input/ in the kayobe configuration.

Change-Id: I284e6cff0aa7ddd779530a6de2ea9f8dcdce6450
Story: 2003968
Task: 26898
2018-10-09 13:37:28 +00:00
Zuul
4f829bf6ae Merge "Add host package update to upgrade procedures" 2018-10-08 15:37:31 +00:00
Mark Goddard
ef84890798 Fix IPA image download
The IPA ramdisk and kernel images may be built or downloaded via a URL.
If the latter option is used, any images previously downloaded to
$KOLLA_CONFIG_PATH/config/ironic/ironic-agent.* would previously not be
updated if the image contents change.

This change introduces variables for setting a URL to a file containing
checksums for the images. The algorithm used to compute the checksum is
also configurable (default sha256). This allows us to ensure we are
using the correct version of the image, while avoiding an expensive few
hundred megabyte image download just to check.

If a checksum is not specified, the image will be downloaded every time
to ensure that it is up to date.

Change-Id: I8120518ed98d61f3652f5205ce7ec9f798ab2aa1
Story: 2001660
Task: 6693
2018-10-02 13:30:11 +01:00
Zuul
4b33044eb9 Merge "Update ironic IPA deployment images" 2018-10-02 11:00:51 +00:00
Mark Goddard
392f04fa63 Use readthedocs for release notes
OpenStack policy prevents non-official projects from hosting their
release notes on docs.o.o.

Change-Id: I5be1fbf6e0b9f32dff88edc3990a3da4009d1658
2018-10-02 11:07:00 +01:00
Zuul
74c9d431c9 Merge "Allow installing extra packages inside the kolla-ansible virtualenv" 2018-09-28 13:38:46 +00:00
Mark Goddard
974ec85aad Use a virtualenv for remote operations by default
The docker python module fails to install without a virtualenv with
pip10.  The following error is seen in the task Ensure docker SDK for
python is installed:

Cannot uninstall 'ipaddress'. It is a distutils installed project and
thus we cannot accurately determine which files belong to it which would
lead to only a partial uninstall

This is fixed by using a remote Python virtual environment for executing
Kayobe Ansible tasks in the default Kayobe configuration.

Change-Id: I1348e428d736f93c76316c7fb5f2708b99554eb3
Story: 2002010
Task: 19648
2018-09-27 13:31:33 +01:00
Pierre Riteau
372058c19f Allow installing extra packages inside the kolla-ansible virtualenv
It may be necessary to install extra Python packages inside the
kolla-ansible virtualenv, such as when required by Ansible plugins. For
example, using the hashi_vault lookup plugin requires the hvac Python
package to be installed.

This patch adds a kolla_ansible_venv_extra_requirements list variable
which contains Python package requirements to add to the kolla-ansible
requirements file. Its default value is an empty list.

Change-Id: Ie0541dc05e2ab94af230d0113a23c544755424c7
2018-09-27 12:20:31 +01:00
Mark Goddard
f7badb2b37 Use openstack-hosted development config
The Kayobe development configuration has moved to
openstack/kayobe-config-dev. It was previously hosted at
stackhpc/dev-kayobe-config on Github.

This change updates the Zuul configuration and development documentation
to use the new location. It also uses a location for the kayobe source
code that works when kayobe is not the repository against which the code
review is targetted. This allows us to run kayobe jobs for
kayobe-config-dev changes.

Configuration for the seed VM and seed hypervisor development
environments is not yet supported by kayobe-config-dev, so the
documentation references a branch in my personal fork on Github.

Change-Id: I621324093b8dff0ac52a648539cd91bc12da4862
2018-09-24 10:25:48 +01:00
Mark Goddard
601b94dc33 Add host package update to upgrade procedures
This is an optional step that may be desirable to perform prior to
upgrading Kolla containers.

Change-Id: Ibe30c5a252508a4aa1b24d9484456f90532b8af7
Story: 2003305
Task: 24257
2018-09-05 13:36:37 +01:00
Mark Goddard
1b5d05dc2e Update ironic IPA deployment images
This will update the the deploy_ramdisk and
deploy kernel properties of  'Driver info'
field on Ironic nodes if the locally built
or externally referenced images are updated.

Change-Id: Id3997db452dde6e6e242a9b1091cb219c53ebda1
2018-09-03 15:29:58 +01:00
Pierre Riteau
1ee04846f6 Fix command for copying the Kayobe configuration
There were two problems with this command. First, we needed to copy the
etc/kayobe directory instead of just etc, to avoid generating an extra
layer of kayobe directories. Second, its behavior was different
depending on whether the target directory already existed or not:
instead, copying files under etc/kayobe always produces a predictable
result.

Change-Id: I3923e1fad2e1e9a5b206db93d48c08545cbdccef
2018-08-31 15:18:00 +01:00
Zuul
026e57af51 Merge "Add commands to update packages on hosts" 2018-08-30 17:11:35 +00:00
Mark Goddard
491ed919d6 Add commands to update packages on hosts
Just performs a yum update.

Change-Id: I4cdc23a3e491c5a2f92e8beeb7eaebf2df818df3
Story: 2003305
Task: 24257
2018-08-23 13:40:43 +01:00
Mark Goddard
4f20a2f00f Pin Ansible Galaxy dependencies
Currently kayobe's ansible galaxy dependencies are unpinned. For
versioned roles, any new release will be picked up. For unversioned
roles, any new commit to master will be picked up. This is clearly not
ideal for stability, and we should pin these dependencies to specific
versions to avoid things changing under our feet. For unversioned roles,
we may want to consider adding versioning where we have the power to do
so.

Change-Id: Ib83a0d95b9061b3a57cb0e7c4cff3488ee076664
Story: 2003437
Task: 24633
2018-08-15 09:50:50 +01:00
Zuul
34e410dd46 Merge "Fix path to virtualenv in usage guide" 2018-08-02 20:52:17 +00:00
Mark Goddard
cc47f7d0d4 Point README and docs to official release notes
OpenStack publishes release notes for non-official projects as well as
official projects at https://docs.openstack.org/releasenotes.

Change-Id: I4b4f0f37b9341d0009b4ea8c77ec014d289cd2af
2018-08-01 19:33:25 +01:00
Mark Goddard
c852c59a51 Fix path to virtualenv in usage guide
Change-Id: Ia200efce040a009bbb35292cf846d36f2edb259b
Story: 2003107
Task: 23224
2018-07-30 09:21:42 +01:00
Zuul
10382bce9e Merge "Support forcing rebuild of deployment images" 2018-07-23 15:40:29 +00:00
Doug Szumski
6c2e68a545 Support configuring tunnel network
Support configuring a separate tunnel network for tenant
overlay network traffic.

Change-Id: I74274823d6fe3a42aabcca00c8cd20e1abb3d219
Story: 2003054
Task: 23091
2018-07-20 13:57:03 +01:00
Will Miller
2d5fd703a0 Reconcile all 'Ansible control host' references
Ensure all references to the Ansible control host are worded as such, to
ensure consistency and avoid potential confusion with the OpenStack
controllers.

Change-Id: Id92e537ccbfdd55287b8eae296f649640c70ce17
2018-07-11 17:19:18 +01:00
Kevin Tibi
fc9ef3e9d1 Fix typo doc administration
Change-Id: I755d0cf9b9302b1698c199088514a0e7242009bd
2018-07-10 17:41:10 +02:00