Use a Custom Service for External Access

By default, the Helm chart deploys a NodePort Service to provide external access to the Redpanda cluster. To use a custom Service, set external.type to null. Then, you can create your own Services to provide external access or leave the deployment without external access.

  • --values

  • --set

disable-external-service.yaml
external:
  enabled: true
  type: null
  addresses:
  - <subdomain-or-ip-address-for-replica-0>
  - <subdomain-or-ip-address-for-replica-1>
  - <subdomain-or-ip-address-for-replica-2>
helm upgrade --install redpanda redpanda/redpanda --namespace redpanda --create-namespace \
  --values disable-external-service.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set external.enabled=true
  --set external.type=null
  --set "external.addresses={<subdomain-or-ip-address-for-replica-0>,<subdomain-or-ip-address-for-replica-1>,<subdomain-or-ip-address-for-replica-2>}"

Make sure to configure external.addresses with addresses that point to the worker node on which each Redpanda broker is running. The addresses must be listed in order of the StatefulSet replicas. For example, the first address in the list is assigned to the first replica (redpanda-0 by default).

If you use a custom domain (external.domain), provide subdomains for each replica in external.addresses. This custom domain is appended to each subdomain (<subdomain-for-replica-0>.<custom-domain>).

For default values and documentation for configuration options, see the values.yaml file.

Next steps