1262 Commits

Author SHA1 Message Date
Zuul
fc1404861d Merge "adds firewalld configuration based on enabled services" 2022-07-29 08:31:26 +00:00
k-s-dean
8553e52acd adds firewalld configuration based on enabled services
This change introduces automated configuration of firewalld and adds
a new filter for extracting services from the project_services dict.
the filter selects any enabled services and their haproxy element
and returns them so they can be iterated over.
This commit also enables automated configuration of firewalld from enabled
openstack services and adds them to the defined zone and reloads the
system firewall.

Change-Id: Iea3680142711873984efff2b701347b6a56dd355
2022-07-27 12:28:40 +01:00
Pierre Riteau
2b5cef68d7 Support configuring prometheus fetcher for CloudKitty
Change-Id: I7d79a18599f54583ff4f38a554459fe02ada9ae7
2022-07-08 12:34:40 +02:00
Pierre Riteau
3058b5bcd7 Support configuring the CloudKitty fetcher
Change-Id: I6d9ee98912120b9ece60ee22c7b0ad71dab8ed30
2022-07-07 21:45:38 +02:00
Radosław Piliszek
72b63dfee7 Further Keystone-related cleanups
Per comments on [1].

[1] https://review.opendev.org/c/openstack/kolla-ansible/+/843727

Change-Id: I60162b54bc06e158534d29311d4474b34750c64d
2022-06-20 08:40:03 +00:00
Zuul
84ece4de0d Merge "Control Masakari monitors deploy" 2022-05-31 15:56:25 +00:00
Zuul
7ed26c8a46 Merge "Improve MariaDB restore procedure" 2022-05-31 10:18:37 +00:00
Zuul
28b4c5d35c Merge "docs: add information about development libvirt TLS certs" 2022-05-30 13:36:36 +00:00
Radosław Piliszek
42c2520144 Do not use a different port for Keystone admin endpoint
Docs and reno included.

Change-Id: I5099b08953789b280c915a6b7a22bdd4e3404076
2022-05-26 13:38:26 +00:00
Maksim Malchuk
d3dbd812c5 Control Masakari monitors deploy
Add a switches to enable/disable deploy of the Masakari monitors.

Change-Id: I3ab603f7cab7946ea8f2e063fe91190d6592066a
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2022-05-25 15:19:32 +03:00
Zuul
1aa13614d8 Merge "Delete keystone_token_provider variable" 2022-05-18 10:20:47 +00:00
Ramona Rautenberg
b3b9dff3cd Delete keystone_token_provider variable
In the last PTG it was decided to drop the keystone_token_provider variable, because there is no other option anymore.

Signed-off-by: Ramona Rautenberg <rautenberg@osism.tech>
Change-Id: I1ee2c3f9b7dbbbf4633c5874cdbb3c4f8c09e277
2022-05-17 15:53:23 +02:00
Zuul
4976bff593 Merge "Remove sanity checks" 2022-05-16 10:14:40 +00:00
Tim Beermann
591f366ed7 Remove sanity checks
"Smoke tests" for barbican, cinder, glance and keystone have been removed as discussed in PTG April 2022.

Signed-off-by: Tim Beermann <beermann@osism.tech>
Change-Id: I613287a31e0ea6aede070e7e9c519ab2f5f182bd
2022-05-13 17:41:34 +00:00
Simon Dodsley
f088b799a5 Add support for Pure Storage FlashArray backend to Cinder
Add an enable_cinder_backend_pure_iscsi and
enable_cinder_backend_pure_fc options to etc/kolla/globals.yml
to enable use of the FlashArray backend.
Update the documentation to include a section on configuring
Cinder with the FlashArray.

Implements: blueprint pure-cinder-driver
Change-Id: I464733f1322237321ed1ffff8636cf30bd1cbb38
2022-05-13 10:11:08 -04:00
Pierre Riteau
555cd39f1a Fix typos in docs
This is a follow up to I7e5c1e20c7b66b64cbd333f669ef8d8da60daaa8.

Change-Id: I11a86f59c1fb9cddde3370b544ee7bf4e8ae4fb4
2022-05-02 15:44:34 +02:00
Zuul
6b9321dc23 Merge "Multiple DHCP ranges for Ironic Inspector" 2022-05-02 10:50:39 +00:00
Zuul
756792e512 Merge "Fix formatting of code block" 2022-04-23 12:02:32 +00:00
Pierre Riteau
8c64e48298 Fix formatting of code block
The ipmi-exporter code blocks had too much indentation.

Change-Id: I2cf3ab4873d9df2dfe1375cf7e2e0e5dc6571120
2022-04-23 09:29:16 +02:00
Zuul
d1e57fedea Merge "Add doc fix for all-in-one in venv" 2022-04-22 13:31:11 +00:00
Zuul
1de1e0f36c Merge "nova: improve compute service registration failure handling" 2022-04-21 21:23:22 +00:00
Zuul
2c15d36fed Merge "Adds prometheus_scrape_interval" 2022-04-21 16:55:35 +00:00
Vladislav Belogrudov
5bcf5391bc Add doc fix for all-in-one in venv
When running in virtual environment a bootstrapping task will
install 'docker' python module in the environment. After that
prechecks and deploy phase will not find the module because
their 'ansible interpreter' is host wide. With this fix it is
advised to set an interpreter to the one in virtual environment

