Kubernetes

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

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

    To run Kuma on Kubernetes, 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:

    You can also download the distribution manually. Download a distribution for the client host from where you will be executing the commands to access Kubernetes:

    and extract the archive with:

    1. $ tar xvzf kuma-*.tar.gz

    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 .

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

    So we enter the bin folder by executing:

    1. $ cd kuma-1.1.0/bin

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

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

    To learn more, read about the deployment modes available.

    Multi-zone mode is perfect when running one deployment of Kuma that spans across multiple Kubernetes clusters, clouds and VM environments under the same Kuma deployment.

    This mode also supports hybrid Kubernetes + VMs deployments.

    To learn more, read the .

    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:

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

      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:

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

      And then navigate to 127.0.0.1:5681/gui (opens new window) to see the GUI.

      1. $ kubectl get meshes
      2. NAME AGE
      3. default 1m

      or you can enable mTLS on the default Mesh with:

      Kuma ships with a read-only HTTP API that you can use to retrieve Kuma resources.

      By default the HTTP API listens on port 5681. To access Kuma we need to first port-forward the API service with:

      And then you can navigate to to see the HTTP API.

      You can use the kumactl CLI to perform read-only operations on Kuma resources. The kumactl binary is a client to the Kuma HTTP API, you will need to first port-forward the API service with:

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

      and then run kumactl, for example:

      1. $ kumactl get meshes
      2. default off off off off

      You can configure kumactl to point to any remote kuma-cp instance by running:

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

      Congratulations! You have successfully installed Kuma on Kubernetes 🚀.

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