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, System 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 |
---|---|
See also | Individual pod services |
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 | Application TLS, Kubernetes TLS secrets, System TLS credentials |
---|
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
.
See also | Resource settings |
---|
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.
See also | Resource status |
---|
message
A human-readable status message. Error messages are reported here.
See also | Resource status |
---|
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 | Resource status, Kubernetes conditions |
---|