[ironic] add coordination backend for ironic inspector

Change-Id: Ide82b7a7fa6752b60f2c9c31cdc4c79183fc62f6
This commit is contained in:
Christian Berendt 2022-01-31 15:55:56 +01:00
parent d8b2c72fdf
commit 2edc32f2eb
4 changed files with 23 additions and 0 deletions

View File

@ -1170,6 +1170,9 @@ grafana_public_endpoint: "{{ public_protocol }}://{{ kolla_external_fqdn | put_a
ironic_internal_endpoint: "{{ internal_protocol }}://{{ ironic_internal_fqdn | put_address_in_context('url') }}:{{ ironic_api_port }}"
ironic_public_endpoint: "{{ public_protocol }}://{{ ironic_external_fqdn | put_address_in_context('url') }}:{{ ironic_api_port }}"
# Valid options are [ '', redis, etcd ]
ironic_coordination_backend: "{{ 'redis' if enable_redis|bool else 'etcd' if enable_etcd|bool else '' }}"
########
# Swift
########

View File

@ -73,3 +73,14 @@ driver = {{ ironic_inspector_pxe_filter }}
[iptables]
dnsmasq_interface = {{ ironic_dnsmasq_interface }}
{% endif %}
[coordination]
{% if ironic_coordination_backend == 'redis' %}
backend_url = {{ redis_connection_string }}
{% elif ironic_coordination_backend == 'etcd' %}
# NOTE(yoctozepto): etcd-compatible tooz drivers do not support multiple endpoints here (verified in Stein, Train)
# NOTE(yoctozepto): we must use etcd3gw (aka etcd3+http) due to issues with alternative (etcd3) and eventlet (as used by cinder)
# see https://bugs.launchpad.net/kolla-ansible/+bug/1854932
# and https://review.opendev.org/466098 for details
backend_url = etcd3+{{ etcd_protocol }}://{{ 'api' | kolla_address(groups['etcd'][0]) | put_address_in_context('url') }}:{{ etcd_client_port }}
{% endif %}

View File

@ -611,6 +611,9 @@
# List of extra kernel parameters passed to the kernel used during inspection
#ironic_inspector_kernel_cmdline_extras: []
# Valid options are [ '', redis, etcd ]
#ironic_coordination_backend: "{{ 'redis' if enable_redis|bool else 'etcd' if enable_etcd|bool else '' }}"
######################################
# Manila - Shared File Systems Options
######################################

View File

@ -0,0 +1,6 @@
---
features:
- |
Adds support for configuring a coordination backend for Ironic
Inspector via the ``ironic_coordination_backend`` variable.
Possible values are ``redis`` or ``etcd``.