aboutsummaryrefslogtreecommitdiff
path: root/docker/masakari/masakari-monitors
AgeCommit message (Collapse)AuthorFilesLines
2026-07-06Migrate to pyproject.tomlMichal Nasiadka2-60/+0
[tool.setuptools.data-files] does not support recursive directory installation. The old setup.cfg [files] worked because PBR's FilesConfig.expand_globs() used os.walk() to expand docker/*, but this hook is not triggered by the pbr.build PEP-517 backend. Move docker/ into kolla/ and use [tool.setuptools.package-data] instead. Update kolla_worker._get_images_dir() to check the kolla package directory first so both editable and regular installs work. Change-Id: I4fc452c03740ef22ebbb4e8d0d86c4f4783e2d09 Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2026-06-24kolla-build: fix build-date LABEL invalidating Docker layer cacheMichal Nasiadka1-1/+1
The build-date label was rendered into a LABEL instruction on line 3 of every Dockerfile template, immediately after FROM. Because Docker invalidates the cache for a changed instruction and all subsequent layers, a date change caused a full rebuild of every image on each new calendar day, even when nothing else had changed. Fix this by removing build-date from the Dockerfile templates and applying it as a --label argument at build time via image.labels. Labels passed on the build command line are not part of the Dockerfile cache key, so the date is still recorded in the image metadata without affecting layer caching. Change-Id: I8ef0d85bab1a999a4d09f7cbf0c088ca00fdcf77 Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2026-03-13masakari: Add crmadmin and cibadmin to monitors sudoersKim soo1-0/+2
The hostmonitor calls crmadmin and cibadmin with run_as_root=True, but the sudoers file only includes crm_mon. Since the container runs as the masakari user, sudo calls to crmadmin and cibadmin fail with "password required", causing the hostmonitor to skip all host monitoring every cycle. This completely breaks automatic instance evacuation in HCI (hyper-converged) deployments where all nodes run the full pacemaker stack instead of pacemaker-remote. In separated deployments, the crmadmin code path is skipped because pacemaker_remote_status=True, which is why this bug has gone undetected. Closes-Bug: #2144074 Change-Id: I22bbaa1f1fd1f3d53de48ec7c0099d028118448b Signed-off-by: Kim soo <popododo0720@naver.com>
2025-10-02Move repo enablement to respective rpm blocksMichal Nasiadka1-2/+2
Currently we are enabling repos irrespective of rpm/deb statement blocks and not failing in the method used if a repository is missing. Downside is - we might be producing one more layer, but it probably is a more logical approach. This is required for adding rpm support in repos.yaml that will also include failing on missing repositories. Change-Id: I5479c5c935760f00fe4cd307366f261deee3199f Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2024-11-15Add mechanism for patching files in containersMichal Arbet1-0/+2
This patch adds a way to patch files in a Docker image built by Kolla. This is very useful for several reasons, specifically: - Custom modifications - The stable branch of some library has a fix but no pip package has been released - Eliminates the need to package your own pip packages - Eliminates the need to invent your own versioning to prevent upstream versioning - Eliminates the need to manage a pip server - In other words, it eliminates the need to get a wheel into the image and install it manually using any method not previously mentioned It is also highly desirable because, although Kolla can replace the source for a service with a custom URL for a tarball or its own Git repo, it cannot do this for dependencies pulled from pip. I would also like to point out that this is a feature with its own code path and works only if the user "inserts" a patch into the folder patches/docker-image/something.patch and creates an analogous series file for patch source code. Simply said, this code will never interfere with the upstream build process since this feature is not intended for use in upstream. It is rather meant for downstream users who know what they are doing. Now they just have an option to patch their images. Everything works on all layers of the Docker image and stores a report of applied patches which can then be seen in /etc. This mechanism is similar as debian patch quilt. Change-Id: I61d0790c5d4d070b7ea9e8c99c0a76ff5d22bf9d
2024-02-26Remove calls to libvirt repoMichal Nasiadka1-1/+1
It does not exist in repos.yaml since [1]. [1]: Id585c7744ba130ad1dfc28138fb0f9e6eeae771d Change-Id: Ic74eba44fc6e5508976de24cf20a5039f3292731
2022-10-10Fix writable rootwrap/privsep configRadosław Piliszek1-1/+0
Fixes a hypothetical security issue related to privilege escalation via rootwrap/privsep. A potential vulnerable service could previously allow writes to its rootwrap/privsep config and thus allow for more commands to be run with root privileges via rootwrap/privsep. For a succesful attack, this would also require the service to allow to run arbitrary commands via rootwrap/privsep. Thus far, no such vulnerabilities have been reported and thus this fix is simply strengthening the container images against such an issue in the future. Change-Id: I92c81c77e6a16570a108cde8031f7977930fb02a Closes-Bug: #1874298
2022-04-21flatten images a bitMarcin Juszkiewicz1-5/+4
As we have one type of images now some RUN calls could be merged so we will have less layers in resulting images. Change-Id: I5178c58fbd8c65efe825dc249c0f1368ef0fe8e0
2022-04-09docker: drop binary partsMarcin Juszkiewicz1-47/+20
Big patch drops all mentions of binary images support. Suggestions are welcome how to split it into parts or handle better. Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
2022-03-21masakari: add Cyrus SASL packages to monitors imageMark Goddard1-0/+6
Adds Cyrus SASL packages necessary for the DIGEST-MD5 and SCRAM-SHA-256 mechanisms. These can be used for libvirt SASL authentication. Follow up to I13e19ca29eeab40cd08fa3afe2cdf7531867f81b. Partial-Bug: #1964013 Change-Id: Ic4b6171789c3d360317599310492771bd78828ec
2021-08-18Always use the distro-provided libvirt-pythonRadosław Piliszek1-2/+2
This patch switches masakari-monitors image to follow nova-compute and ceilometer-compute images. This will be used and required after [1] merges. Usage of libvirt-python from PyPI has already proven to be problematic on CentOS Stream in our stable branches. [2] With this patch we avoid those issues as well. [1] https://review.opendev.org/c/openstack/masakari-monitors/+/804913 [2] https://review.opendev.org/c/openstack/kolla/+/797102 Depends-On: https://review.opendev.org/c/openstack/masakari-monitors/+/804913 Change-Id: I7d4788f5b63fba24e3b2f9b15c16866ff811d83e
2021-03-29masakari-monitors: enable libvirt repoMarcin Juszkiewicz1-1/+1
Change-Id: I61734318f2ddd81c3a20571f2be844c08a8b2a26
2021-01-25Build Masakari for Ubuntu binaryRadosław Piliszek1-2/+18
Change-Id: I448793566202e672348733b8bbbd6665dc251dfe
2020-07-31masakari: Add crm_mon to masakarimonitors sudoersMark Goddard1-0/+1
This is necessary for the host monitor to query pacemaker Change-Id: I41066427169381e2bc57c70f7003bf4d83d9cde7 Partially-Implements: blueprint masakari-hostmonitor
2020-03-12CentOS 8: Enable hacluster and masakari imagesMarcin Juszkiewicz1-1/+1
CentOS 8.1 came with HA repo. So we can use it. hacluster-pcs image is disabled as we lack 'crmsh' package for it. Partially-Implements: blueprint centos-rhel-8 Co-Authored-By: Mark Goddard <mark@stackhpc.com> Change-Id: I1c786eda399eca4464c9d68ac040c2965350f775
2020-03-01Add block labels to all DockerfilesChristian Berendt1-0/+2
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2019-09-18Remove support for OracleLinuxMark Goddard1-2/+2
We have agreed to remove support for Oracle Linux. http://lists.openstack.org/pipermail/openstack-discuss/2019-June/006896.html Change-Id: I961dfba1aeef2c509ecdaf376dfe6928926ffb39 Depends-On: https://review.opendev.org/682858
2019-07-11Add Masakari containersKien Nguyen2-0/+60
Masakari provides Instances High Availability Service for OpenStack clouds by automatically recovering failed Instances. Change-Id: I279d6b43f8e4d4e30b39deb607823ceca272a4b8 Implements: blueprint masakari-support