меня есть 3 пода sentinel (каждый под содержит 2 контейнера: redis и sentinel). sentinel определяет мастера и ппереопределяет его между подами в случае недоступности. Вопрос: как мне ссылаться на мастера используя сервис headless? Для определения узла мастера использую следующую комманду :
redis-cli -h redis-sentinel.default.svc.cluster.local -p 26379 sentinel get-master-addr-by-name mymaster
никак. Куб не умеет определять мастера. Варианты: * использовать клиента, который знает, что такое sentinel и умеет сам находить мастера - например https://github.com/go-redis/redis Разумеется, клиентское приложение должно тоже работать внутри кластера чтобы уметь идти напрямую на поды с редисом * использовать ha proxy https://www.willandskill.se/en/articles/setup-a-highly-available-redis-cluster-with-sentinel-and-haproxy * использовать https://github.com/enriclluelles/redis-sentinel-proxy
Обсуждают сегодня