12 - Ingress в Kubernetes. Создание Ingress на Minikube

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 มิ.ย. 2024
  • Ingress. Создание Ingress на Minikube
    В этом видео Вы изучите объект #Kubernetes #Ingress. Также настроим его на Minikube
    Приятного просмотра! Надеюсь будет полезно!
    0:00 Вступление
    0:23 Что такое Ingress и его назначение
    01:25 Установка Ingress Controller на Minikube
    03:05 Запуск Deployments и Services для них
    04:07 Создание объекта Ingress
    05:53 Настройка локального DNS используя файл /etc/hosts в Linux
    07:34 Исследование созданного Ingress
    Ссылка на Service в Kubernetes - Часть 1. Type: ClusterIP. Endpoints: • 10 - Service в Kuberne...
    Ссылка на Service в Kubernetes - Часть 2. Types: ExternalName, NodePort и LoadBalancer. Headless Service: • 11 - Service в Kuberne...
    Ссылка на урок по Deployment в Kubernetes:
    • 9 - Deployment в Kuber...
    Пример кода из видео: github.com/bakavets/k8s-lesso...
    Вы можете купить мне кофе, чтобы сказать спасибо! www.buymeacoffee.com/bakavets
    Подписаться на канал: / bakavets
    Подписаться на Telegram канал: t.me/bakavets
    Подписаться на Twitter: / bakavets

