GitHub

Skupper

Skupper is an over-the-top, multi-platform application interconnect. Skupper makes it easy to deploy private application networks that span multiples sites and platforms.

Skupper v2 is the latest generation of Skupper. It has a new declarative API based on CRDs, a new CLI, improved performance, and broader platform support.

Skupper v1 resources are available here.

Use cases

Installation

Install Skupper on Kubernetes:

kubectl apply -f https://skupper.io/install.yaml

Install the Skupper CLI:

curl https://skupper.io/install.sh | sh

The Skupper API

Site 1
Site 2
kind: Site
metadata:
  name: west
  namespace: hello-world-west
spec:
  linkAccess: default
--
kind: Listener
metadata:
  name: backend
  namespace: hello-world-west
spec:
  routingKey: backend
  host: backend
  port: 8080
kind: Site
metadata:
  name: east
  namespace: hello-world-east
--
kind: Connector
metadata:
  name: backend
  namespace: hello-world-east
spec:
  routingKey: backend
  selector: app=backend
  port: 8080

Use the CLI to link the sites:

Site 1
Site 2
skupper token issue ~/token.yaml
skupper token redeem ~/token.yaml

The Skupper CLI

Site 1
Site 2
skupper site create west --enable-link-access
skupper listener create backend 8080
skupper token issue ~/token.yaml
skupper site create east
skupper connector create backend 8080
skupper token redeem ~/token.yaml