Kubernetes' deployment creates two (front-end and ...
# all-things-deployment
w
Kubernetes' deployment creates two (front-end and gms) internet-facing load-balancers. How can the load-balancers be created internal? Changing the front-end ingress annotation at https://github.com/acryldata/datahub-helm/blob/master/charts/datahub/values.yaml to
<http://alb.ingress.kubernetes.io/scheme|alb.ingress.kubernetes.io/scheme>: internal
is not sufficient. Does it require changing of service type from load_balancer to nodeport in the helm charts?
plus1 1
Copy code
ingress:
    enabled: true
    annotations:
      <http://kubernetes.io/ingress.class|kubernetes.io/ingress.class>: alb
      <http://alb.ingress.kubernetes.io/scheme|alb.ingress.kubernetes.io/scheme>: internal
      <http://alb.ingress.kubernetes.io/target-type|alb.ingress.kubernetes.io/target-type>: instance
Also ingress class is alb, but a classical load balancer is instead created in AWS. Classical load balancer will be deprecated in the near-future. Config values do not seem to have an effect on the creation of load balancers?
e
So by default we set service types to LoadBalancer which is why aws is trying to create a load balancer. You can set both svcs to have type NodePort which will support ingress while not creating these classical load balancers
Since you have already set up ingress on frontend, above woudl be my recommendation! These types are set under datahub-frontend.service.type and datahug-gms.service.type in the values.yaml
d
@wonderful-jordan-36532 I passed through a similar issue and being a kubernetes newbie, the solution I could found was to create seperate load balancers with a similar annotation you shared. I dont know why but the existing service was not changing. Our deployment is on Amazon EKS, and the annotation that made the service internal facing was
Copy code
...
kind:Service
metadata:
  annotations:
    <http://service.beta.kubernetes.io/aws-load-balancer-internal|service.beta.kubernetes.io/aws-load-balancer-internal>: "true"
...
spec:
  type: LoadBalancer
...
Afaik, NodePort would cause issues if your pods restarted.
w
Thanks, we went with servicetype of ClusterIP and deployed it with nginx reverse proxy
👍🏻 1