Skip to content

HELM - Can't get EKS to provision load Balancer (not cluster IP) for NATS #1004

@shairozan

Description

@shairozan

What version were you using?

/ # nats-server --version
nats-server: v2.11.3

What environment was the server running in?

EKS via HELM.

values.yaml

nats:
  image: nats:2.11.3-alpine

  cluster:
    enabled: true
    replicas: 3

  jetstream:
    enabled: true

  auth:
    enabled: false

  service:
    enabled: true
    type: LoadBalancer
    annotations:
      service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
    ports:
      nats:
        enabled: true
        port: 4222
      cluster:
        enabled: true
        port: 6222
      monitor:
        enabled: false  # enable if needed
      metrics:
        enabled: false  # optional Prometheus support

websocket:
  enabled: false
mqtt:
  enabled: false
leafnodes:
  enabled: false
gateway:
  enabled: false
profiling:
  enabled: false

Is this defect reproducible?

Yeah. No matter what I've done, it never provisions a load balancer. I've also verified that the subnets are tagged as expected and I can manually create load balancers via manifest.

Given the capability you are leveraging, describe your expectation?

  1. I want to be able to define external load balancers for my cloud provider

Given the expectation, what is the defect you are observing?

  1. I am only getting clusterIP definitions:
❯ kubectl get service
NAME            TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)             AGE
nats            ClusterIP   172.20.10.251   <none>        4222/TCP            3m49s
nats-headless   ClusterIP   None            <none>        4222/TCP,8222/TCP   3m49s

Metadata

Metadata

Assignees

No one assigned

    Labels

    defectSuspected defect such as a bug or regression

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions