From 091d93ea4521dae65a1676be0812157a1b25622f Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Fri, 19 Dec 2025 17:43:37 +0100 Subject: [PATCH 1/6] opensearch: Fix repository name Change-Id: If59a55b758f48b7b89beb3b0dd94f1b8002cee73 Signed-off-by: Pierre Riteau --- kolla/template/repos.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kolla/template/repos.yaml b/kolla/template/repos.yaml index 7d9d7ec71a..3f0246c9cf 100644 --- a/kolla/template/repos.yaml +++ b/kolla/template/repos.yaml @@ -160,7 +160,7 @@ rpm: baseurl: "https://artifacts.opensearch.org/releases/bundle/opensearch/3.x/yum" gpgkey: "https://artifacts.opensearch.org/publickeys/opensearch-release.pgp" repo_gpgcheck: 1 - name: "opensearch32.x" + name: "opensearch-3.x" opensearch-dashboards: baseurl: "https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/3.x/yum" gpgkey: "https://artifacts.opensearch.org/publickeys/opensearch-release.pgp" From e63296bdb4b4045758c2a72b93f6bb05d3acd33c Mon Sep 17 00:00:00 2001 From: Michael Still Date: Thu, 15 Jan 2026 09:28:13 +1100 Subject: [PATCH 2/6] Re-enable SPICE support on Debian. The move to Debian Trixie for Kolla master accidentally broke SPICE consoles for Nova (both Horizon and spice-direct). This is because Debian and Ubuntu now package the SPICE support in a separate package. Without this package, an attempt to start an instance in Nova requiring SPICE will result in messages like this in the nova-libvirt logs: libvirt.libvirtError: unsupported configuration: spice graphics are not supported with this QEMU And the instance will enter an error state. The fix is to install the `qemu-system-modules-spice` package as well in the nova-libvirt image. This re-arrangement of packages does not affect Debian Bookworm unless backports are explicitly enabled later. Closes-Bug: #2138186 Change-Id: Ib4ced4a04353b9c11c6f0abb7cfa91001b239e53 Signed-off-by: Michael Still --- docker/nova/nova-libvirt/Dockerfile.j2 | 1 + .../notes/debian-trixie-spice-814929ed1efbcad1.yaml | 8 ++++++++ 2 files changed, 9 insertions(+) create mode 100644 releasenotes/notes/debian-trixie-spice-814929ed1efbcad1.yaml diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2 index d65d315841..88e4a52d6e 100644 --- a/docker/nova/nova-libvirt/Dockerfile.j2 +++ b/docker/nova/nova-libvirt/Dockerfile.j2 @@ -54,6 +54,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build 'python3-rbd', 'qemu-block-extra', 'qemu-system', + 'qemu-system-modules-spice', 'qemu-utils', 'sasl2-bin', 'swtpm', diff --git a/releasenotes/notes/debian-trixie-spice-814929ed1efbcad1.yaml b/releasenotes/notes/debian-trixie-spice-814929ed1efbcad1.yaml new file mode 100644 index 0000000000..eca8927dd0 --- /dev/null +++ b/releasenotes/notes/debian-trixie-spice-814929ed1efbcad1.yaml @@ -0,0 +1,8 @@ +--- +fixes: + - | + Debian Trixie container images require the additional + qemu-system-modules-spice operating system package for SPICE consoles + to function correctly. This package has therefore been added + to the nova-libvirt container build. Further details are available in + the bug report at `LP#2138186 `__. From 9805dffa61c7c1582ef7f7307d8475972dd9b515 Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Wed, 21 Jan 2026 09:13:07 +0100 Subject: [PATCH 3/6] Remove remaining mentions of Docker Hub Change-Id: I76f91c0f59a2a623308267afa7810314294fa064 Signed-off-by: Pierre Riteau --- README.rst | 10 +++------- doc/source/contributor/release-management.rst | 2 +- kolla/common/config.py | 4 +--- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/README.rst b/README.rst index a8cf66238f..87b904a01f 100644 --- a/README.rst +++ b/README.rst @@ -55,13 +55,9 @@ are built by the Kolla project maintainers. A detailed process for contributing to the images can be found in the `image building guide `__. -The Kolla developers build images in the `kolla` namespace for every tagged -release. - -You can view the available images on `Docker Hub -`__ or with the Docker CLI:: - - $ sudo docker search kolla +The Kolla developers publish images in the Quay.io `openstack.kolla` namespace +for every tagged release. You can view the available images on `Quay.io +`__. OpenStack services ------------------ diff --git a/doc/source/contributor/release-management.rst b/doc/source/contributor/release-management.rst index 441bf39077..91f483e38c 100644 --- a/doc/source/contributor/release-management.rst +++ b/doc/source/contributor/release-management.rst @@ -473,7 +473,7 @@ After a branch enters EM, we typically do the following: * stop backporting fixes to the branch by default. Important fixes or those requested by community members may be merged if deemed appropriate -* stop publishing images to Dockerhub +* stop publishing images to Quay.io * stop actively maintaining CI End of Life (EOL) diff --git a/kolla/common/config.py b/kolla/common/config.py index 9999393010..682f1fe0bf 100644 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -202,9 +202,7 @@ cfg.MultiOpt('regex', types.String(), positional=True, required=False, help=('Build only images matching regex and its' ' dependencies')), - cfg.StrOpt('registry', - help=('The container image registry host. The default registry' - ' host is Docker Hub')), + cfg.StrOpt('registry', help='The container image registry host'), cfg.StrOpt('save-dependency', help=('Path to the file to store the docker image' ' dependency in Graphviz dot format')), From 1a3987372c857f8ca5e4ecd9c4be7b617df0e758 Mon Sep 17 00:00:00 2001 From: "Dr. Jens Harbott" Date: Sat, 10 Jan 2026 13:40:08 +0100 Subject: [PATCH 4/6] Update README with new mission statement We have said for a long time that the images that the project produces are only meant for testing purposes, amend the documentation to be more explicit about it. Further changes: - Make the wording respect both Docker and Podman as container engines - Update outdated information - Add a release note stating the same Signed-off-by: Dr. Jens Harbott Change-Id: Ia04afe6387f94e33ca087dcf9d369ef22b8e8f28 --- README.rst | 70 ++++++++----------- kolla/common/config.py | 3 - .../notes/image-purpose-1884e00f993e09d0.yaml | 7 ++ 3 files changed, 36 insertions(+), 44 deletions(-) create mode 100644 releasenotes/notes/image-purpose-1884e00f993e09d0.yaml diff --git a/README.rst b/README.rst index 87b904a01f..eb2845c4de 100644 --- a/README.rst +++ b/README.rst @@ -8,17 +8,18 @@ Kolla Overview .. Change things from this point on -The Kolla project is a member of the OpenStack `Big Tent -Governance `__. +The Kolla project is a member of the OpenStack `Governance +`__. Kolla's mission statement is: :: - To provide production-ready containers and deployment tools for operating - OpenStack clouds. + To provide tools to create production-ready containers and + to provide deployment tools for operating OpenStack clouds. -Kolla provides `Docker `__ containers, +Kolla provides tools to create containers that can be run under either +`Docker `__ or `Podman `, as well as `Ansible `__ playbooks to deploy OpenStack on baremetal or virtual machine to meet Kolla's mission. @@ -39,26 +40,29 @@ Quickstart `__ -are built by the Kolla project maintainers. A detailed process for -contributing to the images can be found in the `image building -guide `__. +======================== ====================================================== +Deliverable Repository +======================== ====================================================== +kolla https://opendev.org/openstack/kolla +kolla-ansible https://opendev.org/openstack/kolla-ansible +ansible-collection-kolla https://opendev.org/openstack/ansible-collection-kolla +kayobe https://opendev.org/openstack/kayobe +======================== ====================================================== The Kolla developers publish images in the Quay.io `openstack.kolla` namespace for every tagged release. You can view the available images on `Quay.io `__. +.. warning:: + Kolla(-ansible) defaults to using these images in order to ease testing and + demonstration setups, but they are not intended to be used beyond this. + In particular, they do not undergo any security scrutiny. If you intend to + deploy Kolla for production purposes, you are advised to create and curate your + own set of images using the ``kolla`` tool. + OpenStack services ------------------ @@ -83,10 +87,10 @@ Kolla provides images to deploy the following OpenStack projects: - `Manila `__ - `Masakari `__ - `Mistral `__ -- `Monasca `__ - `Neutron `__ - `Nova `__ - `Octavia `__ +- `Placement `__ - Skyline (`APIServer `__ and `Console `__) - `Tacker `__ - `Trove `__ @@ -101,32 +105,27 @@ Kolla provides images to deploy the following infrastructure components: - `Collectd `__, `InfluxDB `__, and `Grafana `__ for performance monitoring. -- `Corosync `__ and - `Pacemaker `__ for HAcluster. -- `Elasticsearch `__ and - `Kibana `__ to search, analyze, - and visualize log messages. - `Cron `__ for log rotation. - `Etcd `__ a distributed key value store that provides a reliable way to store data across a cluster of machines. - `Fluentd `__ as an open source data collector for unified logging layer. - `Gnocchi `__ a time-series storage database. +- `Corosync `__ and + `Pacemaker `__ for HAcluster. - `HAProxy `__ and `Keepalived `__ for high availability of services and their endpoints. -- `Kafka `__ a distributed streaming - platform. - `MariaDB and Galera Cluster `__ for highly available MySQL databases. - `Memcached `__ a distributed memory object caching system. -- `Open vSwitch `__ for use with Neutron. - MariaDB Backup A tool which provides a method of performing a hot backup of your MySQL data while the system is running. +- `Open vSwitch `__ for use with Neutron. +- `Opensearch `__ to search, analyze, + and visualize log messages. - `Prometheus `__ an open-source systems monitoring and alerting toolkit originally built at SoundCloud. -- `Qdrouterd `__ as a - direct messaging back end for communication between services. - `RabbitMQ `__ as a broker messaging back end for communication between services. - `Valkey Sentinel `__ provides high availability for valkey @@ -134,9 +133,6 @@ Kolla provides images to deploy the following infrastructure components: provider for clients. - `Telegraf `__ as a plugin-driven server agent for collecting & reporting metrics. -- `ZooKeeper `__ as a centralized service for maintaining - configuration information, naming, providing distributed synchronization, and providing - group services. Directories =========== @@ -171,14 +167,6 @@ workflow `__. `__. - Contribute `code `__. -Contributors -============ - -Check out who is `contributing -code `__ and -`contributing -reviews `__. - Notices ======= diff --git a/kolla/common/config.py b/kolla/common/config.py index 682f1fe0bf..a4208df6a4 100644 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -63,7 +63,6 @@ 'openvswitch', 'proxysql', 'rabbitmq', - 'storm', 'tgtd', 'valkey', ], @@ -91,7 +90,6 @@ 'gnocchi', 'influxdb', 'ironic', - 'kafka', 'kuryr', 'magnum', 'manila', @@ -102,7 +100,6 @@ 'telegraf', 'trove', 'valkey', - 'zookeeper', 'zun', ], help='Aux Images'), diff --git a/releasenotes/notes/image-purpose-1884e00f993e09d0.yaml b/releasenotes/notes/image-purpose-1884e00f993e09d0.yaml new file mode 100644 index 0000000000..0296e9e1b9 --- /dev/null +++ b/releasenotes/notes/image-purpose-1884e00f993e09d0.yaml @@ -0,0 +1,7 @@ +--- +prelude: > + The Kolla project publishes images to quay.io. + These are however only intended for demonstration and testing purposes. + In particular, they do not undergo any security scrutiny. If you intend to + deploy Kolla for production purposes, you are advised to create and curate your + own set of images. From 77ff5b2621a31f9644d38dcd63ed89a00ff25997 Mon Sep 17 00:00:00 2001 From: Michal Nasiadka Date: Mon, 12 Jan 2026 09:48:12 +0100 Subject: [PATCH 5/6] influxdb: Drop support Kolla delivers InfluxDB v1, which is EOL (unless you have paid support). There are no plans in upgrading InfluxDB to v2 - so let's drop it. Change-Id: Id17aa4946617c851780d424e7e053dd79196be6f Signed-off-by: Michal Nasiadka --- README.rst | 1 - doc/source/contributor/versions.rst | 1 - doc/source/matrix_aarch64.csv | 1 - doc/source/matrix_x86.csv | 1 - docker/influxdb/Dockerfile.j2 | 29 ------------------- docker/influxdb/extend_start.sh | 11 ------- docker/influxdb/influxdb_sudoers | 1 - docker/kolla-toolbox/Dockerfile.j2 | 1 - kolla/common/config.py | 1 - kolla/common/users.py | 2 +- .../notes/drop-influxdb-cb3161a1e04fa38e.yaml | 4 +++ 11 files changed, 5 insertions(+), 48 deletions(-) delete mode 100644 docker/influxdb/Dockerfile.j2 delete mode 100644 docker/influxdb/extend_start.sh delete mode 100644 docker/influxdb/influxdb_sudoers create mode 100644 releasenotes/notes/drop-influxdb-cb3161a1e04fa38e.yaml diff --git a/README.rst b/README.rst index a8cf66238f..3c10e559ee 100644 --- a/README.rst +++ b/README.rst @@ -103,7 +103,6 @@ Infrastructure components Kolla provides images to deploy the following infrastructure components: - `Collectd `__, - `InfluxDB `__, and `Grafana `__ for performance monitoring. - `Corosync `__ and `Pacemaker `__ for HAcluster. diff --git a/doc/source/contributor/versions.rst b/doc/source/contributor/versions.rst index b3adf19206..0188664634 100644 --- a/doc/source/contributor/versions.rst +++ b/doc/source/contributor/versions.rst @@ -16,7 +16,6 @@ information about package sources. Name Version Package source information ============== ================ ============================================= Grafana 9.x `Grafana install guide`_ - InfluxDB 1.8.x `InfluxDB upstream repo`_ Kibana 7.x `Kibana install guide`_ Logstash 7.x `Logstash install guide`_ MariaDB 10.11 (LTS) `MariaDB Community downloads`_ diff --git a/doc/source/matrix_aarch64.csv b/doc/source/matrix_aarch64.csv index 04e94f1690..82c3724103 100644 --- a/doc/source/matrix_aarch64.csv +++ b/doc/source/matrix_aarch64.csv @@ -20,7 +20,6 @@ hacluster,N,U,U haproxy,U,U,U heat,U,U,U horizon,U,U,U -influxdb,N,U,U ironic,U,U,U iscsid,U,U,U keepalived,U,U,U diff --git a/doc/source/matrix_x86.csv b/doc/source/matrix_x86.csv index 738475b61f..0e03298bea 100644 --- a/doc/source/matrix_x86.csv +++ b/doc/source/matrix_x86.csv @@ -21,7 +21,6 @@ hacluster-pcs,N,U,U haproxy,T,T,U heat,T,T,T horizon,T,T,T -influxdb,U,U,U ironic,T,T,U iscsid,T,T,U keepalived,T,T,U diff --git a/docker/influxdb/Dockerfile.j2 b/docker/influxdb/Dockerfile.j2 deleted file mode 100644 index 060973dd66..0000000000 --- a/docker/influxdb/Dockerfile.j2 +++ /dev/null @@ -1,29 +0,0 @@ -FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }} -{% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" -{% endblock %} - -{% block influxdb_header %}{% endblock %} - -{% import "macros.j2" as macros with context %} - -{{ macros.configure_user(name='influxdb') }} - -{{ macros.enable_extra_repos(['influxdb']) }} - -{% set influxdb_packages = ['influxdb'] %} -{{ macros.install_packages(influxdb_packages | customizable("packages")) }} - -COPY influxdb_sudoers /etc/sudoers.d/kolla_influxdb_sudoers -COPY extend_start.sh /usr/local/bin/kolla_extend_start - -RUN chmod 750 /etc/sudoers.d \ - && chmod 440 /etc/sudoers.d/kolla_influxdb_sudoers \ - && chmod 644 /usr/local/bin/kolla_extend_start - -{{ macros.kolla_patch_sources() }} - -{% block influxdb_footer %}{% endblock %} -{% block footer %}{% endblock %} - -USER influxdb diff --git a/docker/influxdb/extend_start.sh b/docker/influxdb/extend_start.sh deleted file mode 100644 index 42a3c4607b..0000000000 --- a/docker/influxdb/extend_start.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -# Create log directory, with appropriate permissions -INFLUXDB_LOG_DIR=/var/log/kolla/influxdb - -if [[ ! -d "${INFLUXDB_LOG_DIR}" ]]; then - mkdir -p ${INFLUXDB_LOG_DIR} -fi -if [[ $(stat -c %a ${INFLUXDB_LOG_DIR}) != "755" ]]; then - chmod 755 ${INFLUXDB_LOG_DIR} -fi diff --git a/docker/influxdb/influxdb_sudoers b/docker/influxdb/influxdb_sudoers deleted file mode 100644 index a9757b264e..0000000000 --- a/docker/influxdb/influxdb_sudoers +++ /dev/null @@ -1 +0,0 @@ -%kolla ALL=(root) NOPASSWD: /usr/bin/chown -R influxdb\: /var/lib/influxdb, /bin/chown -R influxdb\: /var/lib/influxdb diff --git a/docker/kolla-toolbox/Dockerfile.j2 b/docker/kolla-toolbox/Dockerfile.j2 index 9f97ed3866..d6f4944db9 100644 --- a/docker/kolla-toolbox/Dockerfile.j2 +++ b/docker/kolla-toolbox/Dockerfile.j2 @@ -98,7 +98,6 @@ ENV PATH {{ venv_path }}/bin:$PATH {% set kolla_toolbox_pip_packages = [ 'ansible-core==2.19.*', 'cmd2', - 'influxdb', 'openstacksdk', 'os-client-config', 'pbr', diff --git a/kolla/common/config.py b/kolla/common/config.py index 9999393010..e8c3f9a663 100644 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -89,7 +89,6 @@ 'cloudkitty', 'designate', 'gnocchi', - 'influxdb', 'ironic', 'kafka', 'kuryr', diff --git a/kolla/common/users.py b/kolla/common/users.py index ec21b06581..cbbc147b07 100644 --- a/kolla/common/users.py +++ b/kolla/common/users.py @@ -89,7 +89,7 @@ 'uid': 42420, 'gid': 42420, }, - 'influxdb-user': { + 'influxdb-user': { # unused user (influxdb dropped) 'uid': 42421, 'gid': 42421, }, diff --git a/releasenotes/notes/drop-influxdb-cb3161a1e04fa38e.yaml b/releasenotes/notes/drop-influxdb-cb3161a1e04fa38e.yaml new file mode 100644 index 0000000000..47800626ea --- /dev/null +++ b/releasenotes/notes/drop-influxdb-cb3161a1e04fa38e.yaml @@ -0,0 +1,4 @@ +--- +upgrade: + - | + Support for building ``influxdb`` container images has been dropped. From 900fd8002a6a6538d48127e232b9ac0ba4499b99 Mon Sep 17 00:00:00 2001 From: Bartosz Bezak Date: Thu, 22 Jan 2026 12:51:55 +0100 Subject: [PATCH 6/6] Fix ironic-pxe syslinux-tftpboot on aarch64 Rocky Linux Closes-Bug: #2138872 Change-Id: I6e30b749488a0ef2f247adf182db40cda8fa8ca4 Signed-off-by: Bartosz Bezak --- docker/ironic/ironic-pxe/Dockerfile.j2 | 7 +------ .../ironic-pxe-syslinux-tftpboot-3dc6415ed140dc50.yaml | 6 ++++++ 2 files changed, 7 insertions(+), 6 deletions(-) create mode 100644 releasenotes/notes/ironic-pxe-syslinux-tftpboot-3dc6415ed140dc50.yaml diff --git a/docker/ironic/ironic-pxe/Dockerfile.j2 b/docker/ironic/ironic-pxe/Dockerfile.j2 index 6a2131de6a..eb357610b1 100644 --- a/docker/ironic/ironic-pxe/Dockerfile.j2 +++ b/docker/ironic/ironic-pxe/Dockerfile.j2 @@ -17,15 +17,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build 'ipxe-bootimgs-aarch64', 'mtools', 'shim-*64', + 'syslinux-tftpboot', 'tftp-server', ] %} - {% if base_arch in ['x86_64'] %} - {% set ironic_pxe_packages = ironic_pxe_packages + [ - 'syslinux-tftpboot' - ] %} - {% endif %} - {{ macros.install_packages(ironic_pxe_packages | customizable("packages")) }} {% elif base_package_type == 'deb' %} {% set ironic_pxe_packages = [ diff --git a/releasenotes/notes/ironic-pxe-syslinux-tftpboot-3dc6415ed140dc50.yaml b/releasenotes/notes/ironic-pxe-syslinux-tftpboot-3dc6415ed140dc50.yaml new file mode 100644 index 0000000000..a2764704b5 --- /dev/null +++ b/releasenotes/notes/ironic-pxe-syslinux-tftpboot-3dc6415ed140dc50.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Install syslinux-tftpboot in the ironic-pxe RPM image on all architectures + so TFTP boot files (pxelinux.0, chain.c32, ldlinux.c32) are present on + aarch64.