Commit Graph

58 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
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
Zuul ad1a107fa5 Merge "Support OpenSearch configuration" 2022-12-13 12:31:34 +00:00
Pierre Riteau 12ab39568e Support OpenSearch configuration
Change-Id: I6af90d02e619d85b25ad364dc17d411008fd792e
2022-12-13 09:50:21 +00:00
Pierre Riteau 59aaec13f1 Support copying nova_compute Kolla configuration
This folder can be used to store a Nova release file [1] specific to
nova_compute containers.

[1] https://opendev.org/openstack/nova/src/branch/master/etc/nova/release.sample

Change-Id: I2f4f02dbd6834ffd0fa5189b818bdc91a5c168a2
2022-11-15 13:21:36 +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
Pierre Riteau 878fe5728b Add support for custom Aodh configuration
Change-Id: I19ef5a46dccacc00db495993cc744938921996a1
Story: 2008019
Task: 40671
2020-08-21 20:54:21 +00: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
Doug Szumski 00002f25e1 Add support for custom Elasticsearch config
Elasticsearch Curator will be driven by custom config. This adds
support in Kayobe for managing it.

Change-Id: Ie739ffbd67c6c26175f152449a7b7276ffa87824
Story: 2006852
Task: 37443
2019-12-09 12:07:39 +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
Zuul 2002cf6019 Merge "Support customising refactored HAProxy config" 2019-07-08 16:17:11 +00:00
Zuul 7bb8c80de5 Merge "Support customising Prometheus config" 2019-07-08 16:14:15 +00:00
Zuul 3e99fa2f31 Merge "Add support for custom Gnocchi configuration" 2019-07-03 19:13:07 +00:00
Zuul 84712dd314 Merge "Provide keystone.conf to kolla-ansible by default" 2019-07-03 14:19:13 +00:00
Pierre Riteau 77170a8547 Support customising refactored HAProxy config
Change-Id: I435ab9f88f73a73d7dc02f604f05e6f6def02eb5
2019-07-01 19:51:28 +01: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 ec9b482651 Provide keystone.conf to kolla-ansible by default
Commit d8ee0fa027 introduced the variable
kolla_enable_keystone without setting a default value and used it to
check whether to template and provide keystone.conf to kolla-ansible,
unlike the extended keystone configuration which was always copied. This
resulted in non-intuitive behaviour if kolla_enable_keystone wasn't
explicitly set by the operator.

This commit sets kolla_enable_keystone to true by default, which matches
the default in kolla-ansible, and uses it instead of hardcoded true
values.

Change-Id: Id090348a6f22f251555fa286a7d24923087122a9
Story: 2005930
Task: 34273
2019-06-21 15:55:46 +01:00
Doug Szumski 13350e3f56 Support customising Prometheus config
Kolla Ansible supports customising Prometheus config files.
This commit allows Kayobe to take advantage of that.

Story: 2005508
Task: 30617
Change-Id: I9fe28a658dc35adb5358d9a3a96bda9245404257
2019-06-10 15:31:15 +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
Zuul c020751a5d Merge "Support for Ceph and Swift storage networks, and improvements to Swift" 2019-05-15 13:48:05 +00:00
Scott Solkhon 6496cfc0ba Support for Ceph and Swift storage networks, and improvements to Swift
In a deployment that has both Ceph or Swift deployed it can be useful to seperate the network traffic.
This change adds support for dedicated storage networks for both Ceph and Swift. By default, the storage hosts are
attached to the following networks:

* Overcloud admin network
* Internal network
* Storage network
* Storage management network

This adds four additional networks, which can be used to seperate the storage network traffic as follows:

* Ceph storage network (ceph_storage_net_name) is used to carry Ceph storage
  data traffic. Defaults to the storage network (storage_net_name).
* Ceph storage management network (ceph_storage_mgmt_net_name) is used to carry
  storage management traffic. Defaults to the storage management network
  (storage_mgmt_net_name).
* Swift storage network (swift_storage_net_name) is used to carry Swift storage data
  traffic. Defaults to the storage network (storage_net_name).
* Swift storage replication network (swift_storage_replication_net_name) is used to
  carry storage management traffic. Defaults to the storage management network
  (storage_mgmt_net_name).

This change also includes several improvements to Swift device management and ring generation.

The device management and ring generation are now separate, with device management occurring during
'kayobe overcloud host configure', and ring generation during a new command, 'kayobe overcloud swift rings generate'.

For the device management, we now use standard Ansible modules rather than commands for device preparation.
File system labels can be configured for each device individually.

For ring generation, all commands are run on a single host, by default a host in the Swift storage group.
A python script runs in one of the kolla Swift containers, which consumes an autogenerated YAML config file that defines
the layout of the rings.

Change-Id: Iedc7535532d706f02d710de69b422abf2f6fe54c
2019-04-24 12:40:20 +00:00
Doug Szumski 44430a4242 Support custom keepalived config
Allow users to use the custom config mechanism for Keepalived
provided by Kolla Ansible.

Change-Id: I052bd8283944197cd2b13747e7a7c32fbe06c045
Story: 2005211
Task: 29989
2019-04-01 13:42:32 +00:00
Doug Szumski d935f55f7c Support custom HAProxy config
Note that in the Stein release of Kolla-Ansible haproxy.cfg was refactored and
this override will no longer work as expected.

Change-Id: Iff5b9f2a33ad2320f62fae7328c097069cb4f416
2019-02-05 12:17:09 +00:00
Zuul 5bd744c869 Merge "Add 'octavia' in to the list of paths to search for custom configs" 2018-11-16 18:37:50 +00:00
Zuul 0bcebebde6 Merge "Support configuration of custom fluentd inputs" 2018-11-09 17:25:27 +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
Nick Jones 43b6276f36 Add 'octavia' in to the list of paths to search for custom configs
As it says on the tin. It's useful to add support for copying custom
configuration for Octavia into place via Kayobe, specifically for files
that need to be encrypted such as private certificates.

TrivialFix

Change-Id: I026513bf3d7e4f871c83efd0740f75191ffaa969
2018-11-05 14:21: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
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
Doug Szumski 53ee8293cd Support custom config for Barbican
Story: 2003880
Task: 26741
Change-Id: Ia200a5b0de42963643980bdfd3677e3fca833850
2018-09-27 11:12:18 +01:00
Doug Szumski d2d9f0d6b7 Add support for deploying Apache Storm
Change-Id: I49afdddb8ba2f9cb4a08071c6acee3a3efb03305
Story: 2001627
Task: 6707
2018-09-14 10:39:50 +01:00
Doug Szumski d8a300cc24 Add support for deploying Monasca
Change-Id: I63298ae65b9e7bfae340b5448107540a3e518496
Story: 2001627
Task: 6704
2018-09-12 15:43:54 +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
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
Mark Goddard 07ef585ca5 Make kolla-openstack molecule test pass 2018-02-21 10:33:07 +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