Релиз Open Source-платформы Cozystack 0.22 (и немного 0.23): телеметрия, пропатченный Talos, Workload и WorkloadMonitor
В свежей версии добавлен cozystack-controller и новые сущности: Workload и WorkloadMonitor — которые позволяют следить за состоянием подов, управляемых операторами, и оценивать уровень сервиса по заранее определённым правилам.
Cozystack — это Open Source-платформа, которая позволяет строить облако на bare metal для быстрого развертывания managed Kubernetes, database as a service, applications as a service и виртуальных машин на базе KubeVirt. В рамках платформы можно по клику разворачивать Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics и другие сервисы.
Приложения в Cozystack управляются разными операторами, поэтому мы решили создать единый формат для отображения статуса каждого сервиса.
Вот как это работает:
В рамках деплоя приложения деплоится и WorkloadMonitor, который следит за состоянием подов по селектору. Как только под селектор попадается один из подов, для него создаётся новая сущность Workload, которая отображает роль для каждого пода и его состояние.
В статусе WorkloadMonitor можно увидеть количество существующих реплик и минимальное количество реплик, необходимое для обслуживания сервиса. Как только количество workloads становится меньше, чем значение minReplicas для WorkloadMonitor, сервис помечается non-operational.
Для приложений, которым нельзя задать точное значение minReplicas (к таким приложениям, например, относятся воркеры Kubernetes — могут масштабироваться автоматически), реализована возможность вообще не указывать это значение в WorkloadMonitor. В этом случае WorkloadMonitor просто будет считать общее количество запущенных экземпляров.
Такой механизм позволяет использовать любые операторы и механизмы управления подами в Kubernetes и легко расширять платформу, предоставляя единый
Читать на habr.com