Kubernetes NodePort vs LoadBalancer vs Ingress

Поделиться
HTML-код
  • Опубликовано: 8 июн 2024
  • 🔴 - To support my channel, I’d like to offer Mentorship/On-the-Job Support/Consulting - me@antonputra.com
    ▬▬▬▬▬ Experience & Location 💼 ▬▬▬▬▬
    ► I’m a Senior Software Engineer at Juniper Networks (12+ years of experience)
    ► Located in San Francisco Bay Area, CA (US citizen)
    ▬▬▬▬▬▬ Connect with me 👋 ▬▬▬▬▬▬
    ► LinkedIn: / anton-putra
    ► Twitter/X: / antonvputra
    ► GitHub: github.com/antonputra
    ► Email: me@antonputra.com
    ▬▬▬▬▬▬ Related videos 👨‍🏫 ▬▬▬▬▬▬
    👉 [Playlist] Kubernetes Tutorials: • Kubernetes Tutorials
    👉 [Playlist] Terraform Tutorials: • Terraform Tutorials fo...
    👉 [Playlist] Network Tutorials: • Network Tutorials
    👉 [Playlist] Apache Kafka Tutorials: • Apache Kafka Tutorials
    👉 [Playlist] Performance Benchmarks: • Performance Benchmarks
    👉 [Playlist] Database Tutorials: • Database Tutorials
    ▬▬▬▬▬▬▬ Timestamps ⏰ ▬▬▬▬▬▬▬
    0:00 Intro
    0:21 ClusterIP
    1:43 NodePort
    3:55 LoadBalancer
    5:04 Ingress
    ▬▬▬▬▬▬▬ Source Code 📚 ▬▬▬▬▬▬▬
    ► GitHub: github.com/antonputra/tutorials
    #kubernetes #devops #cloud
  • НаукаНаука

