Commit Graph

61 Commits

Author SHA1 Message Date
Mark Goddard 428ef10fa4 Use merge_configs and merge_yaml to generate Kolla custom config
This patch adds new functionality - merging base & environment specific
kolla config. This allows you to place common settings in the base
configuration and only keep environment specific settings in the
environment directories.

Change-Id: Id4588f4529a4522e68e22ce58711cb927fa68a9d
Story: 2002009
Task: 42903
2023-05-30 16:47:14 +00:00
Maksim Malchuk 25fe761e62 Adds support for custom Multipathd configuration.
Change-Id: Ia956cfea7e7bfe47bf1e73c9edcac602caf45579
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-04-13 23:56:01 +03:00
Pierre Riteau f6660bbff8 Remove support for Monasca and its dependencies
This follows removal of support from Kolla Ansible. This also removes
support for configuring Grafana with overcloud post configure.

Change-Id: I8102fafb00db178f1ae6801d37c43a39033cbfe6
2022-12-13 14:32:33 +01:00
Mark Goddard c4b74f4801 libvirt: deploy libvirt on the host
In some cases it may be desirable to run libvirt daemon on the host. For
example, when mixing host and container OS distributions.

This change makes it possible to disable the nova_libvirt container, by
setting kolla_enable_nova_libvirt_container to false.

The stackhpc.libvirt-host role is used in order to install and configure
a libvirt daemon on compute hosts when
kolla_enable_nova_libvirt_container is false.

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/825357
Depends-On: https://review.opendev.org/c/openstack/kayobe-config-dev/+/829225
Depends-On: https://github.com/stackhpc/ansible-role-libvirt-host/pull/51

Story: 2009858
Task: 44495

Change-Id: I73fef63fb886a9d543d2f4231fb009523495edb3
2022-03-24 13:44:48 +00:00
Jakub Darmach 35e0d76a96 Support for untemplated dirs in kolla config
Variable untemplated_dirs has been added to allow for
defining directories under kayobe/kolla/config which should be copied
instead of templated by kolla-openstack role.

This is needed to support custom themes for horizon -
change If9982c8e18be31772cb031ef72b7eebd4d768be5

Change-Id: I350f58c8a82f0f31608b34054e804c5c198d6806
2022-01-27 19:46:45 +00:00
Maksim Malchuk e87fbf37a8 Adds support for custom Placement configuration.
Change-Id: Icb02cffe04d84c6d29f3f0c3b4af540a4ffe631d
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2021-12-19 17:37:27 +03:00
Mark Goddard c847ef9157 Fix copying Swift ring files
Ring files are binary formatted and should not be templated. Attempting
to template them causes an error such as the following:

    Template source files must be utf-8 encoded

This change fixes the issue by implementing support for configuration
files that are listed as 'untemplated'.

Change-Id: I9c6b0d9d5e13e8b82ebb8e8a3a0f432efb865e28
Story: 2007297
Task: 38774
2020-12-15 16:55:31 +00:00
Michal Nasiadka 0f25900a43 Add missing barbican.conf support
Story: 2008170
Task: 40925

Change-Id: I3014983f481a5dca7c93e140b3e10caa5d537669
2020-09-23 19:17:51 +00:00
Pierre Riteau 878fe5728b Add support for custom Aodh configuration
Change-Id: I19ef5a46dccacc00db495993cc744938921996a1
Story: 2008019
Task: 40671
2020-08-21 20:54:21 +00:00
Pierre Riteau f40dde18df Fix ansible-lint after upgrade to 4.3.1
- Skip rule 106 which fails due to the hyphen in "kolla-openstack"
- Fix code failing "File permissions not mentioned" rule

Change-Id: I7ce8a591b4e1eeef749c439e1140ecfb74dcb40e
2020-08-21 14:48:07 +02:00
Mark Goddard bc32529008 Add support for custom Masakari configuration
Change-Id: Ibcf12f4d80bd9744867688ba986cd59be82f3e5a
Story: 2007969
Task: 40470
2020-08-05 09:28:25 +01:00
Radosław Piliszek e7d7daa531 Remove ceph block device support
It leaves certain ceph mentions in globals.yml.j2 as it needs
syncing with kolla-ansible contents anyways
(these are all comments).

