Create a Kubernetes TLS Ingress from scratch in Minikube

Sdílet
Vložit
  • čas přidán 2. 04. 2018
  • HTTPS and TLS are hard! Wrong! This video will prove you wrong. We'll start with an empty cluster and and end up with a web server ready for HTTPS. How can we do all of that in one video? Thanks to the TLS configuration on Kubernetes' Ingress Resource. If you're not familiar with kubectl's more imperative commands, such as 'run', 'create' or 'expose', you'll also be in for a treat!
  • Věda a technologie

Komentáře • 95

  • @gmanireland
    @gmanireland Před 5 lety +6

    great job, no messing straight to the point. keep up the good work. The fast pace is good too.

  • @ajitsingh4346
    @ajitsingh4346 Před 4 lety +1

    Excellent, code worked flawless and nothing explains better than a working code than pages of documents.

  • @mbigras
    @mbigras Před 3 lety +3

    The pace of this video was excellent!

  • @anilkommalapati6248
    @anilkommalapati6248 Před 2 lety +3

    Wowwww this is really incredible. No fuss, no lags, no spins.... No blah blah blah ....STRAIGHT ARROW ONTO TARGET.
    Crystal clear and this so easy felt like drinking a starbucks coffee..
    super man and thank you very much.

  • @tinge904
    @tinge904 Před 5 lety +5

    Great tutorial - short and concise!

  • @istvanszabo6875
    @istvanszabo6875 Před 8 měsíci

    Well done Sir! 👏

  • @mohamed_faris_247
    @mohamed_faris_247 Před 11 měsíci

    THANK YOU THANK YOU THANK YOU
    Simple, great, fast, and to the point.
    Keep up the great work man!

  • @weiyen
    @weiyen Před 3 lety +1

    Your videos are one of the best explained videos I have seen. Well done. Looking forward to more

    • @kubucation
      @kubucation  Před 3 lety +1

      Thank you. I don’t have a lot of time at the moment, unfortunately, but I’ll always try to record a video here and there. So stay tuned for more.

  • @Calm_Energy
    @Calm_Energy Před 4 lety

    wow that's a loud keyboard! Thanks for the great videos, nice and dense with no fluff, just like I like

  • @lbognini
    @lbognini Před 6 lety +13

    Great content with clear explanations! You're really doing an awsome job!

  • @DanielBarraganCalderon

    Awesome thanks , I am looking forward to understand how the whole istio security stack works and your videos have been very useful

  • @LoveWillTearUsAppart
    @LoveWillTearUsAppart Před 3 lety

    Nice!
    A couple of words. I needed to play again and again because you go too fast, but may be its a very personal appreciation. However, after not having clear what the documentation means in the TLS subject, you helped me. Thanyou!.

  • @steputube
    @steputube Před 3 lety

    Short and sweet! Love it.

  • @r.h.u.k.a
    @r.h.u.k.a Před 3 lety +1

    Amazing, thanks for this tutorial. Great explanation.

  • @dasgoll
    @dasgoll Před 6 lety +1

    I love your videos man.Keep up the good work. Cheers!

    • @kubucation
      @kubucation  Před 6 lety

      Thanks so much! That’s super motivating!

  • @Rashmi-yt1zf
    @Rashmi-yt1zf Před 7 měsíci

    awesome content 👌

  • @jamallmahmoudi9481
    @jamallmahmoudi9481 Před 9 měsíci

    very cool
    Brief, useful and practical
    thank you so much 🙏👌

  • @hengborchhay6388
    @hengborchhay6388 Před 3 lety

    the tutorial is very helping full sir especially about the imperative command to generate the certificate very cool thing!!!

  • @suibinzhang6782
    @suibinzhang6782 Před 5 lety +1

    Love ur tutorials, succinct, straight to the point. Nice work and keep it up!

    • @etiennedilocker9729
      @etiennedilocker9729 Před 5 lety

      thanks for the great feedback. Didn't have a lot of time lately to add new videos, but definitely will add more in the future!

  • @faouzichelighem5927
    @faouzichelighem5927 Před 2 lety

    Awesome!! thank you for this clear explanation.

  • @thespencerowen
    @thespencerowen Před 5 lety

    Best TLS videos on the internet!

  • @hareeshjp
    @hareeshjp Před 3 lety +1

    Clear crystal explanation thank you very much

  • @bendes666
    @bendes666 Před 4 lety +1

    Thanks a lot for the clear tutorial !

  • @lindhe
    @lindhe Před 3 lety +12

    Just a quick heads-up to anyone following this tutorial line-by-line without thinking: at 4:50 he writes a > while he should have written >>. Having only a single > will overwrite your hosts file, which is pretty undesirable.

    • @kubucation
      @kubucation  Před 3 lety +3

      Oh, good catch! Completely agree, don't overwrite your hosts file, append to it instead ;-)

    • @andrusaren8348
      @andrusaren8348 Před 3 lety

      @@kubucation and, instead of typing "clear" to clear terminal window just hit ctrl+l (small L)

  • @trainchen9861
    @trainchen9861 Před 5 lety

    This is an awesome video for me! Thanks a lot!!!

  • @olva
    @olva Před 5 lety +3

    Thank you so much for saving my life:), this video really helped me a lot , the funny part this video has only 558 viewers, while my son watching toys hot wheels videos each one has over million views :)

    • @kubucation
      @kubucation  Před 5 lety +2

      Only a matter of time until Kubernetes is more popular than toy cars ;)

    • @ahmedw5
      @ahmedw5 Před 8 měsíci

      Well, today this video has almost 70 000 views. Not exactly at a million yet but hey, its still a big jump!

  • @sriramdharwadkar5084
    @sriramdharwadkar5084 Před 3 lety

    Awesome tutorial! Thanks a lot.

  • @Shubham__Saroj
    @Shubham__Saroj Před rokem

    Straight to the point.

  • @mvlad7402
    @mvlad7402 Před 3 lety

    very nice explanation and example

  • @TheKutall
    @TheKutall Před 4 lety +1

    Thank you so much. You really help.. BIG SMILE ::::)

  • @MrHikokunin
    @MrHikokunin Před 4 lety

    Thank you man, nice video!

  • @pizza-cat1337
    @pizza-cat1337 Před 4 lety +1

    very useful for learning.. thanks

  • @eXpire163
    @eXpire163 Před 4 lety

    Cool, Great job

  • @GhassenKhalilAti
    @GhassenKhalilAti Před 3 lety

    Thanks for the tutorial. I'm using Docker Desktop default K8S cluser, so what's the equivalent of the cmd : minikube addons enable ingress ?

  • @unicornsarena4030
    @unicornsarena4030 Před 3 lety

    Great explanation. This example shows TLS termination, is it possible to achieve TLS bridging (end to end encryption) with Ingress ?

  • @sahdevchauhan
    @sahdevchauhan Před 5 lety

    @kubucation - which zsh theme are you using???

  • @bobreselman5731
    @bobreselman5731 Před 5 lety

    Nice video, thanks!

  • @parthibanramasamy4701
    @parthibanramasamy4701 Před 5 lety

    Its very nice tutorial! I have question here how can i enable both http and https for the same host?

  • @nintros6770
    @nintros6770 Před 4 lety +1

    Very good video. I have added tls to ingress and all external requests are protected. Could you tell how set up tls for internal k8s connection? For example I have auth service that available outhside and inside of k8s.

  • @tillus7101
    @tillus7101 Před 2 lety +1

    would be great if you could update this: `error: unable to recognize "base-notebook/ingress.yml": no matches for kind "Ingress" in version "extensions/v1beta1"`

  • @edgarlip2
    @edgarlip2 Před 2 lety

    the in depth style is more needed - since this is a tutorial ... = )

  • @Abhishekkumar-rp8hi
    @Abhishekkumar-rp8hi Před 3 lety

    And it works!

  • @Fayaz-Rehman
    @Fayaz-Rehman Před 3 lety

    Thanks for the easy solution - How do we make these keys as trusted tls and use them on internet.

  • @rafaelclaumannbernardes2366
    @rafaelclaumannbernardes2366 Před 8 měsíci

    can i use this certificate validation without Ingress host rule? just using http and paths.

  • @riturajsinha8332
    @riturajsinha8332 Před 4 lety

    Hi there great video ...if you get some time can you add something on kong api gateway as well ...

  • @fernandocambria5764
    @fernandocambria5764 Před 5 lety

    Thanks!

  • @MrGauravMittal
    @MrGauravMittal Před 4 lety

    Hi, I have a cluster of 2 worker node and a master. Now when I create an entry of example.com in the /etc/hosts, which IP should I populate in that. Is it of worker-1 or worker-2 or K8s Master

  • @TheEbbemonster
    @TheEbbemonster Před 2 lety

    Good video! Next, how do we create a Let's Encrypt certificate?

  • @yssouftoure2326
    @yssouftoure2326 Před 5 lety

    good video

  • @WilliamCodewizard
    @WilliamCodewizard Před 5 lety

    Nice, how can I put that bar with green cartel?

  • @jeanandrewfuentes2995
    @jeanandrewfuentes2995 Před 5 lety

    Hi! i tried following the instructions but i don't think my ingress is communicating with my service.
    I'm doing it in a kubernetes cluster 1 master and 1 worker node.
    Do i have to install anything like what you did for the minikube for the real cluster? im using kubeadm, and flannel for networking
    Name: nginx
    Namespace: default
    Address:
    Default backend: default-http-backend:80 ()
    Rules:
    Host Path Backends
    ---- ---- --------
    ghost.whitecloak.io
    / nginx:80 ()
    Annotations:
    kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"extensions/v1beta1","kind":"Ingress","metadata":{"annotations":{"kubernetes.io/ingress.class":"nginx"},"name":"nginx","namespace":"default"},"spec":{"rules":[{"host":"ghost.whitecloak.io","http":{"paths":[{"backend":{"serviceName":"nginx","servicePort":80},"path":"/"}]}}]}}
    kubernetes.io/ingress.class: nginx
    ---
    NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
    nginx ClusterIP 10.111.219.92 80/TCP 55m

  • @letme4u
    @letme4u Před 4 lety +1

    Great !!!

  • @sarfarazshaikh
    @sarfarazshaikh Před 4 lety

    Can we generate live ssl certficate and put it in ingress ? Will it work?

  • @khai-chuongtrinh1429
    @khai-chuongtrinh1429 Před 3 lety

    hi thanks for posting this video. i tried following and got everything working up to the point where you access the web server thru the browser. I am getting ```uses an invalid security certificate. The certificate is not trusted because it is self-signed. Error code: MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT```. When I curl it using those -k and --cacert flags it works fine, I can see the HTML content. What am I doing wrong?

  • @aishwarya921
    @aishwarya921 Před rokem

    This will only run on my local, right? How can I make it publicly accessible? I want my load balancer service to be accessed publicly with https. I have my application running on kubernetes

  • @VinuezaDario
    @VinuezaDario Před 4 lety

    Hi, Failed connect to tls.nginx.example.com:443; Connection refused?

  • @dasgoll
    @dasgoll Před 6 lety

    At 10:26 what did you do to open the editor to edit the command?

    • @kubucation
      @kubucation  Před 6 lety +3

      Ctrl X + Ctrl E. Works in any bash-like shell and opens whatever you have configured in $EDITOR, I believe.

  • @DanMackAlpha
    @DanMackAlpha Před 3 lety +2

    so the ingress.yaml still specifies port 80 after switching to tls version?

    • @jaysistar2711
      @jaysistar2711 Před 3 lety +2

      Yes, the Ingress controller decrypts https to http, so you would tall to your internal services in cleartext http. The way that is ussualy said is "The Ingress Controller does TLS termination." If you really want TLS between your services, then you can use a service mesh like LinkerD or Istio, but even then, it looks to your application as if you're speaking plain text.

    • @sasyachowdary3144
      @sasyachowdary3144 Před 3 lety

      @@jaysistar2711 Any example how we can enable TLS all the way from client to the service?

    • @jaysistar2711
      @jaysistar2711 Před 3 lety +1

      @@sasyachowdary3144 As I said in the previous comment, LinkerD and Istio do TLS all the way to the pod. Within the pod, a sidecar container running an layer 7 proxy (fancy way of saying "understands application protocols like your database and http, etc.") is given all network traffic, and it encrypts and decrypts all traffic entering and leaving the pod. That's called mTLS or "mutual TLS". Installing LinkerD or Istio is easy, but not something that can fit in a comment here. Also, something important to note, in the case of Istio you would use a Gateway and VirtualService instead of an Ingress object.

    • @sasyachowdary3144
      @sasyachowdary3144 Před 3 lety +1

      @@jaysistar2711 thanks for the reply. Let me check them out.

  • @Prizmo21
    @Prizmo21 Před 5 lety

    @kubucation how can you remove what you appended in the /etc/hosts file?

    • @DanMackAlpha
      @DanMackAlpha Před 3 lety

      just edit /etc/hosts and remove the line when you are done. Probably need 'sudo vi /etc/hosts' if you are not root.

  • @johnclarkson6120
    @johnclarkson6120 Před 5 lety

    so great subscribe

  • @naim2083
    @naim2083 Před 2 lety

    Can you Make a vidéo for trusted certificat

  • @devb02
    @devb02 Před 2 lety

    Which version of ingress is this :O

  • @utiogaga1586
    @utiogaga1586 Před rokem

    cool

  • @fredteixeira3604
    @fredteixeira3604 Před 4 lety

    this echo "$(minikube ip) ..., do you really do that in your real life?

  • @satyapallekonda8017
    @satyapallekonda8017 Před 2 lety

    hii ,The video is great but i am getting version error

  • @3paszczak
    @3paszczak Před 5 lety

    Hi, I've created ingress but when I type "kubectl get ing" I can't see adress ip of my ingress. What shall I do? Is there option to use ingress without adress ip?

    • @kubucation
      @kubucation  Před 5 lety

      This depends on the type of cluster you are using. On GKE for example you automatically get external loadbalancers on your ingresses, that's the IP shown. If you're running on minikube or a custom on-premise cluster for example, you might not get those.

    • @3paszczak
      @3paszczak Před 5 lety

      Yes, I use minikube. When I created nginx I got ip, but when I use other image I don't get IP.

  • @inzheneher
    @inzheneher Před 2 lety

    At k8s 1.20 it doesn't work. It is impossible to create Ingress.

  • @jaysistar2711
    @jaysistar2711 Před 3 lety

    I got nervous when he had the single ">" after he said "append". I don't know how to yell ">>", but I'm pretty sure that I was.

  • @OlivierBerger
    @OlivierBerger Před 4 lety

    Too bad the commands you typed aren't available in the description of the video. Other than that it shouldn't be hard to replicate

    • @OlivierBerger
      @OlivierBerger Před 4 lety

      Oh, and btw, I just found that post that contains many of the commands, plus a few interesting bits : vocon-it.com/2018/12/31/kubernetes-6-https-applications-via-ingress-controller-on-minikube/

  • @rafaelferreirarocharafaelxp

    I'm getting 404x when I try exemple.com I did everything you said

  • @Hujino26
    @Hujino26 Před 3 lety

    how do you make this shortcut? czcams.com/video/7K0gAYmWWho/video.html

  • @vanphan8499
    @vanphan8499 Před 2 lety +1

    Great video and explanation. Any chance you have an updated one with "networking.k8s.io/v1 Ingress" since extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+