Configure Listeners in Kubernetes

You can customize the advertised ports for each listener on all Redpanda brokers, or disable listeners altogether.

Customize the advertised ports

To customize the advertised ports for each listener, replace <port> with the port that you want to use.

Redpanda doesn’t validate the configured port numbers. Make sure to verify the following:

  • Your configured port numbers are within the range that is assigned for node ports in your Kubernetes cluster.

  • Your Kubernetes cluster is accessible through your desired node port range. You may need to edit your inbound firewall rules.

  • Your configured port numbers are not in use by any other service.

  • Admin API

  • Kafka API

  • HTTP Proxy

  • Schema Registry

  • --values

  • --set

custom-admin-port.yaml
listeners:
  admin:
    external:
      default:
        advertisedPorts:
        - <port>
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values custom-admin-port.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set "listeners.admin.external.default.advertisedPorts={<port>}"
  • --values

  • --set

custom-kafka-port.yaml
listeners:
  kafka:
    external:
      default:
        advertisedPorts:
        - <port>
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values custom-kafka-port.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set "listeners.kafka.external.default.advertisedPorts={<port>}"
  • --values

  • --set

custom-pandaproxy-port.yaml
listeners:
  http:
    external:
      default:
        advertisedPorts:
        - <port>
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values custom-pandaproxy-port.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set "listeners.http.external.default.advertisedPorts={<port>}"
  • --values

  • --set

custom-schema-registry-port.yaml
listeners:
  schemaRegistry:
    external:
      default:
        advertisedPorts:
        - <port>
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values custom-schema-registry-port.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set "listeners.schemaRegistry.external.default.advertisedPorts={<port>}"

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

Disable external access

You can disable external access for all listeners or for individual listeners.

  • All listeners

  • Admin API

  • Kafka API

  • HTTP Proxy

  • Schema Registry

  • --values

  • --set

disable-external-access.yaml
external:
  enabled: false
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values disable-external-access.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set external.enabled=false
  • --values

  • --set

disable-external-admin-api.yaml
listeners:
  admin:
    external:
      default:
        enabled: false
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values disable-external-admin-api.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set listeners.admin.external.default.enabled=false
  • --values

  • --set

disable-external-kafka-api.yaml
listeners:
  kafka:
    external:
      default:
        enabled: false
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values disable-external-kafka-api.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set listeners.kafka.external.default.enabled=false
  • --values

  • --set

disable-external-pandaproxy.yaml
listeners:
  http:
    external:
      default:
        enabled: false
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values disable-external-pandaproxy.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set listeners.http.external.default.enabled=false
  • --values

  • --set

disable-external-schema-registry.yaml
listeners:
  schemaRegistry:
    external:
      default:
        enabled: false
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --values disable-external-schema-registry.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda -n redpanda --create-namespace \
  --set listeners.schemaRegistry.external.default.enabled=false

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

Next steps

Configure security for your listeners.