AWS Load Balancer controller
Jump to navigation
Jump to search
AWS Load Balancer Controller 2018 (formerly AWS ALB Ingress Controller) is the open-source AWS ALB Ingress controller triggers the creation of an ALB and the necessary supporting AWS resources whenever a Kubernetes user declares an Ingress resource in the cluster.
- https://docs.aws.amazon.com/eks/latest/userguide/aws-load-balancer-controller.html
- https://kubernetes-sigs.github.io/aws-load-balancer-controller/
- Configuration: https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.2/deploy/configurations/
Installation example[edit]
Examples[edit]
apiVersion: v1 kind: ServiceAccount metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: aws-load-balancer-controller name: aws-load-balancer-controller namespace: kube-system annotations: eks.amazonaws.com/role-arn: arn:aws:iam::111122223333:role/AmazonEKSLoadBalancerControllerRole
kubectl apply -f aws-load-balancer-controller-service-account.yaml serviceaccount/aws-load-balancer-controller created
kubectl apply -f aws-load-balancer-controller-service-account.yaml serviceaccount/aws-load-balancer-controller unchanged
helm repo add eks helm install aws-load-balancer-controller eks/aws-load-balancer-controller -n kube-system --set clusterName=education-eks-LZIQaQdP --set serviceAccount.create=false --set serviceAccount.name=aws-load-balancer-controller NAME: aws-load-balancer-controller LAST DEPLOYED: Tue May 24 23:48:48 2022 NAMESPACE: kube-system STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: AWS Load Balancer controller installed!
Verify:
kubectl get deployment -n kube-system aws-load-balancer-controller NAME READY UP-TO-DATE AVAILABLE AGE aws-load-balancer-controller 2/2 2 2 75s
kubectl -n kube-system get pods | grep aws-load-balancer-controller aws-load-balancer-controller-5bcbf46bdb-b4znr 1/1 Running 0 40m aws-load-balancer-controller-5bcbf46bdb-xgs4s 1/1 Running 0 40m
Annotations[edit]
https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/guide/service/annotations/
service.beta.kubernetes.io/aws-load-balancer-type: [ nlb-ip | external ] service.beta.kubernetes.io/aws-load-balancer-nlb-target-type service.beta.kubernetes.io/aws-load-balancer-scheme: [ internal | internet-facing ] service.beta.kubernetes.io/aws-load-balancer-healthcheck-protocol service.beta.kubernetes.io/aws-load-balancer-healthcheck-port service.beta.kubernetes.io/aws-load-balancer-healthcheck-path: "/healthz"
Related[edit]
- EKS add-ons: AWS Load Balancer Controller add-on
helm install --set persistence.enabled=true grafana grafana/grafana --set ingress.enabled=true
failed to introspect vpcID from ec2Metadata due to RequestError: send request failed
- AWS Load Balancer Controller changelog
AwsLoadBalancerController
- F1028 specify --aws-vpc-id instead if ec2Metadata is unavailable
amazon-vpc-cni-k8s
kubectl expose deployment
- Nginx controller
service.beta.kubernetes.io
Activities[edit]
See also[edit]
- AWS Load Balancer controller
service.beta.kubernetes.io
, AWS Load Balancer Controller- Load Balancers, LoadBalancerSourceRanges, Kubernetes LoadBalancer, ALB,
type: LoadBalancer
, AWS Load Balancer controller, Emerald Dshackle - Ingress controllers, NGINX Ingress Controller,
minikube addons enable ingress
,kubectl get ingress, kubectl get ingressclass, kubectl describe ingress
,Ingress:
, Ingress API, AWS Load Balancer Controller, Envoy Proxy, GKE Ingress, Kubernetes Gateway API,ingress.k8s.aws, ingresses.networking.k8s.io
,kind: Ingress
: (tls:, hosts:
),SuccessfullyReconciled
- Kubernetes controllers: Ingress,
controller., AWS Load Balancer controller, kubectl describe ingressclass nginx
Advertising: