macOS

To install and run Kuma on macOS execute the following steps:

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

1. Download Kuma

To run Kuma on macOS you can choose among different installation methods:

Run the following script to automatically detect the operating system and download Kuma:

  1. $ curl -L https://kuma.io/installer.sh | sh -

You can also download the distribution manually:

Then extract the archive with:

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

If you only need the Kuma CLI kumactl, then you can also execute:

  1. $ brew install kumactl

2. Run Kuma

Once downloaded, you will find the contents of Kuma in the kuma-0.5.1 folder. In this folder, you will find - among other files - the bin directory that stores all the executables for Kuma.

So we enter the bin folder by executing:

  1. $ cd kuma-0.5.1/bin

And we can then proceed to run Kuma with:

  1. $ ./kuma-cp run

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:

  1. ln -s ./kumactl /usr/local/bin/kumactl

Note: By default this will run Kuma with a memory backend, but you can use a persistent storage like PostgreSQL by updating the conf/kuma-cp.conf file.

3. Use Kuma

Kuma (kuma-cp) is now running! Now that Kuma has been installed you can access the control-plane via either the GUI, 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 port 5683.

To access Kuma you can navigate to 127.0.0.1:5683macOS - 图2 to see the GUI.

Kuma ships with a read and write HTTP API that you can use to perform operations on Kuma resources. By default the HTTP API listens on port 5681.

To access Kuma you can navigate to 127.0.0.1:5681macOS - 图3 to see the HTTP API.

You can use the kumactl CLI to perform read and write operations on Kuma resources. The kumactl binary is a client to the Kuma HTTP API. For example:

  1. $ kumactl get meshes
  2. NAME mTLS METRICS LOGGING TRACING
  3. default off off off off

or you can enable mTLS on the default Mesh with:

  1. echo "type: Mesh
  2. name: default
  3. mtls:
  4. enabledBackend: ca-1
  5. backends:
  6. - name: ca-1
  7. type: builtin" | kumactl apply -f -

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

  1. $ kumactl config control-planes add --name=XYZ --address=http://{address-to-kuma}:5681

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

4. Quickstart

Congratulations! You have successfully installed Kuma on macOS 🚀.

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