Careful!

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

Looking for even older versions? Learn more.

AWS EKS

To install and run Kuma on AWS EKS 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.

1. Download Kuma

To run Kuma on AWS EKS, you need to download a compatible version of Kuma for the machine from which you will be executing the commands.

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

curl -L https://kuma.io/installer.sh | VERSION=1.2.3 sh -

2. Run Kuma

Once downloaded, you will find the contents of Kuma in the kuma- 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-1.2.3/bin

Finally we can install and run Kuma in either standalone or multi-zone mode:

Standalone mode is perfect when running Kuma in a single cluster across one environment:

./kumactl install control-plane | kubectl apply -f -

To learn more, read about the deployment modes available.

We suggest adding the kumactl executable to your 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/kumactl /usr/local/bin/kumactl

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

3. 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:

You can use Kuma with kubectl to perform read and write operations on Kuma resources. For example:

kubectl get meshes
# NAME          AGE
# default       1m

or you can enable mTLS on the default Mesh with:

echo "apiVersion: kuma.io/v1alpha1
kind: Mesh
metadata:
  name: default
spec:
  mtls:
    enabledBackend: ca-1
    backends:
    - name: ca-1
      type: builtin" | kubectl apply -f -

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

4. Quickstart

Congratulations! You have successfully installed Kuma on AWS EKS 🚀.

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

Last Updated: 2/8/2024, 18:54:18 PM