ความคิดเห็น • 40

  • @nyrouxhide91
    @nyrouxhide91 ปีที่แล้ว +13

    Хоспади, как было непонятно и как оказалось всё просто. У автора талант объяснить простым языком сложные вещи.

  • @evgenykuznetsov7490
    @evgenykuznetsov7490 ปีที่แล้ว +5

    просто охуенный краткий обзор ingress, спасибо.

  • @mikhailplekhov3894
    @mikhailplekhov3894 ปีที่แล้ว

    Супер! Срасибо за супер быстрый способ развернуть Ingress Controller внутри minikube. Благослови Бог!

  • @tilekasankulov5034
    @tilekasankulov5034 3 ปีที่แล้ว +9

    Ты лучший!
    Спасибо за выполненную работу!

    • @BAKAVETS
      @BAKAVETS  3 ปีที่แล้ว +3

      Tilek, Спасибо!

  • @besstrashny
    @besstrashny 3 ปีที่แล้ว +7

    Спасибо! Все четко и ясно :)

  • @alexandrtarnogradschi
    @alexandrtarnogradschi ปีที่แล้ว +1

    Спасибо за урок. Хорошо работает на minikube, с bare metal пришлось повозится.

    • @samrybkin9184
      @samrybkin9184 ปีที่แล้ว

      А что именно пришлось повозиться можешь по подробней рассказать ?

  • @aldermans
    @aldermans 5 หลายเดือนก่อน

    спасибо за /etc/hosts)

  • @neophron197
    @neophron197 ปีที่แล้ว

    спасибо

  • @daniilk.8744
    @daniilk.8744 ปีที่แล้ว

    гений!

  • @atexnik
    @atexnik 3 วันที่ผ่านมา

    4:54 я считаю, вы здесь оговорились, тут не ingress controller создается, а ingress resource. Сам же контроллер уже ранее был установлен и запущен в виде подов. Контроллер соответственно следит за появлением или изменениями в ingress ресурсах, и конфигурируется соответствующим образом (под капотом просто меняется конфиг nginx-а, который тут выступает в роли лоад балансера). Поправьте если я не прав.

    • @BAKAVETS
      @BAKAVETS  3 วันที่ผ่านมา +1

      Все верно.

  • @pubchikcplay5342
    @pubchikcplay5342 2 ปีที่แล้ว

    спасибо за видос!!! а что у Вас за эктеншен у терминала?

    • @BAKAVETS
      @BAKAVETS  2 ปีที่แล้ว +2

      Терминал: github.com/ohmyzsh/ohmyzsh
      Тема к терминалу: github.com/romkatv/powerlevel10k

  • @LanGhost172
    @LanGhost172 2 ปีที่แล้ว +2

    Спасибо, пример из видео не работает. IP адрес контроллеру не назначается. Назначается только localhost. При попытке зайти на localhost:80 нет никакого ответа

    • @BAKAVETS
      @BAKAVETS  2 ปีที่แล้ว +4

      Вероятней всего, Вы запускаете minikube, используя Docker драйвер. Поэтому можно сделать следующее:
      minikube addons enable ingress
      Вы увидите: After the addon is enabled, please run "minikube tunnel" and your ingress resources would be available at "127.0.0.1".
      После этого выполняем в отдельном терминале команду: sudo minikube tunnel
      NOTE: Please do not close this terminal as this process must stay alive for the tunnel to be accessible
      Ingress станет доступен на localhost, пока Вы не прервёте команду: sudo minikube tunnel.

  • @swip1988
    @swip1988 2 ปีที่แล้ว

    Привет. Можешь ли записать видео как настроить Ingress на Bare Metal кластере?

    • @BAKAVETS
      @BAKAVETS  2 ปีที่แล้ว +1

      Привет. По возможности запишу.

  • @samrybkin9184
    @samrybkin9184 ปีที่แล้ว

    Спасибо за видео, взял на сервере с нуля развернул kuber, настроил деплоймент и сервисы и по аналогии настроил у себя ingress с использованием Nginx ingress controller,но почему-то 404 ошибка :(
    P.s это у тебя kubuntu стоит?

    • @BAKAVETS
      @BAKAVETS  11 หลายเดือนก่อน +1

      Удалось разобраться? Стоит Ubuntu.

    • @samrybkin9184
      @samrybkin9184 11 หลายเดือนก่อน

      @@BAKAVETS Привет к сожалению нет и у меня Kubernetess работал на виртуальном сервере, а не с облака:(
      Да и сейчас работаю на работе где его особо не используют kuber:( Пробовал в Минске поискать работу с kubernetess, но когда приходишь на собес и понимают что у тебя нету 1-2 года опыта с ним, сразу разворачивают:)
      Кстати у тебя очень красивая Ubuntu, а можешь скинуть мне ссылку на тему или на ресурс как ты ее настроил таким образом, буду очень благодарен.

    • @BAKAVETS
      @BAKAVETS  11 หลายเดือนก่อน +1

      @@samrybkin9184 если вы имели ввиду терминал, то вот.
      Терминал: github.com/ohmyzsh/ohmyzsh
      Тема к терминалу: github.com/romkatv/powerlevel10k

    • @samrybkin9184
      @samrybkin9184 11 หลายเดือนก่อน

      @@BAKAVETS нет просто использую Ubuntu 22.04 gnome и ее тема существенно отличается от темы которые были представлены у тебя в видосах поэтому и хотел узнать за тема у тебя стоит в Ubuntu?

  • @marrr_marrr5315
    @marrr_marrr5315 7 หลายเดือนก่อน

    С Ingress стало понятно, а ingress controller немного в тень ушёл.

  • @Noable
    @Noable 3 ปีที่แล้ว +1

    А как работает ингрес если сервис хедлесс? И несколько подов в реплике

    • @BAKAVETS
      @BAKAVETS  3 ปีที่แล้ว

      Привет! Чтобы сервис был Headless, нужно явно объявить в сервисе clusterIP: None. В этом видео все сревисы type: ClusterIP.

    • @Noable
      @Noable 3 ปีที่แล้ว

      @@BAKAVETS это я понимаю, и прошлое видео тоже посмотрел и лайкнул) но ни тут не там не нашел явного ответа на мой вопрос. Есть 2 пода 1 хедлес сервис и ингрес. Если я правильно понимаю входящий трафик будет попадать на все поды но возвращаться 1 ответ, так как стоит ингрес. Как ингрес понимает из какого пода отдавать ответ?

    • @BAKAVETS
      @BAKAVETS  3 ปีที่แล้ว +1

      Трафик не будет попадать на все pods сразу, а только на один. За ingress стоит LoadBalancer(LB), Вы можете убедиться в этом сами, используя nslookup и доменное имя, которое указано в ingress, и Вам вернется один или несколько IP адресов, которые относятся к LB, поэтому если Вы обращаетесь к headless сервису через ingress, то ingress направит трафик только на один рандомный pod. На практике же обычно используют headless service для statefulset вместе с обычным service, например ClusterIP. Те работает два сервиса, обслуживающих один statefulset. И запросы к statefulset делает обычно клиентское приложение в kubernetes, которое и понимает куда отправлять трафик: на headless или обычный сервис, а запросы из вне в свою очередь приходят с ingress на service клиентского приложения.

    • @Noable
      @Noable 3 ปีที่แล้ว

      Все стало на свои места когда почитал про endpoint и target группы в aws у alb)

  • @volodia9509
    @volodia9509 ปีที่แล้ว

    Очень непонятное описание плюсов и смысла ингресс, которое заключается только в "сохранение сессий на основе файлов куки и т.д" ?

    • @MrMikhailDJ
      @MrMikhailDJ ปีที่แล้ว

      Ingress это API-объект кубера, а его смысл в том, что есть ingress controller, который уже помогает куберу сконфигурировать веб-сервер. Поэтому есть много разных ingress на основе nginx, apache и тд

    • @MrMikhailDJ
      @MrMikhailDJ ปีที่แล้ว

      Ну и если маршрутизации http/https недостаточно, то ингресс как говорилось в видео: с load blancer’ом поможет и сделать ssl/tls тоже… Вам надо бы не кубером заняться, а в начале про веб-серверы почитать:)

    • @volodia9509
      @volodia9509 ปีที่แล้ว

      ​@@MrMikhailDJ совет из разряда, научись писать под ассемблер, а потом только переходи на высокий уровень. Лол.

    • @MrMikhailDJ
      @MrMikhailDJ ปีที่แล้ว

      @@volodia9509 нет здесь другое. Совет из разряда не учи виртуальные функции C++, пока не выучил обычные))
      Пример очень плохой привели. Вам лучше вообще про IT забыть с таким подходом. Это явно не ваше…
      Здесь дело было далеко не в уровне. Надеюсь по-моему примеру вы догадались о чём я. Могу ещё один привести: не учи кубер, если не знаешь что такое контейнер. Так понятнее стало?

  • @NikBtv
    @NikBtv 4 หลายเดือนก่อน

    К сожалению, урок не работает для тех, кто использует Docker в качестве драйвера в minikube. Когда создаётся кластер с использованием драйвера docker, то контейнер открывает доступ извне только напрямую к сервисам, но не к созданному внутри ingress

    • @BAKAVETS
      @BAKAVETS  4 หลายเดือนก่อน

      Можно сделать следующее:
      minikube addons enable ingress
      Вы увидите: After the addon is enabled, please run "minikube tunnel" and your ingress resources would be available at "127.0.0.1".
      После этого выполняем в отдельном терминале команду: sudo minikube tunnel
      NOTE: Please do not close this terminal as this process must stay alive for the tunnel to be accessible
      Ingress станет доступен на localhost, пока Вы не прервёте команду: sudo minikube tunnel.

    • @Cortman77
      @Cortman77 2 หลายเดือนก่อน

      @@BAKAVETS тоже столкнулся с этой проблемой, поставил докер драйвер, и захотел чтобы на компах которые с хостом в локальной сети, сервис открывался, но решений похоже нет. То что вы предлагаете выше скорее костыль, который лично у меня после команды sudo minikube tunnel выводит - Profile "minikube" not found. Хотя профиль с таким именем запущен.

    • @Cortman77
      @Cortman77 2 หลายเดือนก่อน

      Пока сложилось стойкое впечатление того, что всё что касается кубернетеса хорошо и грамотно себя чувствует в облаках. А все тренировочные миникубы, k3s, тд довольно косячные и капризные-)

  • @lindemann9432
    @lindemann9432 3 วันที่ผ่านมา

    Nichego ne ponyal