[ Kube 33 ] Set up MetalLB Load Balancing for Bare Metal Kubernetes

  Рет қаралды 42,408

Just me and Opensource

Just me and Opensource

Күн бұрын

Пікірлер: 377
@linuxkartik6115
@linuxkartik6115 4 жыл бұрын
Not only this Video, your entire channel is very nice info ocean. I really appreciate your doing is generously, while hell number of training institute out there, those are looting to learners . thanks for helping others.. God Bless you!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi, thanks for these words. You made my day. Cheers.
@crumdev5834
@crumdev5834 4 жыл бұрын
This was really irritating me trying to figure out how to do this without using something like GKE and their dynamic load balancers. Thanks for the helpful and concise video.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi, thanks for watching. Cheers.
@tiwaridiwakarprasad
@tiwaridiwakarprasad 3 жыл бұрын
Thanks a lot bro! I've wasted two days just to understand the MetalLB Concept conflicts with nginx-ingress and so on... Your 11 minutes save my a lot of times.
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Diwakar, no worries and thanks for watching.
@bradlaloli8422
@bradlaloli8422 4 жыл бұрын
Thank You! Watching a few of your videos has made me realise the difference between having a cloud provided LB, LB appliance and needing MetalLB. I couldn't figure out why my Ingress wouldn't work but now it does - yay!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Brad, thanks for watching and sharing your thoughts. Cheers.
@seshreddy8616
@seshreddy8616 4 жыл бұрын
Thanks Venkat. I've struggled to find this content elsewhere and you're truly amazing. I indeed read a few best books and they've mentioned only minikube or cloud.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Sesh, thanks for watching.
@suvankardas7932
@suvankardas7932 2 жыл бұрын
This video helped me a lot bro..many thx..was struggling for few factor ..thx once again
@justmeandopensource
@justmeandopensource 2 жыл бұрын
Hi Suvankar, thanks for watching. Cheers.
@grimonce
@grimonce Жыл бұрын
This channel is gold, wish I had found it sooner :)
@justmeandopensource
@justmeandopensource Жыл бұрын
Hi Grimonce, Thanks for watching.
@Paeblits
@Paeblits 3 жыл бұрын
I'm new to K8s and have been struggling with this for a few weeks now on my personal projects (kubeadm on a raspberry pi cluster). This finally did the trick. Next step is Ingress controller I think. Thank you!
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Pablo, thanks for watching. Cheers.
@maartenvanveen2174
@maartenvanveen2174 4 жыл бұрын
As always your videos are concise to the point and very clear. Thanks a bunch from the Netherlands!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Maarten, thanks for watching. Cheers.
@juanmanuel7305
@juanmanuel7305 4 жыл бұрын
Thank you thank you thank you! i've been strugling with metallb for a day now, im so glad i found your channel
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Juan, thanks for watching.
@TheKreweta
@TheKreweta 4 жыл бұрын
One of the best tutorials I've seen in long time (not just this one, your channel is is awesome) :) thanks for help with Kubernetes :)
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Ondrej, many thanks for your comment. Cheers.
@yaghiyahbrenner8902
@yaghiyahbrenner8902 3 жыл бұрын
Man, I just wanted to say thank you for all the videos some helped me alot.
@justmeandopensource
@justmeandopensource 3 жыл бұрын
You are welcome and thanks for your interest in this channel.
@naimarshad
@naimarshad 4 жыл бұрын
Awesome video, please keep up the good work. I came here looking for something and found with detailed explanation.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Naeem, many thanks for watching. Cheers.
@ronaldocorrea8007
@ronaldocorrea8007 3 жыл бұрын
Thank you so much. this video saves my on-prem cluster project.
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Ronaldo, thanks for watching. Cheers.
@786saga
@786saga 5 жыл бұрын
Very good explanation Venkat in first time only I am able to deploy the metalLB in my Kubernetes cluster
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Sagar, thanks for watching. Keep learning :)
@arunabraham100
@arunabraham100 3 жыл бұрын
Thanks for the amazing videos. This is helping me in setting up kubernetes cluster in on-premise infrastructure.
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Glad it is helpful. Thanks for watching. Cheers.
@onovaes
@onovaes 3 жыл бұрын
Thank man.... You helped a Brazilian guy!
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Gabriel, thanks for watching. Glad it helped. Cheers.
@theflymo
@theflymo 4 жыл бұрын
Thanks! Very useful video for Kubernetes noobs like me. Makes setting up a home lab much easier....
@hammadsherwani2938
@hammadsherwani2938 3 жыл бұрын
Love this video, to the point and with good example.
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Hammad, thanks for watching. Cheers.
@hazemhemied4049
@hazemhemied4049 3 жыл бұрын
I liked you video Simply straight to the point 👍
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Hazem, thanks for watching. Cheers.
2 жыл бұрын
thanks for sharing. i wish i knew this channel sooner !
@justmeandopensource
@justmeandopensource 2 жыл бұрын
Hi Juraj, thanks for watching.
@praveenkumar-uc3tu
@praveenkumar-uc3tu 5 жыл бұрын
Superb. This is what I expected. Pls post some videos related to CICD in kubernetes with jenkins
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Praveen, Thanks for watching this video. I have already done a video on Running Jenkins in Kubernetes. Search for it and you will find it. See if that helps or if you need any specific topic/concept. Thanks, Venkat
@praveenkumar-uc3tu
@praveenkumar-uc3tu 5 жыл бұрын
@@justmeandopensource yes I need CI/CD in kubernetes using Jenkins.
@WojciechMarusiak
@WojciechMarusiak 3 жыл бұрын
As usuall super easy to follow and well explained. Thanks!
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi, thanks for watching. Cheers.
@pernankilvivek8774
@pernankilvivek8774 4 жыл бұрын
You are doing god's work venkat. Keep up the good work. cheers..!!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Pernankil, many thanks for watching and commenting. Much appreciated.
@phillewisit
@phillewisit 5 жыл бұрын
Thanks for the videos, I am enjoying the series. I have used MetalLB before (after discovering it prior to watching your videos) so have it working fine. I am just trying to work out however if it is possible to assign a static IP to a service, rather than the next available IP in the range being used. This is obviously important if trying using a NAT or DNS.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Phil, Thanks for watching this video. I think its possible to specify the ip address you want for the load balancer (as per the documentation), although I haven't tried it. From kubernetes.io/docs/concepts/services-networking/service/#loadbalancer, Some cloud providers allow you to specify the loadBalancerIP. In those cases, the load-balancer is created with the user-specified loadBalancerIP. If the loadBalancerIP field is not specified, the loadBalancer is set up with an ephemeral IP address. If you specify a loadBalancerIP but your cloud provider does not support the feature, the loadbalancerIP field that you set is ignored. From metallb.universe.tf/usage/#requesting-specific-ips, MetalLB respects the spec.loadBalancerIP parameter, so if you want your service to be set up with a specific address, you can request it by setting that parameter. If MetalLB does not own the requested address, or if the address is already in use by another service, assignment will fail and MetalLB will log a warning event visible in kubectl describe service Thanks.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Phil, I have done a quick testing and its working as epxected. Please check my output in the below pastebin link. pastebin.com/raw/E6jCbjhJ Thanks.
@Lebalele21
@Lebalele21 5 жыл бұрын
Keep making video. Always wait for your update.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Thanks Muhammad for watching this videos. There are lot more scheduled for the coming weeks on Mondays.
@satishalla
@satishalla Жыл бұрын
Thank you venkat... very helpful video
@ranjeetbadhe3817
@ranjeetbadhe3817 Жыл бұрын
Please post a video on federated clusters. Interested in know the configuration and theory part of it.
@barsvelioglu2276
@barsvelioglu2276 3 жыл бұрын
Great tutorial. Thank you
@justmeandopensource
@justmeandopensource 3 жыл бұрын
You are welcome. Thanks for watching.
@HerryTCO
@HerryTCO 11 ай бұрын
What is the advantage of using MetalLB to just creating a resource of type Service? As I understood the latter gives it an IP from the network plugin (in my case Flannel) and does the same without the complex setup? What am I missing? Thanks in advance :)
@GraysonAdams
@GraysonAdams 4 жыл бұрын
In your video you say it must be in the same network as your nodes. What if I have a node in a different network and want to provision IP's from that network? 2 of my nodes are in one VLAN, and the final node is in my LAN network. I have MetalLB speakers running on all three nodes. Despite opening up the firewall, it appears that MetalLB speakers are only working for IP's in the VLAN pool. If I try to auto-provision an IP from the LAN pool, it never resolves. Any ideas? It appears MetalLB allowed for multiple IP pools? EDIT: Solved by deploying a Controller node on that LAN network as well.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Grayson, thanks for watching and sharing your solution here. I haven't tried running worker nodes on different networks to be able to try this. But this information is super helpful. Cheers.
@rizkyprilian2143
@rizkyprilian2143 4 жыл бұрын
Hi Venkat, thanks for the tutorial. However I still don't get the address pool, perhaps you could tell me how does metallb work. Let's say i have three vm nodes that each has their own private ip address. and then i set the metallb address pool with other private ip address within same subnets, but who owns those addresses since they are not belong to any vm nodes within the network?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Rizky, thanks for watching. Those IP addresses that you specify in the metallb configmap will be handed over by the virtual network interface. If you are running this in cloud, with 3 virtual machines, it won't work as you don't have control over the network interface/dhcp server. It is well suited in the bare-metal on-prem infrastructure.
@rizkyprilian2143
@rizkyprilian2143 4 жыл бұрын
@@justmeandopensource alright I understand now. I've also just watch your other video about Istio, in that video I noticed that you have different ip range for external IP than your internal node IP. Since you also mentioned metallb usage in that video, would you point me out any reference of how to do that? Thank you again
@rizkyprilian2143
@rizkyprilian2143 4 жыл бұрын
@@justmeandopensource in my case, my vm cluster has both internal private ip and public ip. I would like metallb use those public ips
@ThanhNguyenVan-ss7yy
@ThanhNguyenVan-ss7yy 2 жыл бұрын
hi Venkahsh, do we know how the Loadbalancer is working fine that routed traffic to the right node ? For instance, if nginx pod was replacated into each node then once we refresh the Nginx welcome page it should point to each node where the pod is running on thanks you
@justmeandopensource
@justmeandopensource 2 жыл бұрын
Hi Thanh, thanks for watching. If you see the nginx welcome page then it is obvious that load balancer is working. If you want to check whether its routing traffic correctly, schedule the nginx pod to a specific worker node and then kill it, then launch it on another node. Thats the point of load balancer.
@ThanhNguyenVan-ss7yy
@ThanhNguyenVan-ss7yy 2 жыл бұрын
@@justmeandopensource thanks
@justmeandopensource
@justmeandopensource 2 жыл бұрын
@@ThanhNguyenVan-ss7yy You are welcome.
@ThanhNguyenVan-ss7yy
@ThanhNguyenVan-ss7yy 2 жыл бұрын
@@justmeandopensource I have checked out some latest your videos for about the MetalLB and Ingress controller. It seems still some confuse on me for the roles of each one like: - Ingress controller operates as a reverse proxy and it also take as a LoadBalancer role - MetalLB, we sure that It works a LoadBalancer I dont know if my understand is correct then Metal LB and Nginx controller do they have different in this design? Why we have use both of them in the K8S? Thanks you in advance!
@florimmaxhuni4718
@florimmaxhuni4718 4 жыл бұрын
Looks like MetalLB did change installation procedure. Is it possible to do another one because the old procedure in documentation I think does not exist. Thanks
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Florim, thanks for pointing that out. I wasn't able to keep track of all my previous videos and I rely on people like you to point out the deviation. I will definitely do a followup one soon. Cheers.
@devmrtcbk
@devmrtcbk 3 жыл бұрын
Thanks again Venkat. I have a few questions on my mind, as you know, in data centers, IP addresses are usually distributed statically by system experts. The IP address we created here is VIP. Is this ip address actually managed by DNS within the Kubernetes cluster? How do we forward a domain to this ip address with external dns? Also, let's say we have 3 worker nodes, do we enter 3 records in external dns (like round roubin)? Because we want to use the IP addresses produced by metallb outside, but we do not manage the external IP addresses.
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi Murat, thanks for watching. Ideally you would reserve a block of ip addresses in a network and use that in metallb configuration. MetalLB doesn't check whether that IP has been already assigned to some other resource externally. So we should make sure to reserve a range manually and let metallb use it.These are not managed by kubernetes internal DNS but by the metallb pod. You can just add a dns entry with the ip provided by the metallb for your service in your dns server.
@devmrtcbk
@devmrtcbk 3 жыл бұрын
@@justmeandopensource thank you Venkat, ok understood. so if we already have external load balancer what is your recommendation? i mean metallb is not a kind of best practice, right? should i use nordport if i have external load balancer or can i use external load balancer to forward to ip assigned by matallb? what is your recommendation?
@sanjaylonkar
@sanjaylonkar 2 ай бұрын
Thank you, Venkat, for this informative video. I used a public IP range instead of a private one to enable internet access for my services. Although one of the public IPs was assigned to my exposed service, I’m still unable to access it over the internet. Could you provide some guidance?
@vamseenath1
@vamseenath1 4 жыл бұрын
Hi Venkat, Need your advice, please! I have Build K8 Cluster with 3 Masters + 5 Worker nodes. Due to security reasons, no public IP's assigned. Internally within the network the Application exposed is accessible with private-ip:nodeport, but from the outside world it is not accessible. -Now to access the App :nodeport to be mapped with public ip? -To expose with type:LoadBalancer should i configure MetalLB with public ip range? Any best solution please?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Vamsi, thanks for watching. MetallB is for bare metal infrastructure. It won't work well in cloud environment as you don't have control over ip addresses. I believe you are using kubernetes in a cloud environment. You can keep your nodes in a private subnet/network and still use LoadBalancer type service to expose it to outside world. Only your load balancer needs access to the private network where your nodes are running. Cheers.
@vamseenath1
@vamseenath1 4 жыл бұрын
@@justmeandopensource Hi Venkat, My K8 infra is also on the baremetal server VMware infra(on top of ibm cloud). Where the ip definition is managed by our network team. My idea is to reserve a range of public ip's and use it in the metalLB, where the reserved ip range should have access to k8 private network.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@vamseenath1 In order for metallb to work you will have to choose the ip addresses in the same range as your kubernetes nodes. Your private and public network will be different. So I guess it wouldn't work. You could instead have a HAProxy load balancer installed on a server in a public network and use nginx ingress internall within the cluster.
@vamseenath1
@vamseenath1 4 жыл бұрын
@@justmeandopensource thanks Venkat for your advice 👍🏼🙏🏼
@justmeandopensource
@justmeandopensource 4 жыл бұрын
No worries.
@tiagosantos2136
@tiagosantos2136 4 жыл бұрын
Question , you need to pass a range of IPs to MetalLB. But when I create a machine on AWS EC2 it comes with only 1 single IP, how to make this single public IP be the IP that MetalLB will provide?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Tiago, thanks for watching. MetalLB load balancing solution is for bare metal environment. In cloud environment, I haven't tried it and used the cloud ALBs.
@devops-boot-camp
@devops-boot-camp 4 жыл бұрын
Man you are awesome
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Prashant, thanks for watching. Cheers.
@barkathks8620
@barkathks8620 4 жыл бұрын
HI Venkat, i have been watching you all videos, your videos are clean and clear to understand. But I have one doubt.... If we have IP's like as below then how to set up ip range in configmaps.yaml file. I took 3 EC2 instances of aws and i set up k8s cluster, one as master and two as worker nodes..... I am confusing to how to set up ip range in configmaps....hope you help me in this regards....thank you k8s-master: 172.31.23.226 worker-node1: 172.31.82.16 worker-node2: 172.31.88.98
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Barkath, thanks for watching. I am afraid it won't work in AWS. It is designed to be used in bare metal infrastructure. The IP addresses are not under your control when used in cloud. metallb.universe.tf/installation/clouds/
@justmeandopensource
@justmeandopensource 4 жыл бұрын
You can try this on your local workstation though in a VirtualBox environment.
@zhang20244
@zhang20244 4 жыл бұрын
SO good ! , It works ! I just need it for my work test, Thank you
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Frank, thanks for watching. Cheers.
@zhang20244
@zhang20244 4 жыл бұрын
Just me and Opensource I hope you have video for install ML platform such as domino lab , airflow, Kubeflow., APIGEE., Tesonflow , these are opensource run on top of kubernetes . Thank you so much
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@zhang20244 I haven't explored the ML world yet. Let me see if I have time to do that. Cheers.
@zhang20244
@zhang20244 4 жыл бұрын
Just me and Opensource thank you , also the dvc (data version control) is very important for ML
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@zhang20244 Yeah.
@swethakristipati7303
@swethakristipati7303 Жыл бұрын
Thanks venkat for the great explanation... actually i have installed metallb and service exposed got the external IP..i am bale to access the external ip only with the curl ...when i am trying to access in the browser unable to access this service...can you please help here ?
@ranjeetbadhe3817
@ranjeetbadhe3817 Жыл бұрын
Thanks Venkat for posting the video. I am going to try this and ask for help , if I am not able configure.
@bobbykhan3451
@bobbykhan3451 4 жыл бұрын
You have explained it so well but I have tried to assigned a static ip address and through the range pool range but service couldn't get an ip address. My environment is on fusion.
@bobbykhan3451
@bobbykhan3451 4 жыл бұрын
Thanks!!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Bobby, thanks for watching. What's the IP range you specified? Try choosing a different range in the same network as your worker nodes. May be try picking the last few ones.
@bobbykhan3451
@bobbykhan3451 4 жыл бұрын
I am not getting any ip address follow your instruction on Fusion's VMs
@bobbykhan3451
@bobbykhan3451 4 жыл бұрын
@@justmeandopensource I am not getting external ip address, it's showing as pending state. My DHCP range on Fushion is 128-254 address. I even try to assign static ip adsress as you have mentioned in one of your threat.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@bobbykhan3451 Hmm. What version of Fusion are your running? And whats your host machine OS?
@jktrivedi29
@jktrivedi29 4 жыл бұрын
consice and perfect. Thanks
@justmeandopensource
@justmeandopensource 4 жыл бұрын
HI Jagrut, thanks for watching. Cheers.
@thunderbirds8633
@thunderbirds8633 3 жыл бұрын
On the metallb site, there is this line added after yaml file to install metallb, if we skip this then metallb pods are failing to start. Can you explain why this is for # On first install only kubectl create secret generic -n metallb-system memberlist --from-literal=secretkey="$(openssl rand -base64 128)" So I deleted the namespace completely and created again with all steps.I have followed the steps of installation from metallb website. And the metallb containers are also running. After that I deployed an nginx service for testing with service as LoadBalancer. The LoadBalancer is not getting IP from metallb. Any suggestions on how to fix this?
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Hi, I did an updated video on this topic. Its the next video in this playlist. kzbin.info/www/bejne/aITQip2gYqx5pKc See if that helps.
@jean-baptistelasselle4562
@jean-baptistelasselle4562 4 жыл бұрын
Hi, A question here about the IP address being available "from outside the cluster" : => Here what I do not understand in your explanation on the IP range dgiven to metallb, is that you pick the INTERNAL IP of the cluster nodes => I mean let's say I have one machine on local network, with just one NIC 192.168.1.23 : On that machine I run the entire K8S cluster( VMs or containers), and then suddenly because there is metallb I can hit 10.209.211.* from 192.168.1.23 ? I do not understand that ...
@stdio9965
@stdio9965 3 жыл бұрын
did you understand?
@muralibala8738
@muralibala8738 4 жыл бұрын
Thank you sir, for the really straight forward & understandable video. I have followed your video to setup the Metal LB in my laptop. I am able to get dynamic ip for my nginx services, but that Ip is not browsable & responds like not available. I am stuck up here & please help to resolve this.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
HI Murali, thanks for watching. Are you sure your backend pods are running fine? Can you check if you can access it using Nodeport service just to make sure that your backend pods works. Can you also test with some other deployment? Just to isolate the problem, see if you can find a pattern.
@rahuldeewana1302
@rahuldeewana1302 3 жыл бұрын
Awesome explanation 💯. Can you please help me to know that, can a local kubernetes cluster can be exposed to the interne? By using the method you have shown can we use this external ip in any device or only in the machine running this kubernetes cluster, Thanks.
@smiimohamedayoub4023
@smiimohamedayoub4023 4 жыл бұрын
Thanx for this interesting tutorial i have a question , can i use metallb for egress traffic ?? if not is there any solution that provide that on bare-metal infrastructure ?
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Thanks for watching. Metallb is a load balancing concept. Why would you need load balancing for egress traffic? I am not sure about your requirement to be honest.
@smiimohamedayoub4023
@smiimohamedayoub4023 3 жыл бұрын
@@justmeandopensource Thanks for the reply , in my production environnement i would like to assignea public ip to each pod for the outgoing traffic , and i need to do it on the firewall with the pod ip adresses , So with calico i peered my cluster into my network over BGP (to make the pods publicly routable) and i used fixed IPs for the pods that need to send traffic out . and it work now for me :))
@MrNiceseb
@MrNiceseb 4 жыл бұрын
is the CLI type hinting from tmux? if not which tools is that thanks
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Thats zsh-autosuggestion plugin that I use with Zsh shell. Nothing to do with tmux. I have done a video about the terminal setup where I have explained this. kzbin.info/www/bejne/qaCkqIinZ8iEfrM
@jitendra2950
@jitendra2950 4 жыл бұрын
i am having kubernetes cluster with one master and two worker on vmware with centos machine. i have installed metallb and services. cluster heath is good but i am not able to get external ip for load balancer. config map also created with IP. Can you please help me where do i go to troubleshoot ?
@kairav-KRS
@kairav-KRS 2 жыл бұрын
hii sir, How to do this in Kubernetes cluster running on ec2 instance on aws cloud (aws ec2 only use as a platform). I did same thing but in my case Loadbalancer external ip not accessible from outside
@SantoshPatil-ld4yg
@SantoshPatil-ld4yg 3 жыл бұрын
Hi I am new to kubenetes, I have created LB as peryour instruction. Now I am trying.to route my pos web page to other machines in my lan network . I am using VMware with 3 nodes cluster.
@mtcheryan
@mtcheryan 4 жыл бұрын
Excellent tutorial!!
@OnBetamax
@OnBetamax 5 жыл бұрын
Maybe someone could answer a question. I've deployed it on Contabo. The public IP can be accessed from each host (1 master + 2 workers) but not from my computer. So, how could I redirect http connections from my host (231.X.X.X) to that LB IP?¿ It doesn't do it by default . Thanks!
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi, Thanks for watching this video. I am not sure how networking is managed and hosts are exposed to public in Contabo. This metallb solution is specifically suited for bare metal on-prem environment and not for Cloud environment. Each cloud provider have their own load balancing solution. Is your service getting external IP address assigned from metallb configuration? If its assigning and you can't reach it, you better raise a support case with Contabo provider. Thanks
@sparkman786
@sparkman786 5 жыл бұрын
Hi Venkat - I am trying the kubernetes version of Ingress with MetalLB. Basically the mapping is MetalLB -> Ingress -> a hello world node app (on port 3000). I think I have everything installed correctly, but when I try to access the external IP, I get a connection refused. Have you tried to make these things work? If you try, could you please post on your github an example. Thanks.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Sure. I will give it a try and let you know. Thanks.
@sparkman786
@sparkman786 5 жыл бұрын
@@justmeandopensource I finally got it working. It turned out the default instructions for installing k8s-ingress are not enough. So I installed k8s-ingress using helm and that seems to have done the trick. Still not sure of the root cause, but I will continue to investigate.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@sparkman786 Well done. Glad you got it sorted. I had been busy these days and couldn't try it out. Cheers.
@SachithNalakaMuhandiram
@SachithNalakaMuhandiram 4 жыл бұрын
Thanks for the detailed guide. I have followed the steps and installed Metallb and nginx. External IP also assigned. But I can not access to it from the network. Even with hosting PC.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Sachith, thanks for watching. I believe your infrastructure is somewhere on a hosting cloud. It might be due to firewall or some networking issue. MetalLB is more for on-prem situation. Cheers.
@foxipub3629
@foxipub3629 4 жыл бұрын
@@justmeandopensource Hi Vikant, same problem here and i use on-prem configuration (firewall and SElinux turned off) and i cant reach external IP not from host machine nor from cluster members ... please can you take a look closer ... thank you.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@foxipub3629 Thanks for watching. Could you please explain a little more about your infrastructure? Are these virtualbox vms or physical machines? What is your network range for the kubernetes nodes and what range you specified in your metallab config?
@foxipub3629
@foxipub3629 4 жыл бұрын
@@justmeandopensource Hi Vikant.I am using Hyper-V as hypervisor platform.At first i changed type of virtual switch from default to external, in second last time i ignored some instructions from metallb site (this: apiVersion: kubeproxy.config.k8s.io/v1alpha1 kind: KubeProxyConfiguration mode: "ipvs" ipvs: strictARP: true) and now i apply it then i repeat all your steps and it works now! Thank you!
@venkateshponnaganti8719
@venkateshponnaganti8719 4 жыл бұрын
hi im usingt aws cloud install k8s with ansible but i dont understand how to use loadbalancer service for my ingress rules plz zzz tell me or do aa video on that
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Venkatesh, thanks for watching. See if this link helps. aws.amazon.com/blogs/opensource/kubernetes-ingress-aws-alb-ingress-controller/
@venkateshponnaganti8719
@venkateshponnaganti8719 4 жыл бұрын
@@justmeandopensource hi sir I'm watching ur videos regularly but not on aws hosting I will tell u my requirement I'm installing k8s with andible I have to install all pods like Jenkins tomcat sonarqube nd redis nf rabbitmq with the helm I have attach persistent volume for all nd I have to use application load balancer for all pods I have to run and attach external ips with one load balancer I have to open all pods like load balancer ip/ Jenkins ,,, load balancer/tomcat for that I have to use ingress plzzz do one video on that plzzzzzz
@fz-ssaravanan2036
@fz-ssaravanan2036 5 жыл бұрын
Hi bro... I have a doubt ... I have 2 bare matel server in hetzner I have configured k8s using flannal network.. want to configure ingress Loadbalancer using metalb... Here will I go to configure IP ranges In my master node and give gateway subnet mask ?? if I use hetzner will I go to buy IP in hetzner...kindly help me bro
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Saravanan, thanks for watching this video. MetalLB solution is best suited for bare metals and if you have control over networking. I haven't used Hetzner before and not sure how networking works. If its a cloud provider, they should have load balancing built in. If you are using the cluster for learning and development purpose, you can just use one machine and set up a local cluster using LXC or Docker containers. kzbin.info/www/bejne/aqGXdaSaiamkoc0 (Using docker containers) kzbin.info/www/bejne/joLZgoh7bNl0qc0 (Using LXC containers) Thanks.
@fz-ssaravanan2036
@fz-ssaravanan2036 5 жыл бұрын
@@justmeandopensource thanks for your reply bro.. I have done my job using metalb... Your video is very awesome to learn easily 👍 good job bro 💪
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@fz-ssaravanan2036 You are welcome. Cheers.
@nathanbrown2459
@nathanbrown2459 5 жыл бұрын
How do you expose or access the cluster from an external source? I have ingress-nginx and metallb set up and a web svc exposed on port 80. When I get services it shows an external ip that is the same for the web svc and the ingress. The ingress is of type load balancer and the web svc is currently set to type nodeport.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Nathan, Thanks for watching. MetalLB is a load balancing solution for your internal kubernetes cluster needs. I think you are mixing ingress and metallb. Or I may be wrong in the understanding. I assume you are running your cluster on bare metals and not on any cloud. So here is the way ingress works. You create you app deployment, expose it as a service of type ClusterIP (not NodePort). Then you create an ingress resource, stating which backend clusterip service the traffic should be sent to when a request comes for a specific domain. Ingress controller is a pod that runs on each of your nodes and are bound to host ports 80 and 443. You will have to configure an external load balancer like haproxy (not metallb) to load balance the requests to multiple worker nodes. When you hit the load balancer for a specific domain (eg: myapp.example.com), it will forward to one of the load balancer and the ingress controller pod on that node will route the request to the backend cluster ip service. Thanks.
@nathanbrown2459
@nathanbrown2459 5 жыл бұрын
@@justmeandopensource I was able to set it up using metallb and istio ingress gateway which was able to use the external IP from metallb. I created an Istio Ingress Gateway and a virtual service.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@nathanbrown2459 That's great. In fact I was gonna try something similar later this week and will make it a video. Thanks.
@jamilshaikh-tr2qb
@jamilshaikh-tr2qb 4 жыл бұрын
I have created my k8s environment over OpenStack, I have provided the address range in the config map of metallb. but the IP assigned is not reachable!
@sparkman786
@sparkman786 5 жыл бұрын
Hi - One recommendation I have for services is to create a yaml for them and store in your github repo. When you use the command line, it is hard to remember where in the video you did this. thanks!
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi, many thanks for watching this video. Thats a good suggestion. I will make sure to have a manifest instead of command line for creating resources here after. Valid point. Thanks, Venkat
@sudheshnair1711
@sudheshnair1711 5 жыл бұрын
Hi Venkat. What if i want to expose the svc to internet? Can i use the Public IP which i have registered in my DNS in the configmap?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Sudhesh, Yes, if the load balancer got an IP address in the range you defined in your metallb configmap and if that IP address is publicly reachable. Thanks.
@prashantparihar5117
@prashantparihar5117 4 жыл бұрын
Hi tried all the steps that have been shown in your video. I got the external ip address for my LB-Svc. but when I browse it says"connection timed out". I have installed kubernetes cluster on AWS EC2 instances and have carried out bare-metal installation but it did't work out for me - it says ""connection timed out". Can you help what could be reason. Are you planning to create another video on the same topic as many of us are still facing the issues. Appreciate your help and thank you!!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Prashant, thanks for watching. MetalLB is a load balancing solution for on-prem infrastructure. If you are alread in the cloud, you can make use of cloud load balancer. I haven't actually tried using MetalLB in AWS. It may not work at all.
@weitanglau162
@weitanglau162 3 жыл бұрын
If I am planning to use Nginx Ingress Controller for my Bare Metal Kubernetes Cluster, I will still need to setup MetalLB for the controller to "acts" as a load balancer right?
@cokegen
@cokegen 4 жыл бұрын
Thanks ! great explanation ...
@justmeandopensource
@justmeandopensource 4 жыл бұрын
HI Cokegen, thanks for watching.
@hakamgo3894
@hakamgo3894 4 жыл бұрын
Thank you for this video! can MetalLB work in similar way with Minikube?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Hakam, thanks for watching. MetalLB comes as an addon in Minikube and is easier to enable and use it. $ minikube addons list $ minikube addons enable metallb $ minikube addons configure metallb Cheers.
@hakamgo3894
@hakamgo3894 4 жыл бұрын
@@justmeandopensource Thank u so much, I appreciate it!
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@hakamgo3894 You are welcome. Cheers.
@armpit1648
@armpit1648 4 жыл бұрын
Hello, what is the use case for this approach compared to your other video about HA proxy based external balancer + Ingress in NodePort mode?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi, thanks for watching. These are just different ways to expose your applications to outside world. The approach you choose will largely depend on your individual scenario.
@florianflowfabworx4460
@florianflowfabworx4460 3 жыл бұрын
Is it already addressed, what to do if you have set up your cluster on VPS (virtual private servers) - eg 3 nodes, 1 master 2 worker nodes? In this case, you usually do not have a "Range of IPs" for making the config ... ... I have seen somewhere the suggestion to just enter the IPs of the (in this case 3) nodes then ... Does it work this way? Or, is metalLB the wrong tool then? (I have read somewhere, that on the Level-2 setup metalLB is not really loadbalancing it anyways - it is offering an opportunity to expose the cluster AND offers the check if the node is available to avoid sending requests to the pods on nodes that are actually down (sound a bit strange for me, because this should be the job of the kubernetes anyways...) thanx for your great work, btw - your videos are always a nice source! One suggested improvement: perhaps, you could add some or more comments within the examples of your github. You could even add comments with links to the videos including the time parameter for jumping to the videos outgoing from your github (might be rewarding ... )
@abbaaabccabbaaabcc2350
@abbaaabccabbaaabcc2350 5 жыл бұрын
Fast one. How is this "autocomplete" option/app/solution name who allow you to in background see kubernetes/bash commands? This autosuggestion is coming from bash history? Thank you.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi, I have done a video on my terminal setup as many viewers asked for it. You can check it out in the below video link. kzbin.info/www/bejne/qaCkqIinZ8iEfrM Thanks, Venkat
@Amine-gp8im
@Amine-gp8im 3 жыл бұрын
Thank you for the video. I have a question. what if my internal-IP for the nodes are not in the same network for example one node have 150.0.0.5 and the other one is 70.6.4.8
@ashwathmendan732
@ashwathmendan732 5 жыл бұрын
Hi, can we create front end nginx proxy server in front of cluster to access the services/domains hosted on cluster?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Ashwath, thanks for watching this video. You can use Nginx ingress controller inside your cluster to expose your apps/services outside of the cluster.
@ashwathmendan732
@ashwathmendan732 5 жыл бұрын
@@justmeandopensource thanks for the update. Can I host nginx ingress controller on a separate machine?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@ashwathmendan732 That will be extra work. Ingress controllers are meant to be deployed within your cluster that takes care of internal routing once you hit the load balancer.
@ashwathmendan732
@ashwathmendan732 5 жыл бұрын
@@justmeandopensource thanks , so haproxy can be used in separate machine as load balancing on separate machine (on-premise) and Deployment of nginx ingress controller on cluster (on all nodes).
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@ashwathmendan732 That's right.
@sparkman786
@sparkman786 5 жыл бұрын
Hello - great videos! I do have question onMetalLB vs HAProxy you showed in an earlier video. Can you help me understand the difference between these solutions? Should I also be installing Ingress controllers with MetalLB? Would you combine HAProxy and MetalLB together with Ingress Controllers? If so, perhaps you can add that to your list for videos. thanks much!
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi, I did these videos around ingress, metallb and haproxy as I learned them. Didn't had a chance to see the bigger picture as where these fit and usecase scenarios. I will understand these better before commenting. Thanks, Venkat
@zend112
@zend112 4 жыл бұрын
Like always, it depends. Do you want your service to talk to other services directly on the network? If you have 100 microservices running, I don't think this will scale well, so no. Usually you have a webapp composed of multiple small services that expose an API. Here is the case for the Ingress and Ingress Controller. You expose the API gateway as a LoadBalancer and you use redirect from there using Ingress rules to your APIs. I am still learning these concepts myself and maybe the explanation is not the best but it's a start.
@volivattam
@volivattam 5 жыл бұрын
Thanks for your video. We want to use metallb for our on premises k8s cluster. We have around 50 services. Instead of creating 50 lb's is there a better way to use path base routing to route to desired services.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Sridhar, have you checked my previous videos on Traefik and Nginx ingress controllers? If not, please have a look at it. It might give some directions for you. Once you get a basic understanding of ingress concept, you can check the below link (Simple Fanout) for your needs. kubernetes.io/docs/concepts/services-networking/ingress/ Thanks, Venkat
@vasudevreddy3548
@vasudevreddy3548 4 жыл бұрын
Hi, i am running gcp vm cluster (not gke). Everything looks good. But load balancer ip is not accessible from outside. How to proceed. Thank you.
@ishqsafari6753
@ishqsafari6753 5 жыл бұрын
Thanks a lot for the detailed tutorials on k8s!!! I'm getting "connection refused" when I try to access nginx from browser/curl. I see metallb assigned an external IP but not able to access it. I'm giving neighboring ip range that are not used by other systems. What could be a problem here? Do I need to do something special to the IP range? like virtual IP ?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi, thanks for watching this video. I heard the same from another person as well. I am not entirely sure what the issue could be. Usually the problem will be that metallb fails to assign an ip address and external ip will be in state. But in your case you get the IP assigned. Not sure what the issue could be. What's your ip range of the cluster nodes? What ip range you specified in the metallb config? What external ip got assigned to your service?
@ishqsafari6753
@ishqsafari6753 5 жыл бұрын
@@justmeandopensource thanks for the reply! The metalLB range is 95.94.197.100-95.94.197.110 and cluster is using 95.94.197.241-95.94.197.247. But when I give metalLB cluster's IP range then it's working. But I don't think I should give that cluster node's IP to the metalLB.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
That's what my understanding is as well. The ip range you specify in the metallb configuration should be in the same network as that of the cluster nodes. Thanks.
@ishqsafari6753
@ishqsafari6753 5 жыл бұрын
@@justmeandopensource You're right. You beat me to it! I came here to just to comment that it has to be in the same subnet. Now I think I need to explore assigning IPv6 or IP forwarding because I see there're only 7 unused IP addresses in my cluster nodes subnet.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@ishqsafari6753 I see.
@jinalpatel7721
@jinalpatel7721 5 жыл бұрын
Good video. Just have doubt that why some videos are private in kubenetes playlist ?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Jinal, Thanks for watching this video. I usually record and upload videos. And release them one per week on Mondays. Thats why you see them private. Thanks, Venkat
@rmnobarra
@rmnobarra 5 жыл бұрын
nice video!
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Leonardo, thanks for watching this video.
@rmnobarra
@rmnobarra 5 жыл бұрын
@@justmeandopensource you help me a lot. Thanks from Brazil!
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@rmnobarra You are welcome.
@satheeshnehru3886
@satheeshnehru3886 5 жыл бұрын
A genral question, how is service ip converted to pod ip??? for example when i access service using service ip inside cluster how is it converted to pod ip? TIA.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Satheesh, thanks for watching this video. Service is how you expose you application. Service is Kubernetes object that load balances the request to all the pods behind it by matching labels. You can do "kubectl describe service " to see the endpoints. Thanks.
@nyanRETARD
@nyanRETARD 4 жыл бұрын
Hi, great video and I understood everything except. Why do you define IP range 10.209.211.220 - 10.209.211.250 ? Your nodes are 10.209.211.287 and 10.209.211.106. Numbers 287 and 106 are not in range 220-250. I run only master node(I guess another node should be different server) on a bare metal server(upCloud) and following the tutorial I got everything working except the external IP of LoadBalancer points to some random web site(market place). Thanks for the answer in advance
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi, thanks for watching. Yes, thats the point. The ip range you specify should be on the same network as your worker nodes. So it should be in 10.209.211.0/24 network. But you should define a range of unused IP addresses.
@CloudNativeJanitor
@CloudNativeJanitor 4 жыл бұрын
@@justmeandopensource but how can you make sure you will not have IPAM issues later, that is you are using out randomly ip addresses, is there a better way to allocate these ips without causing issues later on?
@IgnoreMyChan
@IgnoreMyChan 4 жыл бұрын
@@CloudNativeJanitor You should reserve that range for the load balancer.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Indeed you should reserve a range for load balancer.
@JJlinkjk
@JJlinkjk 3 жыл бұрын
@@justmeandopensource Hi, awesome video. I got a question here, the node IP seems to be internal network IP addresses? Starts with 10. How can I get a public external IP that I can change my DNS point with and everyone else can access it by using my domain? Thanks.
@kkbk5690
@kkbk5690 5 жыл бұрын
I created a 3 EC2 instances and installed metallb. As part of Metllab choose L2 and created an elastic IP and assigned that to metallb config. Things did not work. Is there a way to make metallb work with EC2 instances ?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi, thanks for watching. I don't think it will work in AWS cloud. MetalLB is meant for bare metals. In the metallb config you will have to define the IP address range in the same network as your worker nodes. But in AWS I don't think that can be achieved. I haven't tried that. May I know why do you want to use MetalLB in AWS? Thanks.
@kkbk5690
@kkbk5690 5 жыл бұрын
@@justmeandopensource I am trying to install istio and one of the pre-req was installing metallb.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@kkbk5690 Thats for bare metals I am sure. In AWS you can ignore that bit and a Load Balancer will be automatically provisioned when a service of type LoadBalancer is created.
@kkbk5690
@kkbk5690 5 жыл бұрын
@@justmeandopensource On AWS, i did not use EKS but used EC2 to create vanilla K8S cluster. Something like baremetal. Thanks for the help and answering the questions.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@kkbk5690 I see. I will have to test that. Never used before. Sorry.
@Vamshk
@Vamshk 3 жыл бұрын
Great explanation, What Is the $PS1 you got? Can you pls share Many thanks Vamshi
@justmeandopensource
@justmeandopensource 3 жыл бұрын
Thanks for watching. I did this video on my terminal setup which could be helpful. kzbin.info/www/bejne/hoa6n3aYp56WhJo
@sarathy6
@sarathy6 4 жыл бұрын
One of my speaker pod is in evict state after the installation. I tried the installation via helm and also the Manifest method. I could not get much of the troubleshooting steps in google. What could be the cause of this issue?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Sarathy, thanks for watching. Hard to diagnose without looking at the logs. It could be for any number of reasons and needs deeper look unfortunately.
@nikhildogra7706
@nikhildogra7706 4 жыл бұрын
Hi, Is there any way with which i can access it using public ip address. Note: Master and worker nodes are in cloud and metalLB as a load balancer
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Nikhil, thanks for watching. Metallb is meant to be used for bare-metal environment. If you are in cloud, you don't need a metallb and directly start using load balancer service.
@linuxlinux9459
@linuxlinux9459 4 жыл бұрын
Very good video, tks for sharing \o
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Thanks for watching. Cheers.
@pawekrol999
@pawekrol999 4 жыл бұрын
Hello i try to implement metallb based on yor your video and it's not working. I have 2 two master nodes (load ballancer from vcloud for ha of master "control-plane-endpoint" with taint masters servers ) cluster with two workers on Server Version: v1.18.3 and i got still pending on expose service as loadballancer. What can be wrong ?
@pawekrol999
@pawekrol999 4 жыл бұрын
There is an error in controler's pod "E0608 21:53:24.719047 1 reflector.go:125] pkg/mod/k8s.io/client-go@v0.0.0-20190620085101-78d2af792bab/tools/cache/reflector.go:98: Failed to list *v1.ConfigMap: Get 10.96.0.1:443/api/v1/namespaces/metallb-system/configmaps?fieldSelector=metadata.name%3Dconfig&limit=500&resourceVersion=0: dial tcp 10.96.0.1:443: i/o timeout "
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@pawekrol999 Hi thanks for watching. Where are these servers running? Whats the network range of your kubernetes nodes and what have you configured for network range in metallb config?
@aymenghazali5113
@aymenghazali5113 4 жыл бұрын
Thank you
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Aymen, thanks for watching.
@moma2189
@moma2189 4 жыл бұрын
hi guys. is metallb at the moment a good solution or is it deprecated? is there an alternativ?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi, thanks for watching. I believe there are other on-prem load balancing solutions out there which I haven't tried. MetalLB is robust enough to be used on-prem in my opinion. Cheers.
@dhananjaypatangay4029
@dhananjaypatangay4029 5 жыл бұрын
Hi Venkat, How can I access the load balancer IP which is in a vagrant VM from the host?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi DP, In my case, the host machine is a Linux machine and I have a Vagrant provisioned virtualbox VMs as kubernetes nodes. The virtualbox VMs are connected to a bridge, virbr0 and the load balancer IP is from this bridge. My host machine can access this bridge so it can connect to the Load Balancer IP. How is your environment setup? What is your host machine? and How are you running your k8s cluster?
@dhananjaypatangay4029
@dhananjaypatangay4029 5 жыл бұрын
@@justmeandopensource Hi Venkat, I am using Private Network with Private IP's and HostOnly network. My Host is a Mac and Guests are two Vbox machines configured with Vagrant. Using bridge mode can I have private ip's?
@justmeandopensource
@justmeandopensource 5 жыл бұрын
@@dhananjaypatangay4029 Yes. Thats the reason for using host only adapter. You access the private ip of the two VMs from your mac, right. If so, then you should also be able to access the load balancer ip as it will be in the same network range.
@TheLittlemaster2009
@TheLittlemaster2009 5 жыл бұрын
hello , can u please explain how we can remove it without deleting whole cluster,? can deleting the metallb namespace can delete all its components like controller and speakers which installed by apply -f command ., as i want to reinstall the process , completely .
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Shoaib, just delete the metallb namespace and delete the configmap where you defined the configuration like IP range. Thanks.
@TheLittlemaster2009
@TheLittlemaster2009 5 жыл бұрын
@@justmeandopensource thanks alot man ☺
@justmeandopensource
@justmeandopensource 5 жыл бұрын
You are welcome. Cheers.
@bayaas0025
@bayaas0025 4 жыл бұрын
I have used metal lb my external IP was under pending. Metallb controller and speaker pods are running fine. Configmap also applied
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi, thanks for watching. What is your environment like? how did you provision the kubernetes cluster? What hypervisor are you using? Did you check the logs of all the metal lb pods after creating the load balancer service?
@realthought2262
@realthought2262 4 жыл бұрын
Hey i want to ask you one thing that can we do same with our cloud machine.... Will we need to configure cloud controller manager first and do we have to enable external loadbalancer flag also... bit confused ... suggestions please !! thx
@wibinem
@wibinem 5 жыл бұрын
Can you give the example MetalLB in BGP Mode? Thank you.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Wiebz, I will have a look at the documentation and understand how it works After trying it my network and if I get anywhere, I will definitely make a video of it. Thanks.
@homefootage1
@homefootage1 4 жыл бұрын
Hi, I've deployed the MetalLB but the controller is pending, please do you have any idea what I'm doing wrong? Thanks
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Luiz, thanks for watching. Have you deployed the configmap? Without which your metallb pods wont be operational.
@homefootage1
@homefootage1 4 жыл бұрын
@@justmeandopensource yes I have deployed the configmap
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@homefootage1 Can you check the logs of the pending pod?
@johancahyamanggala
@johancahyamanggala 4 жыл бұрын
help update this guide to new version kubernetes and using helm3 thankyou
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Johan, thanks for watching. Sure I will look into it.
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Johan, i just had a look and nothing really changed significantly. The prcess is still applicable. Just the versions have changed. There is no use of helm3 in the installation process. Its still the same kubectl apply manifest file.
@armanpetrosyan5724
@armanpetrosyan5724 4 жыл бұрын
I have followed all the steps as shown in the video, however, after 1-2 minutes, I cannot connect the service from a browser that is in another network (outside the cluster).
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Arman, thanks for watching. How did you provision your Kubernetes cluster? What network your worker nodes are in and from which network you are trying to access the load balancer ip? More details please.
@tetianasavushkina1916
@tetianasavushkina1916 4 жыл бұрын
@@justmeandopensource , I have the same issue. Worker's network 10.0.1.70 , I try access from 176.119.28.205
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@tetianasavushkina1916 Thanks for watching. So your kubernetes nodes network is 10.0.1.0. What is this "176.119.28.205" ip?
@tetianasavushkina1916
@tetianasavushkina1916 4 жыл бұрын
@@justmeandopensource , 176.119.28.205 - external ip
@justmeandopensource
@justmeandopensource 4 жыл бұрын
@@tetianasavushkina1916 How come your external ip is in a different range to that of worker nodes. What range you specified in the metallb config?
@MrDjegsi
@MrDjegsi 4 жыл бұрын
Hi Just , nice video , l have implemented LB , and working good, but why this IP are not pingable ?
@justmeandopensource
@justmeandopensource 4 жыл бұрын
Hi Lulzim, Thanks for watching. Those IPs won't be pingable which is kind of expected and it is by design.
@balajisivaram1476
@balajisivaram1476 5 жыл бұрын
Hi Venkat, I followed this video to expose my app using metallb. Since I already had the cluster ready I just needed the loadblancer so that I can expose my app publically. After watching the video I'm able to set an external IP and when i curl the load balancer ip within the cluster I could see my app however when I access the load balancer ip on a browser it gives me page not found. I have used weave network for overlay. Any advice? I just started exploring kubernetes lately and thanks for the informative videos btw.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Balaji, thanks for watching this video. I have used Flannel as the overlay network on all my setup. I am going to quickly spin up a cluster and use weavenet and test metallb. Will update you shortly. Thanks
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Balaji, I just tried it using Weave Net and it worked perfectly fine. What network range your worker nodes are in and what network range you specified in the metallb config-map configuration? Thanks.
@balajisivaram1476
@balajisivaram1476 5 жыл бұрын
@@justmeandopensource Hi Venkat, thanks for looking. The address range I used for my nodes are 10.2.1.0/24. I have a single worker node and I configured it using kubedam. I used azure to deploy two virtual machines one for master and other for node my master has an ip of 10.2.1.4 and worker 10.2.1.6 so in the configuration file I specified a range between 10.2.1.8-10.2.1.20. please advise I have been using flannel but I remember last time had trouble bootstrapping the cluster using kubeadm using flannel after I tried weave it worked and never been a problem.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
I am not sure how it works in the cloud. But for me it works very well in both flannel and weave net.
@janjezek9333
@janjezek9333 5 жыл бұрын
Hi @Just me and Opensource. I like very much how clearly you explain complex things. But I have still a problem: I exactly followed your tutorial (except the IP range you provide / I customized it to be in my used IP range), but the LB keeps in state... I am on a Hetzner Cloud (because it's unbeatable cheap). Can you please help me to get my Loadbalancer running? I sit there now for two weeks on this issue and getting despair. Thank you in advance
@justmeandopensource
@justmeandopensource 5 жыл бұрын
Hi Jan, Thanks for watching this video. After you created the MetalLB resources, you create the configmap with ip address range details. This ip range should be in the same network as your worker nodes, otherwise it won't work. In my set up I have used Flannel as the pod overlay network. There are others like Calico, WeaveNet which I haven't tried. What overlay network you are using and how you had set up your cluster? Thanks, Venkat
@janjezek9333
@janjezek9333 5 жыл бұрын
@@justmeandopensource thank you for your response. I used the IPs from my workers. Then I tried IP ranges next to it. I also had in my mind, that my cloud provider does something "invisible" with the network routing. So I wrote them today and wait for their response. I use Calico right now. I setup the whole cluster through Rancher which is an awesome GUI for K8s. To be honest I am a software developer and not a devop-guy, so my knowledge of networks, routing and that stuff is extremely limited. This is also a reason why I use rancher. Right now I registered an account at Scaleway to try there my luck, they have nearly exact same prices on machines like Hetzner (where I have these issues). Are your demo on a real world cluster or on minikube? I will create now a cluster with Flannel on Hetzner. I also thought that I maybe have to make some tweaks in the kubeconfig to get my setup running.
@justmeandopensource
@justmeandopensource 5 жыл бұрын
The first overlay network I tried was flannel which worked and ever since my cluster setup is using flannel. For all the demos, I use my Laptop running Linux. I use one of the below setups for my cluster and recently only using the second option with LXC containers. Using Vagrant Virtual Box for nodes kzbin.info/www/bejne/rYHHenWbjK99qck Using LXC containers for nodes kzbin.info/www/bejne/joLZgoh7bNl0qc0 Thanks
@janjezek9333
@janjezek9333 5 жыл бұрын
@@justmeandopensource Hi @Just me and Opensource again. I spun up a new cluster with Flannel. (I didn't work out of the box. I had to add a yml file (raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml). I have now an "External IP" for the first time. (YAY!) But when I call my IP it's bringing me only to the "default backend 404" kubectl get all NAME READY STATUS RESTARTS AGE pod/nginx-57867cc648-tq6sq 1/1 Running 0 13m NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/kubernetes ClusterIP 10.43.0.1 443/TCP 35m service/nginx LoadBalancer 10.43.201.213 159.69.121.90 80:31432/TCP 13m NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/nginx 1/1 1 1 13m NAME DESIRED CURRENT READY AGE replicaset.apps/nginx-57867cc648 1 1 1 13m Do I have to add an ingress too? How can I resolve to a DNS?
@janjezek9333
@janjezek9333 5 жыл бұрын
By the way, I also had to use my Server IPs. kubectl get nodes -owide  ✔ NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME system1 Ready controlplane,etcd,worker 37m v1.13.4 159.69.121.90 Ubuntu 16.04.5 LTS 4.4.0-142-generic docker://18.9.4 apiVersion: v1 kind: ConfigMap metadata: namespace: metallb-system name: config data: config: | address-pools: - name: default protocol: layer2 addresses: - 159.69.121.90/32
[ Kube 33.1 ] How to deploy & use MetalLB in bare metal Kubernetes
12:30
Just me and Opensource
Рет қаралды 44 М.
[ Kube 31 ] Set up Nginx Ingress in Kubernetes Bare Metal
30:17
Just me and Opensource
Рет қаралды 72 М.
How Strong Is Tape?
00:24
Stokes Twins
Рет қаралды 43 МЛН
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 71 МЛН
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 22 МЛН
Webinar | Kubernetes on bare metal: ready for prime time!
1:05:13
Spectro Cloud
Рет қаралды 3,7 М.
[ Kube 69 ] Using Private Docker Registry in Kubernetes
30:58
Just me and Opensource
Рет қаралды 30 М.
[ Kube 59.2 ] Using Kubernetes Ingress with MetalLB
17:43
Just me and Opensource
Рет қаралды 33 М.
MetalLB and NGINX Ingress // Setup External Access for Kubernetes Applications
10:41
Why Cloudflare ditched nginx and wrote pingora in Rust
8:12
Core Dump
Рет қаралды 2,3 М.
[ Kube 35 ] Using Horizontal Pod Autoscaler in Kubernetes
24:59
Just me and Opensource
Рет қаралды 38 М.
[ Kube 113.1 ] Learn Kubesphere | Provisioning Kubernetes cluster with kubekey
24:39
How Strong Is Tape?
00:24
Stokes Twins
Рет қаралды 43 МЛН