Pull to refresh

Comments 10

UFO just landed and posted this here

Отличный баланс между широтой и глубиной. Я бы поды выкинул как несущественные для разработчика, но тогда не понять где же оно в конце концов работает. А декларацию сетевых политик между сервисами бы добавил. Всего пара десятков строк, но заставляет думать в парадигме МСА не создавать распределённый монолит.

1)

"Ингресс-контроллер — это компонент, следящий за существующими в кластере ингрессами и, собственно, реализующий роутинг. "

"обычно поднимается один сервис типа LoadBalancer, который уже роутит трафик между сервисами."

Так LoadBalancer или Ингресс организует роутинг? Не очень понимаю полный путь запроса через чего он проходит.

2) Не очень понял про mongodb если он будет работать допустим с 100 шардами. Как Игресс\ЛоудБалансер поймет на какой "контейнер" нужно передать запрос?

1) LoadBalancer приводит трафик на поды, поднятые ингресс-контроллером (т. е. непосредственно в контейнеры с nginx/traefik/...), а они уже смотрят на существующие в системе ингрессы и роутят куда нужно.

2) Если мы подняли сервис, балансировка будет происходить только если обращаться по урлу, соответствующему всему сервису — <имя сервиса>.svc.cluster.local. Но помимо такого урла Kubernetes создаёт урлы для всех подов сервиса, чем мы и пользуемся, обращаясь напрямую в statefulset-0.mongodb-service.default.svc.cluster.local. Такие урлы с фиксированными именами подов мы можем использовать для конфигурирования базы данных.

Докер бы только на подман поменять и всё будет замечательно

Спасибо за статью!

Есть какие-то хайлайты на тему тру-пути по развертыванию Кассандры? Было в продакшне, но там не было нормального кластера, чтобы поиграться

Не надо Кассандру в кубер совать. Во-первых она разрабатывалась чтобы работать на железе. Во вторых у вас будут проблемы при масштабированием кольца.

Спасибо большое, очень хорошая статья которая позволяет получить понятный минимум для погружения в мир k8s

Sign up to leave a comment.

Articles