This guide explains how to configure per-pod networking for PulsarBroker usingDocumentation Index
Fetch the complete documentation index at: https://docs.streamnative.io/llms.txt
Use this file to discover all available pages before exploring further.
networking.podService and advertisedListeners.
Overview
Two features work together to enable per-pod access:| Feature | Purpose |
|---|---|
networking.podService | Creates a dedicated Kubernetes Service for each broker pod |
advertisedListeners | Configures brokers to advertise custom addresses to clients |
- Istio Federation / Multi-cluster communication
- Direct pod access scenarios
Configuration
Example
Configuration Reference
networking.podService
| Field | Type | Default | Description |
|---|---|---|---|
enabled | bool | false | Enable per-pod Service creation |
type | string | ClusterIP | Service type: ClusterIP, LoadBalancer, or NodePort |
annotations | map | {} | Annotations to add to each pod Service |
advertisedListeners
| Field | Type | Description |
|---|---|---|
name | string | Unique identifier for this listener |
hostTemplate | string | Hostname template, supports $(POD_NAME) and $(POD_ID) |
protocols.pulsar.containerPort | int | Port the broker container listens on |
protocols.pulsar.advertisedPort | int | Port advertised to clients |
Use a non-default port (e.g., 6660) to avoid conflict with the default
brokerServicePort (6650).Verify Configuration
Check Created Services
Verify Service Selector
{"statefulset.kubernetes.io/pod-name":"pulsar-broker-0"}