Listener resource
A listener binds a local connection endpoint to connectors in remote sites. Listeners and connectors are matched by routing key.
A Listener resource specifies a host and port for accepting connections from local clients. To expose a multi-port service, create multiple listeners with the same host value.
Examples
A listener in site West for the Hello World backend service in site East:
apiVersion: skupper.io/v2alpha1
kind: Listener
metadata:
name: backend
namespace: hello-world-west
spec:
routingKey: backend
host: backend
port: 8080
Metadata properties
name
The name of the resource.
See also | Kubernetes object names |
---|
namespace
The namespace of the resource.
See also | Platform concept, Kubernetes namespaces |
---|
Spec properties
routingKey
The identifier used to route traffic from listeners to connectors. To enable connecting to a service at a remote site, the local listener and the remote connector must have matching routing keys.
Updatable | True |
---|---|
See also | Routing key concept |
host
The hostname or IP address of the local listener. Clients at this site use the listener host and port to establish connections to the remote service.
Updatable | True |
---|
port
The port of the local listener. Clients at this site use the listener host and port to establish connections to the remote service.
Updatable | True |
---|
exposePodsByName
If true, expose each pod as an individual service.
Default | False |
---|
tlsCredentials
The name of a bundle of TLS certificates used for secure client-to-router communication. The bundle contains the server certificate and key. It optionally includes the trusted client certificate (usually a CA) for mutual TLS.
On Kubernetes, the value is the name of a Secret in the
current namespace. On Docker, Podman, and Linux, the value is
the name of a directory under input/certs/
in the current
namespace.
See also | Kubernetes TLS secrets |
---|
settings
A map containing additional settings. Each map entry has a string name and a string value.
Note: In general, we recommend not changing settings from their default values.
observer
: Set the protocol observer used to generate traffic metrics.
Default:auto
. Choices:auto
,none
,http1
,http2
.
Status properties
status
The current state of the resource.
Pending
: The resource is being processed.Error
: There was an error processing the resource. Seemessage
for more information.Ready
: The resource is ready to use.
message
A human-readable status message. Error messages are reported here.
hasMatchingConnector
True if there is at least one connector with a matching routing key (usually in a remote site).
Default | False |
---|---|
See also | Routing key concept |
conditions
A set of named conditions describing the current state of the resource.
Configured
: The listener configuration has been applied to the router.Matched
: There is at least one connector corresponding to this listener.Ready
: The listener is ready to use. All other conditions are true.
See also | Kubernetes conditions |
---|