11 - Service в Kubernetes - Часть 2. Types: ExternalName, NodePort и LoadBalancer. Headless Service

  Рет қаралды 11,328

BAKAVETS

BAKAVETS

Күн бұрын

Пікірлер
@Noname-ss9wv
@Noname-ss9wv Жыл бұрын
красавец, белорус! подробно и точно делаешь, продолжай!
@versus492
@versus492 Жыл бұрын
Отличное видео. Ещё можно добавить, что можно осуществлять балансировку NodePort через dns A записи. LB бывают внешние и внутренние. Вторые используются для проектов под vpn, например.
@yaroslav-3450
@yaroslav-3450 2 жыл бұрын
Когда рассказывал про NodePort, упустил что в SG EC2 надо в явном виде добавить порт 30080 в inbound rule, без этого правила мы не достучимся до POD. По поводу externalTrafficPolicy: Local в LoadBalancer неточность, нам необязательно на каждой ноде иметь POD с приложением. Балансировщик клауд провайдера делает health check и если на ноде нет нужного пода, то такой нод будет OutOfService, балансировщик не пустит на него трафик вообще.
@lifeoutro
@lifeoutro Жыл бұрын
Headless не может обращаться ко все подам сразу, там механизм dns round robin, физически по протоколу невозможно. Там же не делается широковещательный запрос, и почему тогда при вызове curl dns-service-name не возвращаются ответы от всех подов а только с одного - потому что это и обусловлено механизмом dns rondrobin. А в целом, за курс спасибо.
@andrewmedvedev963
@andrewmedvedev963 Жыл бұрын
Anton, thanks again for your explanation. Could you tell me please how to configure external-ips for node groups? You have external ips on nodes in the output of command "kubectl get nodes -o wide". Did I miss something?
@BAKAVETS
@BAKAVETS Жыл бұрын
Hi! I have used here AWS EKS cluster with workers in VPC public subnets, so that's why I have external IPs for them.
@ddd2283
@ddd2283 11 ай бұрын
ППЦ ты тороторка , 10 раз пересмотрел когда ты про ExternalTraffic расказывал , думал как так ты его скрестил с LB? А ты тему уже сменил :)
@oleg_kishinskii
@oleg_kishinskii 2 жыл бұрын
я что то пропустил момент, а когда у нас service получил external ip?
@BAKAVETS
@BAKAVETS 2 жыл бұрын
Так как K8s cluster был создан в AWS, то при создании Service типа LoadBalancer, AWS автоматически создал LB и приаттачил его к этому Service через AWS Target group, и используя external endpoint созданного LB мы попадаем к приложению. Если я правильно понял вопрос.
@AndreyKopitsa
@AndreyKopitsa Жыл бұрын
​@@BAKAVETS в данном случае создавался сервис типа NodePort, а там external Ip не получает
@neodzen
@neodzen 3 жыл бұрын
По поводу LB. Гипотетически если я на виртуалках развернул кластер с несколькими мастерами и несколькими воркерами, и приложухе с несколькими репливами, то можно поставить балансировщик, например, haproxy, и натравить его просто на все ноды кластера, по раундробину, для балансировки. И получится примерно тоже самое что и у облачных балансировщиков, типа амазоновского и гугловского. Верно? И если верно, то получается на входе у меня будет грубо говоря два балансировщика. Сначала haproxy балансирует запрос на ноды, которые затем перенаправляют запрос к сервису, который затем уже балансирует запрос на поды, так?
@BAKAVETS
@BAKAVETS 3 жыл бұрын
Теоретически возможно. Но лично не пробовал. Я бы ещё в Вашу схему добавил бы ingress.
@neodzen
@neodzen 3 жыл бұрын
@@BAKAVETS Пока так и не понял как настроить ingress. День проплюхался и плюнул на него, настроил по другому. Суть в чём, есть служба проприетарная (обслуживает почтовые ящики с одной CRM/SRM), они принимает подключения по HTTP. Поставили задачу в кубере (виртуалки, три мастера, три воркера) развернуть 5 копий приложухи. Но отдавать клиентам урл с номером порта не кошерно поэтому решили дать УРЛи с 80-ым портом(всё в локалке). И вот тут понеслось :). В общем отдать через ingress я так и не смог, он у меня рефьюзит коннекты. В качестве контроллера поставил стандартный k8s-nginx, но началась ругань, дескать не определён default-http-backend. Плюнул на это дело. Зарегал для каждого инстанса свой сервис с типом NodePort и явно указал всем сервисам разные порты. А на HaProxy уже сделал редиректы по roundrobin на адрес:порт нод воркеров. Думаю это очень топорно, но пока так и не вкурил, как настроить ingress, да и нужен ли он в такой схеме. Вообще надо посмотреть серию уроков по контроллеру Traefik от justmeandopensource. Кстати рекомендую, хоть и англоязычный, но достаточно всё понятно.
@igorgladkov8270
@igorgladkov8270 Жыл бұрын
А что это за программка, на которой ты рисуешь?:)
@BAKAVETS
@BAKAVETS Жыл бұрын
Google Slides docs.google.com/presentation/u/0/
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 958 М.
The Best Band 😅 #toshleh #viralshort
00:11
Toshleh
Рет қаралды 22 МЛН
Cat mode and a glass of water #family #humor #fun
00:22
Kotiki_Z
Рет қаралды 42 МЛН
Устройство сети в Kubernetes
22:08
Check Point CheckMates in Russian
Рет қаралды 13 М.
13 - Liveness и Readiness Probes в Kubernetes
18:12
BAKAVETS
Рет қаралды 9 М.
КАК УСТРОЕН TCP/IP?
31:32
Alek OS
Рет қаралды 246 М.
kubernetes, ingress controller [1] - теория
21:35
Артур Крюков
Рет қаралды 16 М.
Metallb
27:48
Артур Крюков
Рет қаралды 8 М.
Kubernetes NodePort vs LoadBalancer vs Ingress
6:27
Anton Putra
Рет қаралды 85 М.
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 958 М.