Just to clarify, every EVERY videos from Mr.Dempers are clear and intuitive even for both newbie and intermediate k8s users. I like the way you edit the video, your speech are continuous and delay exactly on time. Your voice are clear, the illustration from images are straightforward. Step by step guiding are totally insane for such low-level users. It worth every second watching your channel even on holiday. Thanks to your project. I jumped to K8s Intermediate level really fast.
@MarcelDempers2 жыл бұрын
Thank you for the kind words 🙏🏼
@noo-sho85003 жыл бұрын
I know it's big words, but IMO you are creating the best DevOps channel on YT. Thanks for your hard work!
@MarcelDempers3 жыл бұрын
Thank you for the kind words 🙏🏽
@Chiprohydrate3 жыл бұрын
You are sir, the reason why I am watching work related videos at holidays. Really interesting, informational and cool edited content. Keep it up!
@laurent.treguier3 жыл бұрын
I now have my first app properly deployed with k8s, using cert-manager to rotate certificates, in great part thanks to this video!
@machtnyx3 жыл бұрын
And all of a sudden the mist of magic around kubernetes/ingress/docker begins to disappear. Thank you Marcel, please keep going! It's absolutely helpful watching your videos.
@TheArpitkoberoi4 жыл бұрын
Struggled with this when i was starting out with k8s. This would be very helpful for beginners.
@yashizuko8 ай бұрын
Well thank you ALOT for this! you dont even know how many hours i was on this subject, now i can have this configuration and make it work in my cluster, many guides just forgets to mention the nginx ingress, thanks for the clear instructions!
@Madeinchinaagain3 жыл бұрын
These videos really are fantastic. They bring so much clarity to an otherwise mystical system...
@ipup97252 жыл бұрын
Thanks to you, I finnaly combined the results of 10+h of googling and resolve the certificates issuing
@denisalustau3 жыл бұрын
the only place I could find my answer! Thanks a lot! Subscribing now
@Ankur5125122 жыл бұрын
Thank you so much dude. Had to complete a Test assignment for an interview and it helped. :)
@ryanwendel6115 Жыл бұрын
One of the best tutorial videos I've ever seen. Def subbed. Def going back through your catalog. Might even push a tweet out about it! Thanks, Marcel.
@adrianpop65213 жыл бұрын
way too underrated channel, while all the channels should be like this
@jaked47362 жыл бұрын
I think this is EXACTLY what I needed to see to learn how to cert my cluster. Thank you!
@waynefl76 Жыл бұрын
Thank you for taking the time to create such thoroughly informative videos. It is appreciated more than you know!
@MrSuriyam10 ай бұрын
GM sir, through your guided video I am able to learn kubernetes and how secret it is. Thank you 🙏 for the teachings sir you are DHA 🌳 groot.
@ThatOdooGuy4 жыл бұрын
You read my mind :). Exactly what I was looking for... Great content and wonderful presentation. Keep it up!
@Han-ws8he3 жыл бұрын
Thanks! The only issue I ran into is the permission for binding port 80 & 443 on ec2 instance where kind cluster running. I had to assign setcap for kubectl. It works!
@medamineblibech564129 күн бұрын
thank so much sure for your explication about cert-manger . I be grateful to you answer me about what the problem in ingress is invalid host header when I deploy my app ?
@HestonSinurayaJogja3 жыл бұрын
Thank you for the step by step how-to Marcel. I was able to install a multi-domain certificate into my kubernete cluster. You are my hero sir.
@ChronicWhale3 жыл бұрын
Thank you so much for all your tutorials, they're incredibly useful, well made and clear
@jackjackjackjack Жыл бұрын
every video of yours I have watched has been so incredibly helpful. thank you.
@CRuas-vu9xo3 жыл бұрын
Hey Marcel, the best video explaining this subject. I've done everything working perfectly then stopped work because got expired. Now I'm trying to find out how to renew.
@marcchen45742 жыл бұрын
thanks, do you have a video with eks + aws load balancer as ingress controller as example?
@saarang46373 жыл бұрын
Thank you so much for this tutorial. You have explained all the concepts so well. I already had everything setup and just required the tls to be setup. It is done now.
@Palex199011 ай бұрын
Very nice tutorial thank you. I am wondering if I can use it... How to use the cert-manager when you have an external load balancer? I have a three node rancher cluster with an external nginx load balancer? It's not possible since cert-manager does not expose the secrets right?
@gantushigsaruul24899 ай бұрын
Thank you for your great tutorial. It was very educational and helped me to learn a lot of topics. However I do have a problem with installing and using cert-manager with the GKE autopilot cluster. The cert manager installs but the webhook doesn't work. Tried with Helm too. Not avail. Is there anything to recommend, please?
@Daniel-yl5fi3 жыл бұрын
I love all the videos I watched from you. Basically, you make sooo valueable guides! I wish your channel had 1M subs and more views because damn, your content is awesome!
@GertvandenBerg3 жыл бұрын
MetalLB works well for LoadBalacner services on on-site clusters (not sure about in KinD though...) The other method if ingresses are involved is to use the "cert-manager.io/cluster-issuer" or "cert-manager.io/issuer" annotations. With that, cert-manager will create the Certificate object as well.
@pigrebanto Жыл бұрын
Great! how are certs renewed afterwards?
@Easyjeevan4 жыл бұрын
This is what I was looking for complete SSL in k8s and there are dozens of places which give some information but not complete and very well explained. You did a great job. This is awesome. It really helped me. As always Thanks and wish you a very happy new year 🥳
@MarcelDempers4 жыл бұрын
Thanks for the kind words 💪🏽 Happy new year 🎉🍻
@ganeshpawar2312 ай бұрын
Is it important to have domain name? Or we can also do it by editing /etc/hosts file and set up temp domain? Why because I am doing it on minikube and I have done issuer.yml and it's just showing "Issuing certificate as Secret does not exist" and not creating extra ingresses which will be created after updating ingress.yml with tls: and annotations: Please let me know... Thanks
@techiepills Жыл бұрын
Wow! 😊 Thanks Marcel! Thats the best tutorial out there.
@NysaSyna2 жыл бұрын
Can you do a video on how to install wildcard ssl on ks8
@itsmepakky2 жыл бұрын
thanks for this video, i have one question, will certmanager will work with NLB in EKS with nginx or kong ingress controller ?
@ahmadooof3 жыл бұрын
More than great, you deserve millions of subscribers
@vincenzocalia6552 Жыл бұрын
Marcel you are the top one! Your content is always really clear, enjoyable and to the point. At time I get lost with som cli command you use but hey, that makes me a better dev. So once again thank you very much for the effort you put in it. I'm now finally getting into cert management for my cluster on Azure and this was a great deep intro to it.Now I just need to translate it to Terraform lol 😅 A big hug from Italy
@Roan1669 Жыл бұрын
Dude!!! You are a freakin legend! Thank you so much for the great content and resources in GIT
@devt16273 жыл бұрын
Do you think you could make a video on how you make your videos? Really love your stuff!
@this_minizilla2 жыл бұрын
Amazing video, really clearing up my headache of setting up SSL.
@gabbah793 жыл бұрын
We followed this and it was a breeze thanks to this awesome tutorial! Thanks 🙏🏻
@sarfarazshaikh4 жыл бұрын
Great Video and Great Explanation. How can we generate the wildcard certificate using cert-manager and aws route53 using dns challenge method.
@kannanswaminathan82103 жыл бұрын
i have multiple applications running in multiple namespaces. Currently i am coping the secret yaml file to all the namespaces. I also have ingress rules in namespace. How to manage the secret file accross the namespace?
@Shawn-Mosher4 жыл бұрын
Thank you! I was just playing around with this on a kind environment when you dropped your video!
@rockjoly64922 жыл бұрын
It is kind of way too easy now to be a programer now. Thank you! :)
@guents3 жыл бұрын
Maan if all those kubernetes commands you ran worked for me as well as they do for you, I would be 5 years younger :D... thanks for the content, great explanation!
@robertsarnapeta5825 Жыл бұрын
what kind of challenge will be raised by cert-manager and if the challenge fails, then secret wont get created. isnt it.? what are those cases where the challenge will not complete. please explain. Thanks in advance!
@gopikrishnap07 Жыл бұрын
if dns01 solver, what are the records needed to create on Cloudflare?
@ConnorHaythem2 жыл бұрын
Hi, I tried this in a kubeadm cluster in cloud vms, when i deploy nginx controller, i can access it. but after that when i try to expose a service using a nginx object it returns 302 in a loop
@LemontJap2k3 жыл бұрын
Do you have a video about MTLS ?
@chijinduiwuchukwu23011 ай бұрын
Thanks so much for this. If I am using EKS cluster and route 53 manages my DNS, there is no IP address issued when I set the kubernetes service type as load balancer, instead a NLB is created on AWS, and the NLB endpoint shows under the external IP colunm. Can I use this NLB endpoint in place of the IP address and map it to my custom domain name and still have the certificate issued to my domain and have it working properly?
@MarcelDempers11 ай бұрын
Yes you could. You can map your domain to that as a CNAME record and should work
@chijinduiwuchukwu23011 ай бұрын
Oh great. Thanks so much @@MarcelDempers
@Navinprasad083 жыл бұрын
For inside cluster communication, can we use cert-manager? any docs available please?
@Equality-and-Liberty3 жыл бұрын
Is this also going to work in a situation where port 80 and 443 is forwarded to my Synology NAS? my Kubernetes cluster is running on a server. In the past, I spun up an Nginx container to secure my environment with a certificate from let's encrypt, but it never worked because the port was forwarded to my NAS.
@developer-guy4 жыл бұрын
Best video I have ever seen related to that topic
@davidmontdajonc63323 жыл бұрын
Hi, why do you create an nginx Ingress load balancer and then another load balancer for the application service?
@MarcelDempers3 жыл бұрын
These are basic two basic kubernetes concepts with different roles. Ingress is a conceptual mechanism to route traffic based on rules. "I want to route this domain and this path to this internal k8s service. Under the hood its an NGINX proxy that does the work. It cannot get a public IP without a service construct. Service constructs with (type Loadbalancer) interfaces with the cloud and it's main purpose is to give the cluster a public IP and to load balancer traffic from outside to the ingress controller.
@davidmontdajonc63323 жыл бұрын
@@MarcelDempers Ok I get the point, the thing is that when I create the ingress-nginx controller it already creates a physical Load balancer in my cloud provider managed kubernetes service so when I apply the application deployment and service of type Load balancer it creates a second physical LB and I end up with two physical LBs which is quite confusing. How can I use the first created LB to apply my app's deploy and service without creating a new LB? Should I first create this (the app's deploy and svc) of type LB and then apply a simple ingress? Thanks Marcel!
@MarcelDempers3 жыл бұрын
@@davidmontdajonc6332 You would create the ingress controller first which would use a service to get a public ip (via a load balancer). Applications that wish to route via ingress should set their service type to ClusterIP as they dont need a load balancer. Then deploy an ingress rule to route a domain and path to the target application service.
@davidmontdajonc63323 жыл бұрын
@@MarcelDempers Thanks! It works as expected now but I need to add some annotations to the ingress controller service configuration like: "service.beta.kubernetes.io/do-loadbalancer-protocol: http" etc. in order to work for websockets. How do I edit that config for the ingress-nginx controller LB? Ok it's: kubectl edit svc -n ingress-nginx ingress-nginx-controller in case someone needs it.
@sureshkachwa10013 жыл бұрын
What if we need a wild card certificate, for different Namespaces different certificate will be created based on the host name and that too with HTTP01 challenge
@martintovmassian55382 жыл бұрын
Helped me a lot even in 2022! Thank you very much!
@ahmedahmed-my1iq Жыл бұрын
is this safe to implement both in prod and no prod?
@albinantony173 жыл бұрын
when I check describe my certificate it seems like>>>>> Issuing certificate as Secret does not exist Do you have any idea showing this? Could you pleae help me on this?
@SimarMannSingh2 жыл бұрын
Video Request (If possible): Comparision between K8s, MicroK8s, K3s etc ? What is the difference between docker and containerd, services wise (under the hood)?
@Tech__Futures3 жыл бұрын
What the heck man? This video is amazing! I'm glad that I've found you 😊
@2sourcerer3 жыл бұрын
Thanks a lot, I got it set up! So this is called TLS termination in Nginx since behind Nginx only port 80 is used?
@MarcelDempers3 жыл бұрын
Yes you're right! TLS is offloaded by default unless passthrough is explicitly stated in the ingress annotation
@Артём-ц5ц9е3 жыл бұрын
Hello from Belarus, it was interesting to see wildcard certificates. Thanks =)
@Fayaz-Rehman3 жыл бұрын
Thanks for revealing the secrets - the best video on youtube - bless you.
@maddy135713573 жыл бұрын
Very nice content, if you have to follow this with aws free tier account, what extra we need to do??
@goodcitizen45874 жыл бұрын
Really cool instructional video. I'm going to check out your example code and give it a try.
@LemontJap2k3 жыл бұрын
Great video. Very helpful. If I want my pods to communicate via REST API using https internally, will this be applicable?
@MarcelDempers3 жыл бұрын
Have not explored this yet, but I think what you are after is mTLD (mutual TLS) between internal APIs. Might need to explore mTL with cert manager (if possible) or other tools
@LemontJap2k3 жыл бұрын
@@MarcelDempers I also watching your ISTIO video. Do you think it would be appropriate to use it?
@hellboy06660066603 жыл бұрын
As usual the best video for the issue on youtube/world/universe. :-) - Keep up with this magnificent videos.
@mohammedmubeenhussain1143 Жыл бұрын
Awesome explanation🥰. Thank you
@hectormanuel89443 жыл бұрын
AMAZING CONTENT!!! I will love to see this integrated with Istio
@diegoemartins3 жыл бұрын
Great Content, thats exactly im a looking for. But its normal the Acme responde slow down about 30 minutes? -> Waiting on certificate issuance from order..
@MarcelDempers3 жыл бұрын
It sounds a bit fishy to me that it takes so long. I know there might be rate limiting on the production endpoint. There is good troubleshooting docs here to debug orders\challenges. cert-manager.io/docs/faq/acme/ If you're still stuck, I'd report an issue on the cert-manager GitHub repo, or chat to the folks in the kubernetes slack channel, they're very friendly and helpful
@diegoemartins3 жыл бұрын
@@MarcelDempers yeah, looks like a problem here. after waiting 8hours, nothing change. i trying do more stuffs and report to you thanks
@diegoemartins3 жыл бұрын
@@MarcelDempers Strange that. when im apply the certificate.yml the K8s not create a secret, the secrete comes with 'opaque' -> thats normal?
@diegoemartins3 жыл бұрын
@@MarcelDempers everything its fine, when im troubleshooting kubectl get challenges im receive a response that my other ingress causing a conflict,(im using a baremetal) an metalLb, when i remove that ingress, works like a charm! thanks man!
@danialatash98159 ай бұрын
Amazing!!! It was great, I learned something! Thanks
@felipeozoski2 жыл бұрын
I absolutely love your videos man!!! Thank you so much
@richardokonicha2 жыл бұрын
This is too good kind sir 🤲🏾
@alburton43372 жыл бұрын
A.burton-Boston one the better videos , I like and subscribed ... excellent work.
@johnmontoya7183 Жыл бұрын
I'm trying to setup let's Encrypt for my linode Kubernetes cluster but I'm able to get the certificate to issue. Can you help?
@johnmontoya7183 Жыл бұрын
Never mind, I was able to find my error and wiith the content of this amazing video I'm created a successful SSL using let's encrpyt. Looking forward to more vidoes DevOps Guy
@moosegoose12823 жыл бұрын
Best explanation. Can u also do a tutorial of all things combined? Nginx, load balancing and ssl
@stygis3 жыл бұрын
Nobody talks about http2, seems like after ingress and ssl implementation there is no way to keep http2 connection.
@thezquad3 жыл бұрын
I have a spring boot application on google cloud kubernetes that I need to setup letsencrypt for with automatic (
@MarcelDempers3 жыл бұрын
Correct! Make sure that your Spring boot app reloads the certificate because cert-manager will only place the cert in a k8s secret. Your app might need a restart to consume it or add code to pick it up once rotated. If you use an ingress in front of your app, many ingress controllers will auto detect and load the new cert in a secret.
@thezquad3 жыл бұрын
@@MarcelDempers One more question. I have a load balancer infront a few pods, can I not setup ssl using the loadbalancer? Do I need an ingress controller explicitly for this to work? I am confused as to the interaction between the load balancer and ingres
@MarcelDempers3 жыл бұрын
@@thezquad Ingress controllers makes this task much easier, especially when you want to introduce new domains, more services, more certificates etc. Ingresses scale easy in terms of engineering overhead\maintenance. And the ingress controller can share a load balancer amongst many services
@thezquad3 жыл бұрын
@@MarcelDempers Aight I will follow your instructions exactly and see how it goes.
@thezquad3 жыл бұрын
Hope you dont mind the question, 2 questions: 1. What changes do I need to make to support ssl on wild card names eg. api.domain.com or www.domain.com. This method works fine with 1 host but when I changed certificate.yaml spec > dnsNames to include - domain.com, - www.domain.com, - api.domain.com as in cert-manager.io/docs/usage/certificate/ but I get an error: Fields on existing CertificateRequest resource not up to date: [spec.dnsNames]. I also update ingress.yaml spec.tls.hosts and corresponding spec.rules.host* to match the aforementioned dns names. 2. Do we need to keep the deployments running continuously (certificate-manager, acme pods, etc), on gcc its gets expensive :)
@david23583 жыл бұрын
I should have subscribed to this channel earlier. Awesome Content - Just Subscribed !!🔥
@Stefan29dec2 жыл бұрын
a big red hart from Romania ❤
@SanjeevKumar-nq8td2 жыл бұрын
MetalLB can give the LoadBalancer a external IP.
@cicddpd18594 жыл бұрын
You should create END-TO-END tutorial of setting up HA SSL VAULT with Consul :D
@cicddpd18594 жыл бұрын
on k8s of course
@aliefseventri97932 жыл бұрын
you are really amazing, instructions are really clear!