Careful!

You are browsing documentation for a version of Kuma that is not the latest release.

Kubernetes

To install and run Kuma execute the following steps:

Finally, you can follow the Quickstart to take it from here and continue your Kuma journey.

Kuma also provides Helm charts that we can use instead of this distribution.

Download Kumactl

To run Kuma on Kubernetes, you need to download the Kuma cli (kumactl) on your machine.

You can run the following script to automatically detect the operating system and download Kuma:

curl -L https://kuma.io/installer.sh | VERSION={"edition"=>"kuma", "version"=>"2.9.1", "release"=>"2.9.x", "latest"=>true, "releaseDate"=>"2024-10-22", "endOfLifeDate"=>"2025-10-22", "branch"=>"release-2.9"} sh -

You can omit the VERSION variable to install the latest version.

Once downloaded, you will find the contents of Kuma in the kuma-{"edition"=>"kuma", "version"=>"2.9.1", "release"=>"2.9.x", "latest"=>true, "releaseDate"=>"2024-10-22", "endOfLifeDate"=>"2025-10-22", "branch"=>"release-2.9"} folder. In this folder, you will find - among other files - the bin directory that stores the executables for Kuma, including the CLI client kumactl.

Note: On Kubernetes - of all the Kuma binaries in the bin folder - we only need kumactl.

So we enter the bin folder by executing: cd kuma-{"edition"=>"kuma", "version"=>"2.9.1", "release"=>"2.9.x", "latest"=>true, "releaseDate"=>"2024-10-22", "endOfLifeDate"=>"2025-10-22", "branch"=>"release-2.9"}/bin

We suggest adding the kumactl executable to your PATH (by executing: export PATH=$(pwd):$PATH) so that it’s always available in every working directory. Or - alternatively - you can also create link in /usr/local/bin/ by executing:

ln -s $PWD/kuma-{"edition"=>"kuma", "version"=>"2.9.1", "release"=>"2.9.x", "latest"=>true, "releaseDate"=>"2024-10-22", "endOfLifeDate"=>"2025-10-22", "branch"=>"release-2.9"}/bin/kumactl /usr/local/bin/kumactl

Run Kuma

Finally, we can install and run Kuma:

kumactl install control-plane | kubectl apply -f -

This example will run Kuma in standalone mode for a “flat” deployment, but there are more advanced deployment modes like “multi-zone”.

It may take a while for Kubernetes to start the Kuma resources, you can check the status by executing:

kubectl get pod -n kuma-system

Use Kuma

Kuma (kuma-cp) will be installed in the newly created kuma-system namespace! Now that Kuma has been installed, you can access the control-plane via either the GUI, kubectl, the HTTP API, or the CLI:

Kuma ships with a read-only GUI that you can use to retrieve Kuma resources. By default the GUI listens on the API port and defaults to :5681/gui.

To access Kuma we need to first port-forward the API service with:

kubectl port-forward svc/kuma-control-plane -n kuma-system 5681:5681

And then navigate to 127.0.0.1:5681/gui to see the GUI.

You will notice that Kuma automatically creates a Mesh entity with name default.

Quickstart

Congratulations! You have successfully installed Kuma on Kubernetes 🚀.

In order to start using Kuma, it’s time to check out the quickstart guide for Kubernetes deployments.