Change-Id: I05e9c6223583e9bb5dc0020edc0b56990275093c
Story: 2007295
Task: 38766
2020-03-18 10:28:33 +00:00
Mark Goddard e93bbd9ed5 Use mariabackup for database backups
Kolla ansible switched its database backup support to mariabackup from
xtrabackup due to incompatibilities. See
https://bugs.launchpad.net/kolla/+bug/1843043 for details.

Change-Id: Ib95771f09fd6d5e71a2af471de47f811e1cab88b
Related-Bug: #1843043
Story: 2006952
Task: 37634
2019-12-11 17:16:59 +00:00
Zuul 81912ab534 Merge "Fix inspector iPXE boot with UEFI compute nodes" 2019-08-21 22:00:56 +00:00
Pierre Riteau ffb7f96e16 Add support for custom CloudKitty configuration
Change-Id: I0c0589387da53458f41df280dff0179715448aaa
Story: 2006292
Task: 36003
2019-07-27 15:58:43 +02:00
Mark Goddard 0ee55e19fa Fix inspector iPXE boot with UEFI compute nodes
The IPA ramdisk fails to boot on UEFI compute nodes with iPXE. We see
the following error on the console, followed by a kernel panic:

Fix kernel panic-not syncing: VFS: unable to mount root fs on unknown
block(0,0)

The cause is the lack of an initrd=ironic-agent.initramfs kernel
argument in inspector.ipxe.

The initrd argument is present in the kolla-ansible version of
inspector.ipxe, and now contains all parameters that we need (since
Rocky), so this change simply removes our custom template, and passes
through the extra kernel argument option configuration value.

Story: 2006214
Task: 35804

Story: 2006213
Task: 35803

Depends-On: https://review.opendev.org/670566
Change-Id: I8a103b7c6d3dd1f0433f922ae90deae9b92c0c78
2019-07-15 09:31:03 +01:00
Zuul 85330b9166 Merge "Add support for custom Ceilometer configuration" 2019-07-12 21:28:40 +00:00
Pierre Riteau 4667fd4e54 Add support for overriding OpenStack configuration globally
This commit allows Kayobe to generate a global.conf file for use by
Kolla Ansible to override configuration across all OpenStack services.

Change-Id: I6d144a945e1cde06fa9fdd03c30102458c0c9f8d
Story: 2005904
Task: 34153
2019-07-11 16:29:14 +00:00
Zuul 3e99fa2f31 Merge "Add support for custom Gnocchi configuration" 2019-07-03 19:13:07 +00:00
Pierre Riteau 58f856fd00 Add support for custom Ceilometer configuration
Change-Id: I0a9e1a3b878231f9ce7bf295b5526c9cfabbbf9e
Story: 2005811
Task: 33551
2019-06-25 10:44:57 +01:00
Pierre Riteau 49d4d7be79 Add support for custom Blazar configuration
Change-Id: I00ee10bdc7f8c1b6ab8576115c757e27b6c2c397
Story: 2005809
Task: 33549
2019-05-31 16:55:10 +01:00
Pierre Riteau 603527c215 Add support for custom Gnocchi configuration
Change-Id: I06c07108693766fd436a60a39f270c116931941e
Story: 2005810
Task: 33550
2019-05-31 16:29:54 +01:00
Mark Goddard e96179921f Add commands for database backup and recovery
Uses the support [1] for database backups added to Kolla Ansible in the
Stein release.

Adds the following new commands:

kayobe overcloud database backup [--incremental]
kayobe overcloud database recover [--force-recovery-host <host>]

The recovery command is for recovering a clustered database that has
lost quorum.

[1] https://docs.openstack.org/kolla-ansible/latest/admin/mariadb-backup-and-restore.html