Комментарии • 90

  • @AntonPutra
    @AntonPutra  9 месяцев назад +1

    🔴 - To support my channel, I’d like to offer Mentorship/On-the-Job Support/Consulting - me@antonputra.com

  • @a.nk.r7209
    @a.nk.r7209 11 месяцев назад +9

    I highly appreciate your effort to teach advanced stuff with such depth and graphics.
    Keep them coming

    • @AntonPutra
      @AntonPutra  11 месяцев назад +1

      Thanks, will do!

  • @ianmubangizi
    @ianmubangizi 11 месяцев назад +6

    Once again, Anton, you are a legend, this is precisely what I wanted to know. Amazing!!! 🔥

  • @babaramdass462
    @babaramdass462 9 месяцев назад +3

    Exactly what I was looking for 🙏

  • @MrRin_
    @MrRin_ 10 месяцев назад +2

    Thank you, Anton! Really great stuff, one day I will be as knowledgable as you are

  • @OsascogamingBrSP
    @OsascogamingBrSP 11 месяцев назад +4

    I really appreciate your content, thanks Anton!

  • @azerbaijan50
    @azerbaijan50 11 месяцев назад +2

    Thank you for another great video, Anton. It is very informative.

    • @AntonPutra
      @AntonPutra  11 месяцев назад

      Thank you! Appreciate it!

  • @nero4581
    @nero4581 11 месяцев назад +3

    Learning k8s right now and this is video is really interesting. Thank you, Anton!

    • @AntonPutra
      @AntonPutra  11 месяцев назад

      Thanks! Appreciate it! One more k8s video coming in couple of days

  • @nealpan
    @nealpan 11 месяцев назад +2

    Great visualization. Thanks for sharing.

  • @ShreyasWaichal
    @ShreyasWaichal Месяц назад +2

    Super Helpful Anton..It helped me crack an interview!

  • @joelwembo
    @joelwembo 28 дней назад +1

    Very good tutorial with so much details !

  • @eleven_b_eleven
    @eleven_b_eleven 2 месяца назад +1

    Thanks. Very clear and concise

  • @Antonio-yy2ec
    @Antonio-yy2ec 11 месяцев назад +1

    Your content is pure gold!!

  • @Gouravpandey1
    @Gouravpandey1 Месяц назад +1

    nicely explained. Thankyou!

  • @playboy_xx
    @playboy_xx 2 месяца назад

    Good to learn from you ❤

  • @sebastiancanevari7287
    @sebastiancanevari7287 5 месяцев назад +1

    Thank you! Very clear!

  • @vanshajdhar9223
    @vanshajdhar9223 11 месяцев назад +4

    Amazing knowledge

  • @bunny96
    @bunny96 4 месяца назад +1

    perfect explanation, keep it up!

  • @ukaszl.9943
    @ukaszl.9943 11 месяцев назад +1

    Great video. Thank you.

  • @farzadmf
    @farzadmf 11 месяцев назад +1

    Very well explained!

  • @diegonayalazo
    @diegonayalazo 6 месяцев назад

    Thanks Teacher

  • @LuisGarcia-ec5el
    @LuisGarcia-ec5el 11 месяцев назад +2

    Excelente video 🤌🏽🙌🏽

  • @kayoutube690
    @kayoutube690 11 месяцев назад +1

    Wow!! Thank you!

  • @CloudWithUgur
    @CloudWithUgur 10 месяцев назад +2

    dude your content is great, I am watching one after one.. thank you

  • @mitya80
    @mitya80 9 месяцев назад +2

    спасибо ! полезная инфа !

    • @AntonPutra
      @AntonPutra  9 месяцев назад +1

      spasibo za otziv!

  • @RafaelDurelli
    @RafaelDurelli 11 месяцев назад +1

    What a vid. Thanks again

  • @danielecerboni418
    @danielecerboni418 10 месяцев назад +1

    Thanks

  • @RashmiDuneja
    @RashmiDuneja 4 месяца назад +1

    Subscribed and liked

  • @leoperez2566
    @leoperez2566 8 месяцев назад +1

    Very well explained.

  • @nforlife
    @nforlife 11 месяцев назад +1

    Awesome!

  • @HoneyHaiderMengha
    @HoneyHaiderMengha 7 месяцев назад +1

    @anton great work

    • @AntonPutra
      @AntonPutra  7 месяцев назад +1

      Thank you Mengha!

  • @anas6435
    @anas6435 5 месяцев назад

    Informative content .. Which tool do you use for graphics ?

    • @AntonPutra
      @AntonPutra  5 месяцев назад

      thanks, adobe suite

  • @zekeluther
    @zekeluther 10 месяцев назад +2

    Looking forward on Kubernetes 1.27: Avoid Collisions Assigning Ports to NodePort Services

    • @AntonPutra
      @AntonPutra  10 месяцев назад

      What's your use case for NodePorts?

    • @zekeluther
      @zekeluther 10 месяцев назад

      @@AntonPutra chatbot platform with different market region.

    • @AntonPutra
      @AntonPutra  10 месяцев назад +1

      @@zekeluther I mean your use case for nodeports, why not to use load balancer or ingress?

  • @675FresH
    @675FresH 11 месяцев назад +1

    Thanks for content Anton!
    May I ask your opinion, is it worth getting a certificate in Kubernetes(CKA or CKAD)?

    • @AntonPutra
      @AntonPutra  11 месяцев назад +1

      Personally, I never pay attention to whether a candidate has certificates or not. Perhaps someone else does.

    • @nforlife
      @nforlife 11 месяцев назад

      That's is a perfect answer

  • @maxmustermann9858
    @maxmustermann9858 6 месяцев назад

    Great Explanation! But I’m still not sure what to use for my setup, I want to setup a kubernetes cluster in the cloud so each node one VM. My cloud provider has a Load Balancer service but limits the possible targets it can connect to, so I thought I will connect the Cloud Load Balancer to a Ingress/Load Balancer on the Cluster which then routes the traffic accordingly. That way I only use 3 Targets of my load balancer and my Cluster also controls the certs, so I don’t need to pay extra for more certs and load balancer recourses.
    How could I accomplish that, and is this even possible when wanting a production grade/ready cluster?

    • @AntonPutra
      @AntonPutra  6 месяцев назад

      You can use the Nginx ingress controller. Set it up using a single 'target,' possibly two for HTTP/S, and then internally route to your services using the Nginx controller.

    • @maxmustermann9858
      @maxmustermann9858 6 месяцев назад

      @@AntonPutra Thanks! So my way wasn’t completely wrong. But as I understand this would now be a single point of failure, so how can I have HA Ingress Controller? Then the external load balancer can point to the 3 or more ingress controller.

  • @xianxiangchang5251
    @xianxiangchang5251 10 месяцев назад

    What about using NodePort to aggregate different services under 1 load balancer using backends, instance-groups, url-maps, and HTTPS proxy?

    • @AntonPutra
      @AntonPutra  10 месяцев назад

      Well that's how cloud providers used to do it behind the load balancer type service. Nowadays, they utilize IP mode and route traffic directly to the pod. On-premise, perhaps...

  • @kaushikkm9336
    @kaushikkm9336 6 месяцев назад

    When we use the ingress, what should be the backend service type ? is it OK if its ClusterIP ?

    • @AntonPutra
      @AntonPutra  6 месяцев назад

      Use ingress when you want to share one load balancer among multiple services, which is limited to HTTP/S only. Yes, most of the time you would use ClusterIP, except in some edge cases when you use the AWS Load Balancer Controller in instance mode.

  • @ashadujjaman_hiru
    @ashadujjaman_hiru 8 месяцев назад

    Would you please share a tutorial for onpremise scenario, How can I deploy Ingress my onpremise kubernetes cluster?
    Please please please 😊

    • @AntonPutra
      @AntonPutra  8 месяцев назад

      For on premise use metallb to create load balancers, then use it to deploy ingress.
      github.com/metallb/metallb

  • @davidvillasmil1468
    @davidvillasmil1468 9 месяцев назад

    what lesson number is this? can't fin the docs in github

    • @AntonPutra
      @AntonPutra  9 месяцев назад

      I think I didn't commit any code for this lesson

  • @thedeadbaby
    @thedeadbaby 3 месяца назад +1

    Why does everyone show the same diagram with a load balancer with many arrows coming out of it, one of which is going into a kubernetes cluster? This only serves to confuse people, as if the data from the load balancer is a straight line pipe into a single cluster. This is not how it actually works. The external load balancer talks directly to the nodes themselves. If you're trying to set up a service mesh, maybe this diagram is accurate, but you're simply confusing people if this is not the case.

    • @Circe-wz3kg
      @Circe-wz3kg Месяц назад

      What do you mean? The arrows on one end are either the ingresses or services themselves and on the other end it's control plane

  • @peace2941
    @peace2941 8 месяцев назад

    Anybody has an idea on the tools used to make this video (I mean animations and design) thank you !

    • @AntonPutra
      @AntonPutra  8 месяцев назад

      I use adobe suite

    • @peace2941
      @peace2941 8 месяцев назад

      @@AntonPutra Thank you for your answer, that looks very cool but also complicated I guess it's using after Effects right?

    • @AntonPutra
      @AntonPutra  8 месяцев назад

      @@peace2941 Yes, I create graphics in Illustrator and animate them in After Effects.

    • @peace2941
      @peace2941 8 месяцев назад

      @@AntonPutra Looks like a lot of effort, thank you, that looks really good !

    • @AntonPutra
      @AntonPutra  8 месяцев назад

      @@peace2941 Thanks

  • @RobertGaz
    @RobertGaz 5 месяцев назад

    почему так сложно обяснить получше про LoadBalancer service? Ты говоришь, что он открывает под во вне, но совершенно непонятно, нужно навешивается реально какой-то балансировщик нагрузки или нет? например на 5:00 по смыслу да. а в остальном видео по смыслу нет.

    • @AntonPutra
      @AntonPutra  5 месяцев назад

      I didn't understand the question. In the cloud, the LoadBalancer service creates a cloud load balancer and routes traffic to your app; on-premise, it depends on your configuration. Also, LoadBalancer can use node ports underneath, and if Kubernetes supports native networks (without virtual network plugins such as Flannel, Calico), it can route directly to your pod's IP address. (I don't have a Russian keyboard.)

    • @RobertGaz
      @RobertGaz 5 месяцев назад

      @@AntonPutra Hey Anton. Thank you so much for answering! Now this seems to be clear for me.

  • @davidlee588
    @davidlee588 9 месяцев назад

    ➜ ~ kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard 8443:443
    Error from server (NotFound): namespaces "kubernetes-dashboard" not found

    • @AntonPutra
      @AntonPutra  9 месяцев назад

      Have you deployed the dashboard? Run "kubectl get ns" to list all namespaces.