K8s-image-availability-exporter — это Prometheus exporter. Он позволяет заранее предупреждать пользователей об образах, которые прописаны в объектах Kubernetes, но отсутствуют в реестре контейнеров (подробности можно узнать в нашей статье на Хабре).
За последний месяц мы выпустили сразу два больших обновления k8s-image-availability-exporter — версию 0.6.0 (и набор исправлений к нему 0.6.1) и версию 0.7.0. Что приятно, в эти релизы внесли вклад разработчики из сообщества — кто-то просто давал обратную связь в чатах и оставлял issues, кто-то просил добавить какие-то фичи, а кто-то контрибьютил в код проекта.
Что нового в версии 0.6.0
Поддержка CA-сертификатов для registry.
Поддержка HTTP-протокола для registry.
Возможность указать credentials для registry, которые будут использованы по умолчанию.
Обновление большого количества зависимостей, исправление CVE, обновление версии Go.
Новый публичный чарт, который публикуется на Artifact Hub. Теперь любой желающий может легко установить его себе.
Добавление security context.
Возможность указать опции для деплоя на определенные узлы: nodeSelector, tolerations, affinity, priority class и т. д.
PDB.
Дополнительные опции для ServiceMonitor, чтобы можно было гибко настраивать метрики.
Серьезное обновление CI: добавление линта и тестов для чарта, авторелиза.
Добавление Makefile для локальной разработки.
А еще мы разобрали скопившиеся issues от сообщества: либо реализовали то, что просили комментаторы, либо ответили на вопросы, либо попросили авторов issue помочь в реализации их хотелок.
Спустя некоторое время к нам пришли несколько контрибьюторов с интересными pull request’ами — первый, второй. В итоге мы решили выпустить следующую версию — 0.7.0.
Что нового в версии 0.7.0
Изменена система именования метрик — благодаря этому теперь можно запрашивать все метрики доступности образов с помощью одного запроса без использования громоздких регулярок.
В чарте теперь можно указать монтирование дополнительных volumes к контейнеру. Благодаря этому можно примонтировать секрет с credentials для registry или CA-сертификатом.
Добавлена возможность принудительной проверки образов для отключенных/приостановленных рабочих нагрузок. Остановленным считается контроллер, у которого не предполагается наличие реплик.
Сразу после выхода 0.7.0 нам начали приносить новые pull request’ы — например, внешние контрибьюторы добавили поддержку Argo Rollouts и закрыли старые issues. Если вам тоже интересен K8s-image-availability-exporter, но не хватает каких-то фичей или вы заметили баги, оставляйте свои issues и присылайте pull request’ы в GitHub проекта.