Change-Id: Ie16354cd01ea7dd83cd3d4058dd8451b8387600b
Story: 2005015
Task: 29493
2019-05-23 10:48:04 +01:00
Ross Martyn d8ee0fa027 Multiple updates for Kayobe
---

1. Gather facts for localhost in kolla-ansible.yml
2. Don't include unconfigured networks in network_interfaces
3. Added Keystone configuration extra config merge

---

1. Facts are necessary for the kolla-ansible role,
which references the ansible_user_uid fact

2. It is possible to skip configuring a network,
by setting its name to None

This is done in networks.yml as follows:

admin_oc_net_name:

Currently, these networks may still be included in the 'network_interfaces'
list for each host, despite the fact that they are not in use.

A classic example is when ironic is not enabled, it is currently still
necessary to define provisioning and cleaning networks.

This change avoids including any networks that have their name set to None
in network_interfaces.

3. Added support for Keystone custom configuration

Added tests and documentation to add support for keystone extra configuration

Co-Authored-By: Mark Goddard <mark@stackhpc.com

Change-Id: Iaa304221b8093ac71f9cdbb23edc84d1517578da
2019-05-20 15:30:07 +01:00
Zuul a3c1034ffd Merge "Add support for a custom octavia.conf file" 2018-11-27 17:04:42 +00:00
Ross Martyn 46e40301f8 Enable manila extra config merge #28058
This commit enables the merge of additional manila.conf
as seen with the other projects.

Change-Id: Ia2209a9c82215e49f1ef5a79ecafbebf2b204627
Closes-Bug: 28058
2018-11-23 17:37:24 +00:00
Nick Jones 3d1018dea9
Add support for a custom octavia.conf file
Kayobe should be able to handle extra configuration options in Octavia's
main configuration file, in a similar fashion to other services.  This
commit adds support for just that.

TrivialFix

Change-Id: Ibd91a90a5278bcd8963fb06874a74f71b1882d89
2018-11-22 18:55:54 +00:00
Zuul 08937516d4 Merge "Use kolla variable to set inspector DHCP config" 2018-11-06 10:41:01 +00:00
Mark Goddard 5782bbc6ef Use kolla variable to set inspector DHCP config
Fixes an issue with ironic prechecks, which now require
ironic_dnsmasq_dhcp_range to be set when ironic is enabled.

Also uses the new kolla variable ironic_dnsmasq_default_gateway to
configure the gateway for the inspection network.

These changes mean that we can drop our custom override of
ironic-dnsmasq.conf, since it now matches the file in kolla ansible.

This change depends on the Rocky release of Kolla Ansible.

Change-Id: I0b2e094904772fc6e14f1916e20ef207161ec001
2018-11-06 08:05:53 +00:00
Zuul b0f726a630 Merge "Fix IPA image download" 2018-10-08 15:37:29 +00:00
Doug Szumski 89560dd65f Remove extra configuration for InfluxDB
InfluxDB config file merging isn't supported in Kolla-Ansible because
it uses 'nested sections' which aren't supported by merge_configs. If
no override file is specified, Kayobe will write out an empty config
file which will then be used as the InfluxDB config file, breaking
InfluxDB. To prevent that happening this change removes the extra
config in Kayobe. It also fixes the directory to which the 'glob'
collected config is copied to, as Kolla-Ansible doesn't look for
Influxdb config files in the influxdb folder.

Change-Id: Iee4b7987934045f0355b4a87cebaebc1aa2bbe77
Story: 2003951
Task: 26868
2018-10-03 13:59:31 +01: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
Pierre Riteau ea565393a5 Fix typos in task names
Change-Id: I4e9030c7786e8c164e83d2d1d56ac3b362597f67
2018-09-28 18:15:45 +01:00
Will Szumski 5e3986b88f Template inspector.ipxe
This adds `kolla_inspector_extra_kernel_options` to the
inspector.ipxe boot script. This is necessary to get the
inspector to collect the necessary LLDP data,
extra hardware data, etc. that is required for various
introspection rules to function correctly.

