Введение
Введение в Redis OSS
Redis OSS — это open-source система хранения данных с in-memory структурой данных, которая поддерживает различные структуры данных (такие как строки, хэши, списки, множества, отсортированные множества и т. д.) и предоставляет такие возможности, как постоянное хранение данных, высокая доступность и распределённая кластеризация. Благодаря высокой производительности и низкой задержке Redis широко используется в таких сценариях, как кэширование, очереди сообщений и аналитика данных в реальном времени. Основные режимы развертывания включают:
- Standalone: Развертывание на одном узле, подходит для сред разработки и тестирования.
- Sentinel: Архитектура высокой доступности на основе Sentinel, обеспечивающая автоматический failover и мониторинг.
- Cluster: Распределённый шардированный кластер, поддерживающий горизонтальное масштабирование и автоматическое разбиение данных.
Введение в Alauda Cache Service for Redis OSS
Alauda Cache Service for Redis OSS построен на Kubernetes (K8s) и использует несколько кастомизированных контроллеров (Operators), специально предназначенных для упрощения управления жизненным циклом экземпляров Redis в кластерах Kubernetes. Он расширяет Kubernetes API, предоставляя декларативную конфигурацию и автоматизированные возможности эксплуатации и обслуживания, что позволяет пользователям эффективно разворачивать и управлять кластерами Redis в cloud-native-стиле, обеспечивая при этом стабильность и масштабируемость в production-среде.
Ключевые возможности
-
Поддержка нескольких архитектур
- Поддерживает режимы развертывания Standalone, Sentinel и Cluster, охватывая потребности разработки, тестирования и production.
-
Поддержка версий
- Redis
6.0,7.2,8.4.
- Redis
-
Контроль доступа и безопасность
- Поддерживает TLS-шифрование.
- Интегрируется с Redis ACL (Access Control List), поддерживая детализированное управление правами пользователей.
-
Сеть и способы доступа
- Поддерживает типы экспонирования сервиса NodePort и LoadBalancer, а также возможность указания портов NodePort.
- Совместим с сетевыми средами IPv4 и IPv6.
-
Эластичное масштабирование
- Поддерживает онлайн горизонтальное масштабирование (в режиме Cluster) и вертикальную корректировку ресурсов без простоя.
-
Обновление версии и высокая доступность
- Предоставляет механизм плавного обновления версии, обеспечивающий непрерывность сервиса.
- Обеспечивает высокую доступность в production-средах за счёт таких механизмов, как множественная репликация и автоматическое восстановление после сбоев.
-
Настраиваемые политики планирования
- Поддерживает NodeSelector, Toleration и Affinity для гибкого управления логикой планирования Pod.
-
Автоматизированные возможности эксплуатации и обслуживания
- Rolling Scaling: изменяет количество шардов или реплик в соответствии с конфигурацией, автоматически обрабатывая перераспределение данных (Cluster) или отношения master-slave (Sentinel).
- Zero-Downtime Upgrades: заменяет и синхронизирует данные по одному узлу за раз, обеспечивая непрерывность сервиса.
- Configuration Hot Update: автоматически применяет новые конфигурации после изменения ConfigMap без перезапуска экземпляров.