Getting started with Anypoint Service Mesh: Provisioning Guide

mulesoft asm
Developer Relations
30 min read
Step 1: Get an Anypoint Service Mesh license

This tutorial will walk you through how to prepare an environment using Anypoint Service Mesh. If you are looking for the best place to get started, this tutorial will be your best place to get started. Before you can use Anypoint Service Mesh, you will need to obtain a license key by getting in touch with your MuleSoft account team. Additionally, if you are a Windows user there may be some steps in this guide that don't match up since this guide is biased towards Mac users. If this is your first time using MuleSoft, checkout our Hello Mule tutorial and click the signup button below to get started.

mac setup

If you have a Macbook, this tutorial will help you set up the tools you will need to interact with your Kubernetes Cluster.

- You need to be an Administrator to run the commands.
- Add terminal app security exception in Mac (after Catalina Update)

Returning users: If you have done these steps (2.1.1 - 2.1.5) before, you will need to run the command below and then remove your previous asmctl version.

brew update


Replace yourprofile with your own file directory path

cd /Users/{yourprofile}


This command removes your previous asmctl version

rm -rf .asm


2.1.1 Install homebrew

Open the terminal and paste the following code to install Homebrew

/bin/bash -c "$(curl -fsSL"


2.1.2 Install kubectl

This is required so you can interact with your K8s cluster.

brew install kubernetes-cli


2.1.3 Install Anypoint Service Mesh client

You install, manage, and troubleshoot your Anypoint Service Mesh instance by using the Anypoint Service Mesh client. To download the Anypoint Service Mesh client, type the following command at the command prompt:

curl -Ls > asmctl && chmod +x asmctl


Add the following to .bash_profile:

export PATH=$PATH:$HOME/.asm


2.1.4 Install istioctl

You’ll need to install istioctl to be able to install and interact with the ISTIO control plane. ASM 1.1 supports ISTIO v 1.6 & 1.7 - see latest info here.

Download ISTIO v.1.7.0

curl -L | ISTIO_VERSION=1.7.0 sh -


Make istioctl available in your terminal for easy access (NOTE: Please change the PATH to reflect your environment):

export PATH="$PATH:/Users/{yourdirectorystructure}/istio-1.7.0/bin"


2.1.5 Choose a Kubernetes Environment you want to use

Jump to Step 3 to choose your Kubernetes environment

windows setup

2.2.1 Install Ubuntu on WSL (Windows Subsystem for Linux)

Windows Subsystem for Linux (WSL) is a compatibility layer for running Linux binary executables natively on Windows 10. Ensure that the "Windows Subsystem for Linux" optional feature is enabled. Next, open up your PowerShell as an Administrator and run the command:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux


Instead of this powershell command, you can open the start menu and search Turn Windows features on or off. Then Select Windows Subsystem for Linux and click OK. You will need to restart your computer when prompted. Next we are going to install the Ubuntu Linux Distribution.

Open the Microsoft Store and Ubuntu, then select GET from the distributions page.


Complete initialization of Ubuntu:

1) Launch the Ubuntu app and wait for the installation to complete

2) Once installation is complete, you will be prompted to create a new user account. This user account is for the normal non-admin user that you'll be logged-in as by default when launching

3) Update and upgrade Ubuntu by entering the following command in the Ubuntu terminal:

sudo apt update && sudo apt upgrade


2.2.2 Install kubectl (on Ubuntu, not Windows)

kubectl will be used via the Ubuntu app to run commands against the Kubernetes cluster. Note: kubectl can be used with Windows PowerShell however this approach does not work with the commands and scripts that need to be executed in the Service Mesh labs.

Open the Ubuntu app:

1) Download the latest release of kubectl:

curl -LO`curl -s`/bin/linux/amd64/kubectl


2) Make the kubectl binary executable:

chmod +x ./kubectl


3) Move the binary in to your PATH:

sudo mv ./kubectl /usr/local/bin/kubectl


4) Test to ensure the version you installed is up-to-date:

kubectl version --client


Need additional information?


2.2.3 Install Anypoint Service Mesh Utility

Next, install the Anypoint Service Mesh Utility via the command line:

mkdir -p $HOME/.asm && curl -Ls > $HOME/.asm/asmctl && chmod +x $HOME/.asm/asmctl && export PATH=$PATH:$HOME/.asm


Then add the following to .bash_profile:

export PATH=$PATH:$HOME/.asm


2.2.4 Install istioctl

You’ll need to install istioctl to be able to install and interact with ISTIO. At GA we will only support 1.6 and 1.7. Both versions will need different flags to be set at the time of installation.

curl -sL | sh -


export PATH=$PATH:$HOME/.istioctl/bin


If you like to check your installation then run the following:
istioctl version

Step 3 - Choose a way to run Kubernetes

Please choose a selection below of what tutorial you like to follow to setup Anypoint Service Mesh on your cloud of choice.

Getting started with Anypoint Service Mesh: AWS
Getting started with Anypoint Service Mesh: Azure
Getting started with Anypoint Service Mesh: Google Cloud Platform
Getting started with Anypoint Service Mesh: Azure Red Hat OpenShift

Thanks so much for reading the tutorial. Please click on one of the following tutorials to continue your learning of Anypoint Service Mesh. If you have any trouble, feel free to reach out to use @MuleDev on Twitter.

Try Anypoint Platform for free

Start free trial

Already have an account? Sign in.

Related tutorials