Planning to host airflow on Kubernetes (EKS), using the official helm chart. But the problem is it doesn't provide any way to use existing ELB. And as soon as I delete the release, it deletes the ELB created for ingress. Is there any way i can pass the elb address and create ingress upon it?
CodePudding user response:
If you wanted to retain the existing resource during the recreation, You could use below annotation in the template files to avoid helm to recreate.
helm.sh/resource-policy=keep
Something like this, This would retain the istio-ingressgateway NLB resource.
kubectl annotate svc -n istio-system istio-ingressgateway helm.sh/resource-policy=keep
CodePudding user response:
You can use TargetGroupBinding to connect a service to an existing load balander.
apiVersion: elbv2.k8s.aws/v1beta1
kind: TargetGroupBinding
metadata:
name: my-tgb
spec:
serviceRef:
name: <airflow-service-name>
port: 80
targetGroupARN: <arn-to-targetGroup>
Example taken from here: https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.4/guide/targetgroupbinding/targetgroupbinding/#sample-yaml