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

string
required

The name of the resource.

See alsoKubernetes object names

namespace

string

The namespace of the resource.

See alsoPlatform concept, Kubernetes namespaces, System namespaces

Spec properties

routingKey

string
required

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.

UpdatableTrue
See alsoRouting key concept

host

string
required

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.

UpdatableTrue

port

integer
required

The port of the local listener. Clients at this site use the listener host and port to establish connections to the remote service.

UpdatableTrue

Status properties

status

string

The current state of the resource.

  • Pending: The resource is being processed.
  • Error: There was an error processing the resource. See message for more information.
  • Ready: The resource is ready to use.
See alsoResource status

message

string

A human-readable status message. Error messages are reported here.

See alsoResource status

hasMatchingConnector

boolean

True if there is at least one connector with a matching routing key (usually in a remote site).

DefaultFalse
See alsoRouting key concept