Skip to content
GitHub

Connector resource

A connector binds a local workload to listeners in remote sites. Listeners and connectors are matched by routing key.

On Kubernetes, a Connector resource has a selector and port for specifying workload pods.

On Docker, Podman, and Linux, a Connector resource has a host and port for specifying a local server. Optionally, Kubernetes can also use a host and port.

Examples

A connector in site East for the Hello World backend service:

apiVersion: skupper.io/v2alpha1
kind: Connector
metadata:
  name: backend
  namespace: hello-world-east
spec:
  routingKey: backend
  selector: app=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

Spec properties

routingKey

string
required
The identifier used to route traffic from listeners to connectors. To expose a local workload to a remote site, the remote listener and the local connector must have matching routing keys.
UpdatableTrue
See alsoRouting key concept

port

integer
required
The port on the target server to connect to.
UpdatableTrue

selector

string
frequently used
A Kubernetes label selector for specifying target server pods. It uses `=` syntax. On Kubernetes, either `selector` or `host` is required.
UpdatableTrue
See alsoKubernetes label selectors

host

string
frequently used
The hostname or IP address of the server. This is an alternative to `selector` for specifying the target server. On Kubernetes, either `selector` or `host` is required. On Docker, Podman, or Linux, `host` is required.
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.

message

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

hasMatchingListener

boolean
True if there is at least one listener with a matching routing key (usually in a remote site).
DefaultFalse
See alsoRouting key concept