Day 9/40 - Kubernetes Services Explained - ClusterIP vs NodePort vs Loadbalancer vs External

Sdรญlet
Vloลพit
  • ฤas pล™idรกn 30. 06. 2024
  • Welcome to day 9/40 of the Certified Kubernetes Administrator (CKA) Full Course. In this video, we will explore Kubernetes Services in depth with a detailed conceptual explanation, a live demo, and an engaging hands-on assignment.
    In this video, you'll learn:
    - What are Kubernetes Services
    - How we use Kubernetes service to expose an application
    - Different types of Kubernetes services ClusterIP vs NodePort vs Loadbalancer vs External
    - Demo creating a Kubernetes service
    - Imperative commands to create a service
    - What are endpoints in Kubernetes
    - Troubleshooting a Kubernetes service
    ๐Ÿš€ Reinforce your knowledge with practical tasks in the Day 9 folder of our GitHub repository: github.com/piyushsachdeva/CKA...
    ๐Ÿ‘จ๐Ÿผโ€๐Ÿ’ป #40daysofKubernetes Challenge:
    Join our 40-day challenge and solidify your Kubernetes skills. Details can be found in the "#40daysofkubernetes.md" file on GitHub or by watching our Day 0 video.
    ๐Ÿ“– Course Schedule:
    I'll release 3-4 videos per week and host live Q&A sessions on weekends to answer your questions and guide you through the CKA certification process.
    ๐Ÿ•ต๐Ÿปโ€โ™‚๏ธ Who Should Watch:
    This CKA course is designed for beginners, college students, and working professionals who want to learn Kubernetes from scratch, prepare for the CKA certification exam, or enhance their knowledge. It was designed based on the latest curriculum for the CKA exam in May 2024 and uses 1.30.2 as the Kubernetes version.
    Let's start your Kubernetes journey together!
    ๐—–๐—ข๐— ๐—ฃ๐—Ÿ๐—˜๐—ง๐—˜ ๐—ง๐—จ๐—ง๐—ข๐—ฅ๐—œ๐—”๐—Ÿ ๐—ฆ๐—˜๐—ฅ๐—œ๐—˜๐—ฆ ๐Ÿ‘Œ Itโ€™s ๐Ÿ…ต๐Ÿ†๐Ÿ…ด๐Ÿ…ด โ›ณ
    โœ… ๐—”๐˜‡๐˜‚๐—ฟ๐—ฒ ๐——๐—ฒ๐˜ƒ๐—ข๐—ฝ๐˜€ ๐—ญ๐—ฒ๐—ฟ๐—ผ ๐˜๐—ผ ๐—›๐—ฒ๐—ฟ๐—ผ:
    โ€ข Azure DevOps Zero to H...
    โœ… ๐—”๐—ญ๐Ÿต๐Ÿฌ๐Ÿฌ ๐—”๐˜‡๐˜‚๐—ฟ๐—ฒ ๐—™๐˜‚๐—ป๐—ฑ๐—ฎ๐—บ๐—ฒ๐—ป๐˜๐—ฎ๐—น๐˜€ ๐—™๐˜‚๐—น๐—น ๐—–๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ
    โ€ข AZ900WithPiyush - Azur...
    โœ… ๐—ก๐—ฎ๐—บ๐—ฎ๐˜€๐˜๐—ฒ ๐—š๐—ผ๐—ผ๐—ด๐—น๐—ฒ ๐—–๐—น๐—ผ๐˜‚๐—ฑ | ๐—š๐—–๐—ฃ ๐—ง๐˜‚๐˜๐—ผ๐—ฟ๐—ถ๐—ฎ๐—น ๐—ณ๐—ผ๐—ฟ ๐—ฏ๐—ฒ๐—ด๐—ถ๐—ป๐—ป๐—ฒ๐—ฟ๐˜€, ๐—ฎ ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ฒ ๐—ฝ๐—น๐—ฎ๐˜†๐—น๐—ถ๐˜€๐˜ ๐—ณ๐—ผ๐—ฟ ๐˜๐—ต๐—ฒ ๐—”๐˜€๐˜€๐—ผ๐—ฐ๐—ถ๐—ฎ๐˜๐—ฒ ๐—–๐—น๐—ผ๐˜‚๐—ฑ ๐—˜๐—ป๐—ด๐—ถ๐—ป๐—ฒ๐—ฒ๐—ฟ (๐—”๐—–๐—˜) ๐—–๐—ฒ๐—ฟ๐˜๐—ถ๐—ณ๐—ถ๐—ฐ๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—˜๐˜…๐—ฎ๐—บ:
    โ€ข Namaste Google Cloud, ...
    โœ… ๐—”๐˜‡๐˜‚๐—ฟ๐—ฒ ๐——๐—ฎ๐˜๐—ฎ ๐—ณ๐˜‚๐—ป๐—ฑ๐—ฎ๐—บ๐—ฒ๐—ป๐˜๐—ฎ๐—น๐˜€ ๐——๐—ฃ ๐Ÿต๐Ÿฌ๐Ÿฌ ๐—ณ๐˜‚๐—น๐—น ๐—ฐ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ
    โ€ข Microsoft Azure Data F...
    โœ… ๐—๐—ฒ๐—ป๐—ธ๐—ถ๐—ป๐˜€ ๐—ง๐˜‚๐˜๐—ผ๐—ฟ๐—ถ๐—ฎ๐—น ๐—ณ๐—ผ๐—ฟ ๐—•๐—ฒ๐—ด๐—ถ๐—ป๐—ป๐—ฒ๐—ฟ๐˜€
    โ€ข Jenkins Tutorial For B...
    โœ… ๐Ÿญ๐Ÿฌ๐˜„๐—ฒ๐—ฒ๐—ธ๐˜€๐—ผ๐—ณ๐—ฐ๐—น๐—ผ๐˜‚๐—ฑ๐—ผ๐—ฝ๐˜€ - ๐—ฅ๐—ฒ๐—ฎ๐—น-๐˜๐—ถ๐—บ๐—ฒ ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜… ๐—ต๐—ฎ๐—ป๐—ฑ๐˜€-๐—ผ๐—ป ๐—ฝ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜๐˜€ ๐—ผ๐—ป ๐—–๐—น๐—ผ๐˜‚๐—ฑ ๐—ฎ๐—ป๐—ฑ ๐——๐—ฒ๐˜ƒ๐—ข๐—ฝ๐˜€
    โ€ข 10WeeksOfCloudOps Chal...
    โœ… ๐——๐—ฒ๐˜ƒ๐—ข๐—ฝ๐˜€ ๐—ฎ๐—ป๐—ฑ ๐—–๐—น๐—ผ๐˜‚๐—ฑ ๐—ฃ๐—ผ๐—ฑ๐—ฐ๐—ฎ๐˜€๐˜๐˜€:
    โ€ข DevOps and Cloud Podcasts
    โœ… ๐—š๐—ถ๐˜๐—น๐—ฎ๐—ฏ ๐—–๐—œ ๐—–๐—— ๐—ง๐˜‚๐˜๐—ผ๐—ฟ๐—ถ๐—ฎ๐—น | ๐—˜๐—ป๐—ฑ ๐—ง๐—ผ ๐—˜๐—ป๐—ฑ ๐—ฅ๐—ฒ๐—ฎ๐—น-๐˜๐—ถ๐—บ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜ [๐—™๐˜‚๐—น๐—น ๐—–๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ]
    โ€ข Gitlab CI CD Tutorial ...
    Subscribe to our channel to get notified about the latest videos.
    ๐Ÿ”ฅ / techtutorialswithpiyush
    -----------------------------------------------------------------------------------------------------------------------
    ๐—–๐—ผ๐—ป๐—ป๐—ฒ๐—ฐ๐˜ ๐—บ๐—ฒ ๐—›๐—ฒ๐—ฟ๐—ฒ:๐Ÿ‘‡๐Ÿ‘‡
    ๐Ÿ”ฅ๐—ฌ๐—ผ๐˜‚๐—ง๐˜‚๐—ฏ๐—ฒ โ–ถ / techtutorialswithpiyush
    โ›ณ๐—Ÿ๐—ถ๐—ป๐—ธ๐—ฒ๐—ฑ๐—œ๐—ป โ–ถ / piyush-sachdeva
    ๐Ÿš€๐—œ๐—ป๐˜€๐˜๐—ฎ๐—ด๐—ฟ๐—ฎ๐—บ โ–ถ / techtutorialswithpiyush
    ๐ŸŒ๐—ง๐˜„๐—ถ๐˜๐˜๐—ฒ๐—ฟ โ–ถ / techie_piyush
    ๐Ÿ‘จโ€๐Ÿ’ป ๐—š๐—ถ๐˜๐—ต๐˜‚๐—ฏ โ–ถ github.com/piyushsachdeva
    โœ ๐— ๐—ฒ๐—ฑ๐—ถ๐˜‚๐—บ.๐—ฐ๐—ผ๐—บ โ–ถ / piyush.sachdeva055
    ๐Ÿ“š ๐—ฑ๐—ฒ๐˜ƒ.๐˜๐—ผ โ–ถ dev.to/piyushsachdeva
    โœจ๐——๐—ถ๐˜€๐—ฐ๐—ผ๐—ฟ๐—ฑ โ–ถ / discord
    -----------------------------------------------------------------------------------------------------------------------
    References ๐Ÿ“š:
    #devops #kubernetes
  • Vฤ›da a technologie