Change-Id: Ie7d6e1f12fb438e3b7e2c2a9de3ad8853947bee0
2018-08-06 10:05:31 +01:00
Doug Szumski 0353dba39a Add support for configuring MariaDB
This enables:

* Disabling MariaDB if external MariaDB is used
* Merging additional configuration with the default Kolla
  provided configuration for MariaDB

Story: 2002704
Task: 22545
Change-Id: I345f56d50dd64b516d563a025ec877bc4a4034e1
2018-06-27 13:42:46 +01:00
Will Szumski d4a0da9960 create parent directories for extra config files
TrivialFix

Change-Id: I022afa3b5cf489eb43e85d58de1009ef8ddb7ded
2018-06-20 17:13:17 +01:00
Mark Goddard ac93b8e2e2 Fix yamllint issues in kolla-openstack role
Change-Id: I01daebb219a7e1c7ac0803db17efc14e3173561d
2018-05-16 17:45:36 +01:00
Doug Szumski e7b51de460 Add support for configuring InfluxDB
Required to use a vintage version of InfluxDB with a different
config file format.

Task: 6700
Story: 2001627
Change-Id: I91353bc70b1d2a11827ead1dee43aa19e91dc1bb
2018-03-22 17:17:18 +00:00
Doug Szumski 7f7d2f0dea Add support for deploying Apache Kafka
This change supports deploying Apache Kafka.

Depends-On: Iab8d200c2450238f3c0c708d1f4184490f6e6284
for support in Kolla-Ansible.
Task: 6697
Story: 2001627

Change-Id: I22c79f75e9cfed647c03216b94bab5ee0790cbf2
2018-03-19 14:21:23 +00:00
Doug Szumski 87b458c8cf Add support for deploying Zookeeper
Previously reviewed here:

https://github.com/stackhpc/kayobe/pull/136

Change-Id: I100a649f9bd659dde8a68684303c4eb4f654414d
Task: 6696
Story: 2001627
2018-03-13 16:58:12 +00:00
Kevin TIBI c77ac65deb Add designate config override 2018-02-20 13:20:23 +01:00
Doug Szumski 59c00eb579
Merge pull request #109 from stackhpc/feature/support_grafana
Add support for configuring Grafana
2018-01-12 14:39:57 +00:00
Doug Szumski df9fc0a415 Add support for configuring Grafana
As per the Kolla project, this is disabled by default.
2018-01-12 14:36:54 +00:00
Kevin TIBI 2fafff1d68 Add extra conf for cinder and ceph 2018-01-11 17:33:07 +01:00
Mark Goddard e83e2e2d09
Merge pull request #74 from ktibi/add_ldap_keystone
add ldap conf for keystone
2017-11-17 10:18:17 +00:00
Kevin TIBI bdb90c0ed9 add ldap conf for keystone and horizon 2017-11-17 10:13:40 +00:00
Mark Goddard 8cfa1da254 Add heat configuration mk2 2017-11-16 16:59:04 +00:00
Mark Goddard 5563c665c0 Don't overwrite custom kolla-ansible configuration files, merge them
Previously, if a user provided a custom neutron ML2 configuration file in
/home/stackhpc-mark/kayobe/src/kayobe-config/etc/kayobe/neutron/ml2_conf.ini, it would overwrite the options set by
kayobe. This change applies the 'ignore' rule when copying custom config files,
as well as when deleting them. This works because we read in the contents of
these files and append it to kayobe's own configuration.
2017-11-02 16:39:24 +00:00
Mark Goddard d440e8e3c0 Rework custom kolla-ansible configuration
Supports removal of custom config files in $KAYOBE_CONFIG_PATH/kolla/config/, and
adds support for ironic, keystone, magnum, murano, sahara, and swift custom config.
2017-10-18 12:40:02 +01:00
Mark Goddard 9601159fe7 Add support for configuration of custom fluentd filters
These may be placed in $KAYOBE_CONFIG_PATH/kolla/config/fluentd/filter.
2017-10-17 16:31:48 +01:00