it is good overview with practical, Thank you. One query i have is what if i have multiple services in my cluster? if i update the ingress file and re-run will it create a new load balancer or will it just update the paths to existing load balancer ?
Hi Sai, Changing the underlying services within the ingress will not recreate the entire load balancer. It will update/recreate the target groups and listeners associated with the load balancer.
Hi Anubhav, thanks :) Node port service is used to expose the service running in each node at a static port. Then load balancer balances the traffic between the node and exposes the traffic externally.
Hi sangnd, Its hard to tell without looking at the logs. You can try running the below command from cmd to check whats going on. kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller Also, ensure that you have the correct tags set for the subnets.
This videos explains the cluster setup and base infra that I used for this th-cam.com/video/I6yqVBhNXxY/w-d-xo.html. I am using just one default security group, so I dint have to do anything additional. If you're using multiple security groups attached to worker node, exactly one security group must be tagged as follows. Replace my-cluster with your cluster name. Key - kubernetes.io/cluster/my-cluster Value - shared or owned
I have this error in ingress: Failed build model due to WebIdentityErr: failed to retrieve credentials caused by: InvalidIdentityToken: Incorrect token audience status code: 400 Please advise.
Hi! Nice guide, but I met this problem: kubectl logs -n kube-system aws-load-balancer-controller-66f9fb7dc5-gchsh {"level":"info","ts":"2024-03-05T15:01:09Z","msg":"version","GitVersion":"v2.7.1","GitCommit":"f689bbdf73d30f23b44acfef2c3b8e7280cd66ee","BuildDate":"2024-02-09T16:21:17+0000"} {"level":"error","ts":"2024-03-05T15:01:13Z","logger":"setup","msg":"unable to initialize AWS cloud","error":"failed to introspect vpcID from EC2Metadata or Node name, specify --aws-vpc-id instead if EC2Metadata is unavailable: failed to fetch VPC ID from instance metadata: EC2MetadataError: failed to make EC2Metadata request
we are creating service account in kube-system namespace. Deployment & Ingress are getting created in game-2048 namespace. Then isn't that an issue? Because I heard every namespace will get default service account, so in that case how game-2048 can use our aws service account?
Hi Sathish, The service account created under kube-system namespace is attached to the load balancer controller role and allows permissions related to load balancing. So, this is a generic and be used across the cluster. That is the reason its tied to kube-system namespace. While the ingress is specific to our use case. So, its tied to game-2048. Hope that makes sense.
Quick update the load balancer policy is not working, I had to update the same to create the Load Balancer, otherwise the host address was coming as blank.
Hi I have created the load balancer controller and the ingress as mentioned. But the ALB is not getting created and not getting the address for the ingress. When checked the logs below message appear continuously - 1 leaderelection.go:248] attempting to acquire leader lease kube-system/aws-load-balancer-controller-leader
Very nicely explained, on how to set up ingress for our EKS cluster! Keep up the great work. May God bless you!
Thank you for your blessings :)
Thank you i was stuck with this tagging of each subnet you saved my day. Thanks
You are so welcome! :)
Nicely delivered the content with clear demonstration. Go ahead. Great Job. 👍
thanks for your explaining , i succeed to deploy it
Glad it helped
I deployed and followed same steps but in ALB I'm not able to see target group under ALB and instances attached. That's why I am getting 503 error
it is good overview with practical, Thank you.
One query i have is what if i have multiple services in my cluster? if i update the ingress file and re-run will it create a new load balancer or will it just update the paths to existing load balancer ?
Hi Sai,
Changing the underlying services within the ingress will not recreate the entire load balancer. It will update/recreate the target groups and listeners associated with the load balancer.
@@listentolearn2363 Thanks for the quick reply. will check it practically.🙂
After setting up the ingress, I'm unable to retrieve the ingress name (domain).
me too
where we needs to create NAT gateway is in private or public subnet
it has to go in public subnet
Hi
i followed each every step that you mention, for me the load balancer is not created. Can you provide any suggestion that?
That was a fantastic explanation ... What is the purpose of Node Port Service if we are exposing our app-endpoint using Application Load Balancer ?
Hi Anubhav, thanks :)
Node port service is used to expose the service running in each node at a static port. Then load balancer balances the traffic between the node and exposes the traffic externally.
can you please do session on private endpoint cluster access and one more question what will be the
tag name for internal load balancer
Hi Krishna,
tags for internal load balancer (private subnets): kubernetes.io/role/internal-elb
sure, will try to do a private endpoint cluster.
I have a issue with ingress. I already created ingress but aws loadbalancer not create. How we can fix this problem.
Hi sangnd,
Its hard to tell without looking at the logs. You can try running the below command from cmd to check whats going on.
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller
Also, ensure that you have the correct tags set for the subnets.
@@listentolearn2363 How about security group? Do we have open port or eks cluster auto add ?
This videos explains the cluster setup and base infra that I used for this th-cam.com/video/I6yqVBhNXxY/w-d-xo.html. I am using just one default security group, so I dint have to do anything additional.
If you're using multiple security groups attached to worker node, exactly one security group must be tagged as follows. Replace my-cluster with your cluster name.
Key - kubernetes.io/cluster/my-cluster
Value - shared or owned
@@listentolearn2363 Oh thank you
Thanks@@listentolearn2363 Your suggestion pointed me in the right direction.
Great video, but this not working for eks fargate, target groups are not ok
Thanks. This one is with node groups. I will try to do a video with fargate.
I have this error in ingress: Failed build model due to WebIdentityErr: failed to retrieve credentials caused by: InvalidIdentityToken: Incorrect token audience status code: 400
Please advise.
Hi MrEG12341,
I would suggest to try the steps here to troubleshoot - repost.aws/knowledge-center/eks-load-balancer-webidentityerr
hi i flow the same steps but i unable to crate loadbalancer after applying ingress.yaml what can I do?
Hello, please try checking the logs.
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller
Hey, after creating th INgress file, the ALB is not giving any address. How to fix ?
Hello, please try checking the logs.
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller
Hi! Nice guide, but I met this problem:
kubectl logs -n kube-system aws-load-balancer-controller-66f9fb7dc5-gchsh
{"level":"info","ts":"2024-03-05T15:01:09Z","msg":"version","GitVersion":"v2.7.1","GitCommit":"f689bbdf73d30f23b44acfef2c3b8e7280cd66ee","BuildDate":"2024-02-09T16:21:17+0000"}
{"level":"error","ts":"2024-03-05T15:01:13Z","logger":"setup","msg":"unable to initialize AWS cloud","error":"failed to introspect vpcID from EC2Metadata or Node name, specify --aws-vpc-id instead if EC2Metadata is unavailable: failed to fetch VPC ID from instance metadata: EC2MetadataError: failed to make EC2Metadata request
\tstatus code: 401, request id: "}
Hello, please try setting aws-region
we are creating service account in kube-system namespace. Deployment & Ingress are getting created in game-2048 namespace. Then isn't that an issue? Because I heard every namespace will get default service account, so in that case how game-2048 can use our aws service account?
Hi Sathish,
The service account created under kube-system namespace is attached to the load balancer controller role and allows permissions related to load balancing. So, this is a generic and be used across the cluster. That is the reason its tied to kube-system namespace.
While the ingress is specific to our use case. So, its tied to game-2048.
Hope that makes sense.
@@listentolearn2363 got it, so for load balancer to use our AWS permissions we need to create in kube-system.
but you have used classic load balancer not application load balancer?
I followed the steps but my ALB is not provisioned. the Address is blank. How do i see the logs ?
thanks
you can check logs using -
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller
i modified the add tag in the elastic resource to * and it works
@@tonytran4234 can you please explain how exactly you resolved ? Where should i change ?
Hi, this process works same even if we take more than one service right?
Cause I have to deploy three microservices and routing takes places right ?
Hello, yeah, you should be able to extend this.
i have followed all the step still not able to create the alb
please try checking the logs.
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller
its helpful to me
thanks for the sharing
glad to hear that it was helpful. Thanks, Chilkuri!
Are you available on LinkedIn?
sorry, not at the moment.
Thanks, very well explained.
Thank you :)
Clear explanation 👌
Thank you 🙂
Quick update the load balancer policy is not working, I had to update the same to create the Load Balancer, otherwise the host address was coming as blank.
what did you change can you please
tell
Thanks Great work!
Thanks!
Thank you so so so much!
You're welcome! :)
why this has to be so tough
volume is very very low
I will increase the volume level in future videos. Try using 100% volume for this one, Thanks.
Hi I have created the load balancer controller and the ingress as mentioned. But the ALB is not getting created and not getting the address for the ingress. When checked the logs below message appear continuously - 1 leaderelection.go:248] attempting to acquire leader lease kube-system/aws-load-balancer-controller-leader
Hi, could you please check if the VPC and network settings match exactly as in video? esp DNS settings
Hi, were you able to find any solution for this?
Hi, i followed all of your steps but in the end load balancer was not created? Can you help me here..
Thanks
Hello, please try checking the logs.
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller