Updates the HA section to account for the change to quorum queues and
streams by default.
Also adds a note to the SLURP section as it's not needed for Epoxy.
Change-Id: Id4a3b4f3934622572c8493678f109fa67ccfdec6
We will be upgrading RabbitMQ to version 4.0 in Epoxy. This will not
work without quorum queues being enabled.
Change-Id: Ic6ad64bf8c62bbff175e15029eb121814032c40e
In case of rabbitmq container is unhealthy
let's use `ss` command instead of `netstat` as
``netstat`` is not present in distros anymore and
in containers we already have iproute2 [debian/ubuntu]
and iproute [rhel based] package installed.
[1] https://zuul.opendev.org/t/openstack/build/c70df1ecb52841579207c26cdc159327
+ echo 'rabbitmq - netstat -an'
rabbitmq - netstat -an
+ sudo docker exec rabbitmq netstat -an
OCI runtime exec failed: exec failed: unable to start container process: exec: "netstat": executable file not found in $PATH: unknown
Change-Id: I8417545735ea02d14dc1f83e18aa75b94213f814
The global configuration of rabbit_qos_prefetch_count = 1
in oslo.messaging is a deliberate choice that balances
compatibility, fairness, and reliability across all
OpenStack services.
While some services (particularly those using quorum queues)
could theoretically benefit from a higher or even unlimited
prefetch count for performance reasons, this is not universally
safe. Specifically, RabbitMQ stream queues - which are used in
certain OpenStack components do not support a prefetch_count of
0. Setting this value to 0 would result in runtime errors
or stalls, as the stream protocol requires a positive credit
window to function properly. Oslo.messaging enforces this by
raising an error if prefetch_count = 0 is set while using stream
queues.
A value of 1 is the lowest legal and universally compatible
setting. It works safely with both stream and quorum queues.
It also improves fairness in message distribution across worker
processes. In distributed services like Nova, Neutron, or
Cinder, this helps avoid uneven load where one worker might
prefetch many messages while others remain idle.
A low prefetch count ensures that messages are pulled only
when the worker is ready, promoting better load balancing and
more predictable performance.
Although a higher prefetch value could increase throughput in
certain scenarios, it comes at the cost of memory usage, risk
of overloading specific nodes, and potential starvation of
others. Until oslo.messaging supports queue-type-specific or
per-service tuning, the value of 1 remains the safest and
most predictable option that works well in mixed OpenStack
environments.
In summary, rabbit_qos_prefetch_count = 1 is not about
optimizing raw throughput for any one service, but about
ensuring stable, fair, and reliable behavior across all
services that rely on oslo.messaging, regardless of the queue
type or broker backend used.
Change-Id: I541f704bfa2e98068096331afbdb591659cbc40b
This change improves the configuration of Ironic's pin_release_version setting
by:
1. Renaming the variable from openstack_previous_release_name to
ironic_pin_release_version to better reflect its purpose
2. Making the setting optional by default
3. Adding proper documentation explaining when to use this setting
See: https://docs.openstack.org/ironic/latest/configuration/config.html#DEFAULT.pin_release_version
Change-Id: Iaecc2a5999ff1dbc5abf56d400f9b9ac5293d1d7
Move from APIClient to PodmanClient and DockerClient clients.
Signed-off-by: Roman Krček <roman.krcek@tietoevry.com>
Change-Id: I6c5734b6fff1bd42929851a263620bb4d959ac25
Follow up to I93bbaa61b2d8b5cb0d1a11783086b37a860173b6 which
used a path that did not exist in the ironic-inspector
container.
Change-Id: I52fc5656d07c2586cf8f184183465f5f9af744de
Not needed inside the container, as firewalld runs on the host.
It was failing bifrost deploy jobs on Rocky.
Make directory creation idempotent during bootstrap.
Fix Bifrost tests by using python-ironicclient instead of python-openstackclient, which is not installed in the container.
Change-Id: I5b85efe655978214ad02abf3cda4c4d2b9649add
Kolla volumes do not have assigned any labels, that makes
identification and filtering for kolla specific volumes hard.
This change allows for easier volume management.
Closes-bug: #1630545
Change-Id: I6b536f73433cfc64881ac66e53aa0a5eed709ce6
Signed-off-by: Marek Buch <marek.buch@tietoevry.com>
4 exporters prometheus-cadvisor, prometheus-elasticsearch-exporter,
prometheus-memcached-exporter and prometheus-node-exporter templates
JSON object for copying CA into containers in wrong JSON array.
Corrected this by moving the JSON object templating from
``permissions`` to ``config_files``.
Closes-Bug: #2104253
Change-Id: Ib633667ccb025c87da237894f0c9a5d793bc62f8