Komentรกล™e • 59

  • @sonalpriya5503
    @sonalpriya5503 Pล™ed 15 dny +1

    Kubernetes Services seems simple now.
    Thank you for all of your efforts ๐Ÿ™‚

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 15 dny

      Kubernetes is simple, people just made a hype out of it. If you start enjoying Kubernetes, it's all a piece of cake considering you are doing hands-on, facing the issues and fixing the issue. Start with fundamentals and then gradually go in depth

  • @gabrielakins8240
    @gabrielakins8240 Pล™ed 14 dny +1

    Thank you for this!

  • @nope-ms4rx
    @nope-ms4rx Pล™ed 17 dny +1

    Breaking down the basics with ease and helping laymen like myself make sense of all the endless documents that we can get caught up reading. You are the man Piyush!

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 16 dny

      It feels great to know that my approach is well received by my viewers and you are seeing value in the content. That's all matters to me :)

  • @hiranyawg
    @hiranyawg Pล™ed 26 dny +1

    Thanks!

  • @guntreddirajesh
    @guntreddirajesh Pล™ed 13 dny +1

    Thankyou so much piyush , i see lot of value in your content & the way you explain is awesome . on target to complete CKA certification with your videos

  • @kanikv4480
    @kanikv4480 Pล™ed 25 dny

    Awesome class ๐ŸŽ‰.
    Thank you for your valuable free content.โคโคโค

  • @gurum2364
    @gurum2364 Pล™ed 24 dny +1

    Thankyou

  • @vinaykumar-qq9wq
    @vinaykumar-qq9wq Pล™ed 6 dny

    Couldn't watch for a week. But still able to relate things pretty well. Mastery in teaching. Keep up good work.
    Although I'm coming here to revise my kube knowledge. Your teaching skills are pretty neat โค

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 6 dny

      Well, I try to improve every time I can. Continuous improvement with the help of constant feedback, isn't that what a DevOps engineer does? :) Thank you for your support and feedback. I appreciate it

    • @vinaykumar-qq9wq
      @vinaykumar-qq9wq Pล™ed 6 dny

      @@TechTutorialswithPiyush perfectly said. ๐Ÿ‘๐Ÿ‘

  • @user-je9fo4wp9q
    @user-je9fo4wp9q Pล™ed mฤ›sรญcem +1

    thanks

  • @vm_naveen
    @vm_naveen Pล™ed 23 dny +1

    Thank you for the explanation on Services :)

  • @sagarbirla2879
    @sagarbirla2879 Pล™ed 23 dny +1

    amazingcontent

  • @artbart9080
    @artbart9080 Pล™ed 28 dny +1

    Thank you! It took me some time to reproduce and understand service types.

  • @AI_suraj_singh_
    @AI_suraj_singh_ Pล™ed mฤ›sรญcem +1

    thanks Piyush bhai ..really helpful ..

  • @ebenezerbarning5093
    @ebenezerbarning5093 Pล™ed mฤ›sรญcem +1

    thanks sir.

  • @Anonymous_810
    @Anonymous_810 Pล™ed 7 dny

    cfbr โ™ฅ

  • @tendaimakuwerere5693
    @tendaimakuwerere5693 Pล™ed 29 dny +1

    Thank you, #cka

  • @radhikagudidesi5486
    @radhikagudidesi5486 Pล™ed 9 dny +1

    I installed Kind on the EC2 instance and am working there, while accessing the application 0f 30001 port I am getting a timed-out error, even though I added inbound rules for the node port and NACL is also allowing the port. Could you help me understand where I am getting wrong?

  • @karnajeetsawant5635
    @karnajeetsawant5635 Pล™ed mฤ›sรญcem +1

    woah.. Damn awesome video Piyush. That was a lot to cover. I dont know why but I got some kind of rush ๐Ÿ˜…. Understood all the part. However, I have this question. I know you might have covered in the videos, but still gotta ask. So, what exactly is the heirarchy in kubernetes. i mean I understood the basic like pod is the smallest unit, then node then all nodes form clusters etc. But if we talk on a different level, say replicastes, deployments etc. then what is the heirarchy over here?

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 29 dny +2

      Thank you for the feedback! Pod is the smallest deployable unit in Kubernetes but the pod could have multiple containers. Pods are managed by replicaset which is then managed by deployment. Deployments are exposed by services and each of these resources can run on multiple nodes. Collection of similar nodes are called nodepools(cloud related concept) , multiple node pools form a cluster. Resources are also isolated among namespaces(next video) , there are other resources such as Daemonset, cronjobs, job etc which we will be covering in later videos. Hope this helps :)

  • @akifsalah9686
    @akifsalah9686 Pล™ed 23 dny +1

    So Using kind cluster we cannot run application through it has to be run through localhost?

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 23 dny

      Kind is a local kubernetes installation meaning , everything is running locally and there is no external IP that's been exposed. so, yes it has to be accessed by localhost or you can use kubeadm installation of virtual machines, which we have covered later in the series.

  • @pradeepnpkumar1881
    @pradeepnpkumar1881 Pล™ed mฤ›sรญcem +1

    Thanks for the Video Piyush. Can you please make a video on how k8s networking will be handled in production environment

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 29 dny

      Thanks Pradeep. Networking in production is really a complex topic hence, I did not want to cover for a beginner series. I will try to cover this once I am done with the CKA series.

  • @hetpatel1772
    @hetpatel1772 Pล™ed 29 dny +1

    i want to know does we had done something like port-mapping for kind cluster ?

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 29 dny

      Yes, we have to do the port mapping for kind. As the containers are acting as node, we have to expose the containers on port

  • @popurisrinivas5479
    @popurisrinivas5479 Pล™ed 27 dny +1

    Hi Piyush, How service and pod will talk each other. with help of match lables

  • @BhaveshKansagaraOfficial
    @BhaveshKansagaraOfficial Pล™ed mฤ›sรญcem +1

    What would be real exposed port is 80 or 30001 because in one of my earlier particles getting output from 80 and not from 30001. I used minikube and for kind i use NodePort.

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 29 dny

      Application is exposed on nodeport hence 30001 also we did the port mapping on 30001. Can you try to do port mapping in kind yaml on port 80 and then see on which port you are able to access the application on?

  • @hiranyawg
    @hiranyawg Pล™ed 26 dny +1

    Thank you very much Piyush can i use the Docker desktop instead of Kind

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 26 dny +1

      You're welcome buddy! You can use, but I dont think it has a support for multi node cluster. Kind is simple to setup and use and it uses docker containers as nodes.

    • @hiranyawg
      @hiranyawg Pล™ed 26 dny +1

      @@TechTutorialswithPiyush yes no multide ill setup kind

  • @password301992
    @password301992 Pล™ed 29 dny +1

    Hi Piyush, thanks for winderful stuff ! I have one question here, let say if we want to expose few more ports in kind , so we really need to re-create the cluster with new port mappings ?

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 29 dny

      Yes, you need to recreate the cluster as kind doesnt support cluster update. In day27, we will perform kubeadm installation on virtual machines which eliminate these kind of steps.

    • @password301992
      @password301992 Pล™ed 29 dny

      @@TechTutorialswithPiyush Awesome Thanks for prompt reply ! Kudos

  • @salmanbintariq007
    @salmanbintariq007 Pล™ed 27 dny

    Sir i have a question. Can we have a service without selector? And what are the industry standards either they use Type LB or something else? Because LB type will be costly.

    • @TechTutorialswithPiyush
      @TechTutorialswithPiyush  Pล™ed 27 dny +1

      Hello Salman, No, service needs a selector so that it expose a pod/deployment .
      Industry standard is to use a managed cloud loadbalancer(if they are on cloud) , external LB(such ad Big5, Metalb) if they are on-premises or a privata data centre and Ingress for applications exposed externally , for internal use , clusterIP and nodeport for some cases. We will be covering Ingress in video #33

  • @akifsalah9686
    @akifsalah9686 Pล™ed mฤ›sรญcem +1

    Thanks..!! Very Informative Video

  • @floehden
    @floehden Pล™ed 29 dny +1

    Thank you for this!

  • @atrofsk
    @atrofsk Pล™ed 27 dny

    Thanks!