Closes-Bug: #1969812
Change-Id: I1bb6a3af3fa6346fff0a262e0c53d12c544f46db
2022-04-21 19:45:53 +03:00
Zuul
a4ccb37767 Merge "drop install_type from image names" 2022-04-21 13:06:26 +00:00
Vladislav Belogrudov
7a6aeff403 Fix ansible version in install command
There are no 5.* versions of ansible for CentOS 8 Stream yet.
One should use pip install 'ansible>=4,<6' according to the
current documentation.

Closes-Bug: #1969617
Change-Id: Ie4f502f955dac5ae9ee8ddb4779c2fa2e26840d9
2022-04-20 15:49:47 +03:00
Marcin Juszkiewicz
1620ab5be9 drop install_type from image names
We have only one value for install_type now and it gets removed from
image names.

Change-Id: I8bf95fd7aa9dd26b80d618ca0fcb097003b4cb0a
2022-04-20 12:29:12 +02:00
Maksim Malchuk
762aecbfae Multiple DHCP ranges for Ironic Inspector
Add a new parameter 'ironic_dnsmasq_dhcp_ranges' and enable the
configuration of the corresponding 'dhcp-range' and 'dhcp-option'
blocks in Ironic Inspector dnsmasq for multiple ranges.

The old parameters 'ironic_dnsmasq_dhcp_range' and
'ironic_dnsmasq_default_gateway' used for the only range are now
removed.

This change implements the same solution used in the TripleO several
years ago in the: Ie49b07ffe948576f5d9330cf11ee014aef4b282d

Also, this change contains: Iae15e9db0acc2ecd5b087a9ca430be948bc3e649
fix for lease time.
The value can be changed globally or per range.

Change-Id: Ib69fc0017b3bfbc8da4dfd4301710fbf88be661a
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2022-04-13 19:26:31 +00:00
Marcin Juszkiewicz
6e597e02d3 doc: do not mention install_type
Change-Id: Ia2f549ba119ac09c4d1e4279baf594a42480511f
2022-04-11 19:10:03 +02:00
Radosław Piliszek
b09be6263f Deprecate enable_ironic_ipxe
Change-Id: I2ae1a402e723cd1063618d1b9fb18f6adb27a390
2022-04-06 08:52:00 +00:00
Radosław Piliszek
e8025b3cb8 Ironic: rename containers
Change-Id: I8e4096d7136d0ce9e54f1af0bb9ba110487fb35b
2022-04-06 08:51:05 +00:00
Radosław Piliszek
9503308a87 Ironic: Support both plain PXE and iPXE
Depends-On: https://review.opendev.org/c/openstack/kolla/+/832163
Change-Id: Ia2dba1854e925041ae23c731273b810bb2d5ec30
2022-04-06 08:47:17 +00:00
Zuul
087d0e1d60 Merge "neutron: add ssh key" 2022-03-30 13:38:32 +00:00
Michal Nasiadka
7fcf3ca30b neutron: add ssh key
This key can be used by users in networking-generic-switch
scenario instead of adding cleartext password in ml2_conf.ini.

Change-Id: I10003e6526a55a97f22678ab81c411e4645c5157
2022-03-30 07:28:37 +00:00
Mark Goddard
f1d3ff11d0 nova: improve compute service registration failure handling
If any nova compute service fails to register itself, Kolla Ansible will
fail the host that queries the Nova API. This is the first compute host
in the inventory, and fails in the task:

    Waiting for nova-compute services to register themselves

Other hosts continue, often leading to further errors later on. Clearly
this is not idea.

This change modifies the behaviour to query the compute service list
until all expected hosts are present, but does not fail the querying
host if they are not. A new task is added that executes for all hosts,
and fails only those hosts that have not registered successfully.

Alternatively, to fail all hosts in a cell when any compute service
fails to register, set nova_compute_registration_fatal to true.

Change-Id: I12c1928cf1f1fb9e28f1741e7fe4968004ea1816
Closes-Bug: #1940119
2022-03-29 11:26:44 +01:00
wangxiyuan
01ed75acef Add openEuler Distro support
openEuler is the newest open source operating system, which is quite
famous and widely used in China. This patch aims to add the OS support
in kolla-ansible for the host OS.

bp: support-openeuler-os

Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/830320

Change-Id: I66dc84f02c324dbc0787ec25d4bd92ada9362e94
2022-03-28 07:54:49 +00:00
Zuul
efadc95913 Merge "designate: allow designate_ns_record to be a list" 2022-03-24 12:52:06 +00:00
Michał Nasiadka
f193d1af3e designate: allow designate_ns_record to be a list
In most real world deployments, there will be multiple backend DNS
servers, allow to specify all of them for the pool configuration.

Change-Id: Ic9737d0446a807891b429f080ae1bf048a3c8e4a
2022-03-24 08:50:52 +01:00
Mark Goddard
80b311bef7 libvirt: add nova-libvirt-cleanup command
Change Ia1239069ccee39416b20959cbabad962c56693cf added support for
running a libvirt daemon on the host, rather than using the nova_libvirt
container. It did not cover migration of existing hosts from using a
container to using a host daemon.

This change adds a kolla-ansible nova-libvirt-cleanup command which may
be used to clean up the nova_libvirt container, volumes and related
items on hosts, once it has been disabled.

The playbook assumes that compute hosts have been emptied of VMs before
it runs. A future extension could support migration of existing VMs, but
this is currently out of scope.

Change-Id: I46854ed7eaf1d5b5e3ccd8531c963427848bdc99
2022-03-21 11:54:54 +00:00
Mark Goddard
4e41acd8f0 libvirt: make it possible to run libvirt on the host
In some cases it may be desirable to run the libvirt daemon on the host.
For example, when mixing host and container OS distributions or
versions.

This change makes it possible to disable the nova_libvirt container, by
setting enable_nova_libvirt_container to false. The default values of
some Docker mounts and other paths have been updated to point to default
host directories rather than Docker volumes when using a host libvirt
daemon.

This change does not handle migration of existing systems from using
a nova_libvirt container to libvirt on the host.

Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/830504

Change-Id: Ia1239069ccee39416b20959cbabad962c56693cf
2022-03-21 11:54:31 +00:00
Zuul
33415ed93e Merge "libvirt: support SASL authentication" 2022-03-12 16:46:54 +00:00
Zuul
f56f070130 Merge "docs: state supported Python version" 2022-03-11 10:17:39 +00:00
Mark Goddard
d2d4b53d47 libvirt: support SASL authentication
In Kolla Ansible OpenStack deployments, by default, libvirt is
configured to allow read-write access via an unauthenticated,
unencrypted TCP connection, using the internal API network.  This is to
facilitate migration between hosts.

By default, Kolla Ansible does not use encryption for services on the
internal network (and did not support it until Ussuri). However, most
other services on the internal network are at least authenticated
(usually via passwords), ensuring that they cannot be used by anyone
with access to the network, unless they have credentials.

The main issue here is the lack of authentication. Any client with
access to the internal network is able to connect to the libvirt TCP
port and make arbitrary changes to the hypervisor. This could include
starting a VM, modifying an existing VM, etc. Given the flexibility of
the domain options, it could be seen as equivalent to having root access
to the hypervisor.

Kolla Ansible supports libvirt TLS [1] since the Train release, using
client and server certificates for mutual authentication and encryption.
However, this feature is not enabled by default, and requires
certificates to be generated for each compute host.

This change adds support for libvirt SASL authentication, and enables it
by default. This provides base level of security. Deployments requiring
further security should use libvirt TLS.

[1] https://docs.openstack.org/kolla-ansible/latest/reference/compute/libvirt-guide.html#libvirt-tls

Depends-On: https://review.opendev.org/c/openstack/kolla/+/833021
Closes-Bug: #1964013
Change-Id: Ia91ceeb609e4cdb144433122b443028c0278b71e
2022-03-10 16:57:16 +00:00
Adrian Andreias
78b18ffc0e docs: state supported Python version
Closes-Bug: #1880290
Change-Id: If9e66c505ab1672ae6b7639872a626ad5a9408ab
2022-03-10 10:52:44 +00:00
Zuul
68bc4f8f52 Merge "Enable Ironic iPXE support by default" 2022-03-03 16:40:09 +00:00
Michal Nasiadka
7080ccfc3d Add Rocky Linux support as Host OS
Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/831642
Change-Id: I70dcd2d0cade52a23b3e219b7e0aaa31193ec938
2022-03-03 09:59:16 +00:00
Radosław Piliszek
baeca81a43 Enable Ironic iPXE support by default
Ironic has changed the default PXE to be iPXE (as opposed to plain
PXE) in Yoga. Kolla Ansible supports either one or the other and
we tend to stick to upstream defaults so this change enables
iPXE instead of plain PXE - by default - the users are allowed
to change back and they need to take one other action so it is
good to remind them via upgrade notes either way.

Change-Id: If14ec83670d2212906c6e22c7013c475f3c4748a
2022-02-25 23:02:42 +01:00
Zuul
8ff7b51fef Merge "Install openstack.kolla collection" 2022-02-21 21:51:10 +00:00
Mark Goddard
f63f1f3082 Install openstack.kolla collection
This change adds an Ansible Galaxy requirements file including the
openstack.kolla collection. A new 'kolla-ansible install-deps' command
is provided to install the requirements.

With the new collection in place, this change also switches to using the
baremetal role from the openstack.kolla collection, and removes the
baremetal role from this repository.

Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/820168

Change-Id: I9708f57b4bb9d64eb4903c253684fe0d9147bd4a
2022-02-21 14:26:48 +00:00
Zuul
83fa907961 Merge "Add support for VMware First Class Disk (FCD)" 2022-02-21 11:07:00 +00:00
Zuul
b668e27356 Merge "Add support for VMware NSXP" 2022-02-18 12:04:41 +00:00