Difference between revisions of "AWS Load Balancer controller"
Jump to navigation
Jump to search
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
AWS Load Balancer [[Controller]] [[AWS timeline|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. | AWS Load Balancer [[Controller]] [[AWS timeline|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://docs.aws.amazon.com/eks/latest/userguide/aws-load-balancer-controller.html | ||
− | * https://kubernetes-sigs.github.io/aws-load-balancer-controller | + | * https://kubernetes-sigs.github.io/aws-load-balancer-controller/ |
* Configuration: https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.2/deploy/configurations/ | * Configuration: https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.2/deploy/configurations/ | ||
Line 8: | Line 8: | ||
* See also [[AWS Load Balancer Controller add-on]] | * See also [[AWS Load Balancer Controller add-on]] | ||
− | + | == Examples == | |
apiVersion: v1 | apiVersion: v1 | ||
[[kind: ServiceAccount]] | [[kind: ServiceAccount]] | ||
Line 47: | Line 47: | ||
aws-load-balancer-controller-5bcbf46bdb-b4znr 1/1 Running 0 40m | aws-load-balancer-controller-5bcbf46bdb-b4znr 1/1 Running 0 40m | ||
aws-load-balancer-controller-5bcbf46bdb-xgs4s 1/1 Running 0 40m | aws-load-balancer-controller-5bcbf46bdb-xgs4s 1/1 Running 0 40m | ||
+ | |||
+ | == [[AWS Load Balancer Controller annotations|Annotations]] == | ||
+ | https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/guide/service/annotations/ | ||
+ | {{service.beta.kubernetes.io TOC}} | ||
== Related == | == Related == | ||
− | * [[EKS add-ons]] | + | * [[EKS add-ons]]: [[AWS Load Balancer Controller add-on]] |
* <code>[[helm install --set persistence.enabled=true grafana grafana/grafana --set ingress.enabled=true]]</code> | * <code>[[helm install --set persistence.enabled=true grafana grafana/grafana --set ingress.enabled=true]]</code> | ||
* <code>[[failed to introspect vpcID from ec2Metadata due to RequestError: send request failed]]</code> | * <code>[[failed to introspect vpcID from ec2Metadata due to RequestError: send request failed]]</code> | ||
Line 58: | Line 62: | ||
* <code>[[kubectl expose deployment]]</code> | * <code>[[kubectl expose deployment]]</code> | ||
* [[Nginx controller]] | * [[Nginx controller]] | ||
+ | * <code>[[service.beta.kubernetes.io]]</code> | ||
== Activities == | == Activities == | ||
Line 63: | Line 68: | ||
== See also == | == See also == | ||
+ | * {{AWS Load Balancer controller}} | ||
+ | * {{service.beta.kubernetes.io}} | ||
* {{LB}} | * {{LB}} | ||
* {{Ingress}} | * {{Ingress}} |
Latest revision as of 09:30, 3 October 2024
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: