Методы доступа
Alauda Cache Service для Redis OSS предоставляет несколько стратегий подключения для приложений, чтобы получить доступ к экземплярам Redis. В этом разделе описывается, как получить соответствующие адреса подключения и установить соединения с экземплярами Redis в режимах Sentinel и Cluster.
Содержание
Как получить адреса доступаВнутренние адреса доступа к кластеруВнешние адреса доступа к кластеруМетоды подключенияРежим SentinelРежим ClusterКак получить адреса доступа
Экземпляры Redis поддерживают различные методы доступа, предназначенные для разных сценариев развертывания. Эти методы доступа соответствуют стандартным протоколам подключения Redis. Для получения подробной информации обратитесь к официальной документации Redis:
Внутренние адреса доступа к кластеру
Внутренний доступ к кластеру обеспечивает подключение внутри сетевой среды Kubernetes. Доступны два варианта подключения:
- Внутренний маршрутизируемый DNS: использует механизмы обнаружения сервисов Kubernetes
- Внутренний маршрутизируемый IP: использует прямое IP-адресацию
Оба метода поддерживают подключение к экземплярам Redis, настроенным в режиме Cluster или Sentinel.
Чтобы получить внутренние адреса доступа: перейдите в Детали экземпляра > Метод доступа > Доступ внутри кластера
Внешние адреса доступа к кластеру
Внешний доступ к кластеру позволяет подключаться из-за пределов сетевой среды Kubernetes, например, из приложений, работающих в других кластерах или внешних системах. Этот метод также может использоваться для доступа внутри кластера при разрешении сетевых политик.
Поддерживаются два метода внешнего доступа:
- NodePort: открывает Redis на статических портах на каждом узле Kubernetes
- LoadBalancer: выделяет внешний балансировщик нагрузки для маршрутизации трафика к экземплярам Redis
Чтобы получить внешние адреса доступа: перейдите в Детали экземпляра > Метод доступа > Доступ из вне кластера
При использовании доступа NodePort из внешних сетей убедитесь, что ваш сетевой файрвол разрешает трафик к соответствующим IP-адресам и диапазонам портов NodePort. Из-за архитектурных ограничений протоколов Redis Sentinel и Cluster требуется прямое сетевое соединение между клиентскими приложениями и конечными точками NodePort. Проксирование подключений NodePort через дополнительный балансировщик нагрузки не поддерживается.
В средах с несколькими сетевыми интерфейсами Redis Sentinel и Cluster инициализируют адреса узлов, используя сетевой интерфейс по умолчанию каждого узла. Поэтому доступ к Redis через неиспользуемые по умолчанию сетевые интерфейсы в сочетании с открытыми портами не поддерживается. Для развертываний с несколькими сетевыми интерфейсами рекомендуется использовать метод доступа LoadBalancer.
Методы подключения
В следующих разделах описывается, как устанавливать подключения к экземплярам Redis в зависимости от их архитектуры.
Режим Sentinel
В развертываниях в режиме Sentinel все экземпляры sentinel регистрируют группу мастер-реплика Redis под фиксированным именем mymaster. Клиентские приложения должны использовать это имя при подключении через протокол Sentinel.
Для подробных примеров подключения с популярными клиентскими библиотеками смотрите Доступ к экземплярам (режим Sentinel)
Режим Cluster
В развертываниях в режиме Cluster клиентские приложения изначально подключаются к любому узлу кластера для получения информации о топологии кластера (распределении слотов). При последующих операциях клиенты должны поддерживать прямые подключения к соответствующим подам Redis на основе отображения ключей в слоты.
Для обеспечения максимальной надежности клиентские приложения должны инициализировать подключения, используя адреса всех узлов кластера.
Для подробных примеров подключения с популярными клиентскими библиотеками смотрите Доступ к экземплярам (режим Cluster)