Installing the Skupper controller
If you are using Skupper on local systems (Podman, Docker, Linux), you must install the CLI.
Before you can create a site on Kubernetes, you must install the Skupper controller. You can install the controller using the following methods:
- Directly using YAML
- Helm charts
- Operator
After installing the Skupper controller, you can create sites using the CLI or YAML:
NOTE: If you install the controller scoped to cluster, you can create sites in any namespace. If you scope the controller to a namespace, you can only create sites in that namespace.
Installing the Skupper controller using YAML
Prerequisites
- cluster-admin access to cluster
Procedure
Install a cluster-scoped controller using the following commands:
kubectl apply -f https://github.com/skupperproject/skupper/releases/download/2.1.1/skupper-cluster-scope.yaml
Install a namespace-scoped controller using the following commands:
kubectl apply -f https://github.com/skupperproject/skupper/releases/download/2.1.1/skupper-namespace-scope.yaml
Installing the Skupper controller using the Skupper Helm charts
Prerequisites
- cluster-admin access to cluster
- helm (See https://helm.sh/docs/intro/install/)
Procedure
Run the following command to install a cluster-scoped controller:
helm install skupper oci://quay.io/skupper/helm/skupper --version 2.1.1
To install a namespace-scoped controller, add the --set scope=namespace option.
Installing the Skupper CLI
You can use the Skupper CLI with Kubernetes or on local systems (Podman, Docker, Linux).
On local systems, the CLI is all you require to create a site.
Procedure
To download the latest release:
curl https://skupper.io/v2/install.sh | sh
To download a specific version, download from Releases page.
On local systems, you can install the controller using:
skupper system install -p [podman, docker, linux]
Upgrading sites
To upgrade a site, you need to upgrade the controller using the same method you used to install Skupper, for example, one of the following:
- Applying the latest Helm chart
- Applying the latest YAML
To update the Skupper CLI:
curl https://skupper.io/v2/install.sh | sh
Upgrading local sites
There are two distinct procedures for updating your Skupper installation: updating the site configuration and manually updating the controller.
Standard Site Update
To update an existing site to the latest images or configuration matching your current CLI version:
Procedure
Ensure you have the latest version of the Skupper CLI installed.
Run the reload command:
skupper system reloadThis command refreshes the site definition and pulls the latest images associated with the CLI version.
Updating the controller
Currently, skupper system uninstall protects active sites by refusing to run if a site is detected. However, if you need to force an update to the controller itself (to pick up a new controller version) without deleting your sites, follow this manual workaround:
Prerequisites
- Ensure your CLI is updated to the target version.
Procedure
Stop and remove the controller container. The container is named
<user>-skupper-controller.Podman
podman rm -f <user>-skupper-controllerDocker
docker rm -f <user>-skupper-controllerNote: Replace
<user>with the specific username under which Skupper is running.Re-install the controller. Run the install command to recreate the controller using the new CLI version.
skupper system installVerify the controller is recreated with the updated version.