You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The PulsarConnection resource defines the connection details for a Pulsar cluster. It covers service URLs, authentication, TLS verification, and cluster metadata used by the operator.
Specifications
Field
Description
Required
Version
adminServiceURL
Admin service URL (e.g., http://cluster-broker.test.svc.cluster.local:8080).
No
All
adminServiceSecureURL
HTTPS admin service URL.
No
≥ 0.3.0
brokerServiceURL
Broker service URL (e.g., pulsar://pulsar-sn-platform-broker.test.svc.cluster.local:6650).
No
≥ 0.3.0
brokerServiceSecureURL
TLS broker service URL (e.g., pulsar+ssl://pulsar-sn-platform-broker.test.svc.cluster.local:6651).
No
≥ 0.3.0
clusterName
Pulsar cluster name (used for Geo-Replication).
No
≥ 0.3.0
authentication
Authentication configuration (token, oauth2, or tls).
No
All
brokerClientTrustCertsFilePath
Path to trusted TLS cert for broker connections.
No
≥ 0.3.0
tlsAllowInsecureConnection
Allow insecure TLS connection to brokers.
No
≥ 0.5.0
tlsEnableHostnameVerification
Enable hostname verification for TLS.
No
≥ 0.5.0
tlsTrustCertsFilePath
CA certificate path for TLS verification.
No
≥ 0.5.0
Fields with a listed version are available only from that version onward.
Authentication Methods
The authentication field supports JWT token, OAuth2, or TLS client certificate authentication. Configure only one method per connection.
Subfields
Field
Description
Type
Required
token
JWT Token authentication configuration.
ValueOrSecretRef
No
oauth2
OAuth2 authentication configuration.
PulsarAuthenticationOAuth2
No
tls
TLS client certificate authentication.
PulsarAuthenticationTLS
No
ValueOrSecretRef
Field
Description
Type
Required
value
Direct string value.
*string
No
secretRef
Reference to a Kubernetes Secret.
*SecretKeyRef
No
file
Local file path whose contents are used as the value.
When you want the controller to read OAuth2 credentials from a mounted file instead of embedding them in the CR or a Secret reference, mount the secret into the operator pod and point key.file at the mounted path.
Check status: kubectl -n <namespace> get pulsarconnection.resource.streamnative.io
Update: edit connection.yaml and re-apply (for example, remove authentication if the cluster is unauthenticated).
Delete: kubectl -n <namespace> delete pulsarconnection.resource.streamnative.io <name>; the CR is removed after dependent Pulsar resources are cleaned up.