TGViewer
DevSecOps Talks DevSecOps Talks @devsecops_weekly · 8.04K subscribers
Post #1062 3.03K
Замена StatefulSets на Custom Operator: опыт Timescale

Всем привет!

На протяжении некоторого времени команда Timescale использовала StatefulSets для того, чтобы управлять клиентскими database pods и их volumes.

Однако, у StatefulSets есть ряд неудобств, например: «неизменность» VolumeClaimTemplate; нюансы, связанные с изменением размера Volume; особенности работы Rolling Update и не только (больше информации можно найти в статье).

Из-за вышеописанных причин команда решила заменить «стандартные» StatefulSets на собственные, которые они назвали PatroniSets. И, конечно же, не обошлось без собственного Kubernetes Operator’a.

Ребята определили набор требований:
🍭 Новый ресурс должен быть прямой заменой StatefulSets с «бесшовной миграцией»
🍭 Он должен понимать контекст PostgreSQL/Patroni: кто есть «главный»
🍭 CR должен быть полностью декларативен
🍭 Любые действия должны быть направлены на сокращение времени простоя. Например, в HA варианте реплика обновляется первой
🍭 Он должен управлять всеми изменения Volumes и не только

После определения требований команда начала разработку собственного оператора. Логика его работы и подводные камни, с которыми столкнулись в Timescale при его разработке - все это можно найти в статье.

В результате PatroniSets начали использовать для новых сервисов в феврале 2024 года. Спустя некоторое время команда убедилась в работоспособности концепта и готова переводить на него существующие сервисы.
Tiger Data Blog Replacing StatefulSets With a Custom K8s Learn how we replaced StatefulSets with a custom Kubernetes operator to improve the scalability, flexibility, and cost efficiency of our Postgres cloud.
  • 🔥 4
  • ⚡ 2
  • 💯 1
More from @devsecops_weekly
  1. Oct 2, 2026AI Coding Agent Security Benchmark Всем привет! Команда Endor Labs задалась вопросом наско…
  2. Oct 1, 2026Platform Skills Всем привет! По ссылке доступен GitHub-репозиторий, в котором можно найти…
  3. Sep 30, 2026Vaikora LLM Gateway Всем привет! С повсеместным использованием AI-агентов всё чаще встреча…
  4. Sep 29, 2026Анализ зависимостей и инструментария разработки ПО Всем привет! Анализ ПО начинается не с…
  5. Sep 28, 2026Композиционный анализ C/C++ проектов Всем привет! Разрешить зависимости, сформировать SBoM…
  6. Sep 25, 2026Метрики масштабирования в Kubernetes Всем привет! (Автоматическое) масштабирование – крайн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →