Redis Operator для Kubernetes: кластер, sentinel, мониторинг

Redis-оператор на Golang, предназначенный для развёртывания и управления Redis в режимах standalone, cluster, replication и sentinel поверх Kubernetes. Он позволяет настраивать Redis по лучшим практикам как в облачных средах, так и на bare-metal-серверах. Помимо этого, оператор включает встроенный мониторинг на основе redis-exporter.

Документация доступна по адресу: https://redis-operator.opstree.dev/

Организации, использующие Redis Operator для управления своими Redis-нагрузками, перечислены здесь. Если ваша организация тоже использует Redis Operator, не стесняйтесь добавить её через pull request.

Оператор поддерживает только версии Redis >=6.

Архитектура

Архитектура Redis-оператора в Kubernetes

Назначение

При развёртывании Redis в Kubernetes, особенно в режиме кластера, возникает немало трудностей. Этот оператор создавался для того, чтобы предоставить простой и готовый к промышленной эксплуатации интерфейс для настройки Redis, охватывающий лучшие практики, средства защиты, мониторинг и управление.

Поддерживаемые возможности

Оператор поддерживает следующие функции:

  • Настройка Redis в режимах standalone, cluster, replication и sentinel

  • Переключение при сбое (failover) и восстановление кластера Redis

  • Встроенный мониторинг с помощью redis-exporter

  • Развёртывание Redis с паролем и без него

  • Поддержка TLS для дополнительного уровня безопасности

  • Поддержка IPv4 и IPv6 для Redis

  • Подробный дашборд мониторинга в Grafana

Ознакомьтесь с разделом Установка, чтобы развернуть первый кластер с помощью оператора.

Совместимость образов

Оператор поддерживает Redis версий >=6.x. Тем не менее настоятельно рекомендуется использовать последнюю стабильную версию, чтобы получить актуальные исправления безопасности и патчи от upstream.

Образы контейнеров:

  • Redis: quay.io/opstree/redis

  • Sentinel: quay.io/opstree/redis-sentinel

  • Exporter: quay.io/opstree/redis-exporter

Мониторинг с помощью Prometheus

Для отслеживания производительности Redis используется Prometheus. Дополнительная настройка Prometheus при этом не требуется — применяется механизм service discovery (обнаружения служб). Для этого уже заданы следующие аннотации:

  annotations:
    redis.opstreelabs.in: "true"
    prometheus.io/scrape: "true"
    prometheus.io/port: "9121"

Помимо аннотаций, для каждой установки Redis можно развернуть ServiceMonitor — это настраивается через файл значений Helm.

Участие в разработке

Подробности — в файле CONTRIBUTING.md.

История релизов

Подробности — в разделе История релизов.

Контактная информация

Проект поддерживается компанией OpsTree Solutions. По любым вопросам и предложениям пишите на opensource@opstree.com.

Присоединяйтесь к нашему Slack-каналу: #redis-operator.

© 2026 meganuke