его рассказать вам про типы сервисов в кубе, и что такое стейтфулсеты. зачем нужен сервис типа loadbalancer, а зачем сервис типа ClusterIP, и что такое headless сервис.
потому что в этой части у вас дыра в знаниях, заполненная домыслами.
далее:
sts:
replicas: 4
args:
- server
- http://m1c6-{0...3}.minio.minio.svc.cluster.local/data
делать еразуре кодинг minio на одной ноде - ну такое себе отказустойчивость
далее. я вообще не уверен, что имя подов в стейтфулсете у тебя будут ресолвится без headless сервиса. возможно в последних кубах сделали такой дефолт, но мне кажется - что headless сервис нужен.
и наконец. решение твоих проблем...
смотри какая там цепочка:
ты хочешь отправлять клиента в неких балансировщик, который бы ходил в coredns от минио и узнавал в каком стейтфулсете у тебя бакет ?
ингресс-контроллер так не умеет. тебе действительно нужен некий скрипт-оператор ;) кторый будет постоянно ходить в coredns, брать оттуда полную зону, и на основании нее строить конфиг для балансировщика (nginx)
> делать еразуре кодинг minio на одной ноде - ну такое себе отказустойчивость это staging. в проде и нод больше, и дисков соответственно > так он есть. просто не просил выкладывать) в темплейте стейтфулсета лэйбл app=minio, у хедлеса селектор по этому лейблу > ты хочешь отправлять клиента в неких балансировщик, который бы ходил в coredns от минио и узнавал в каком стейтфулсете у тебя бакет ? я там выше dig'и присылал. локальный coredns знает обо всех лоадбалансерах, может резолвить а-запись в нужный адрес, etcd знает обо все бакетах (ему минио сам сообщает). coredns смотрит в etcd на предмет соответствия адресов и бакетов. исходя из этого отддает под запрошенный урл нужный адрес. выше картинка про федерацию, на ней наглядно изображен процесс. > ингресс-контроллер так не умеет. тебе действительно нужен некий скрипт-оператор ;) кторый будет постоянно ходить в coredns, брать оттуда полную зону, и на основании нее строить конфиг для балансировщика (nginx) думаю вообще делегировать домен на coredns
Обсуждают сегодня