Kubernetes: Install Istio using Istioctl


General

https://istio.io/docs/setup/install/istioctl/

Install istioctl client

Option 1

brew install istioctl

Option 2

Download the latest Istio version from GitHub.

curl -L https://istio.io/downloadIstio | sh -
cd istio-1.10.2
sudo cp ./bin/istioctl /usr/local/bin/istioctl
sudo chmod +x /usr/local/bin/istioctl

Optional

Enable command-line completion within zshrc.

{
  mkdir -p ~/completions && istioctl collateral --zsh -o ~/completions
  source ~/completions/_istioctl
  echo "source ~/completions/_istioctl" >> ~/.zshrc
}

Verify before installation

istioctl verify-install

Download Istio

Download the latest Istio version from GitHub.

curl -L https://istio.io/downloadIstio | sh -

OR download a specific version.

curl -L https://git.io/getLatestIstio | ISTIO_VERSION=1.7.5 sh

Change directory into the Istio package directory.

cd istio-1.7.5

Export $PATH.

export PATH=$PWD/bin:$PATH

Install Istio

View profiles.

https://istio.io/docs/setup/additional-setup/config-profiles/

istioctl profile list

I will be installing profile default. If you don’t specify a profile, the default is used.

Note: SDS is enabled by default from Version 1.5 and above.

istioctl install --set profile=default

Verify after installation

Generate your manifest. Use the same options that you used during the initial installation.

istioctl manifest generate --set profile=default > istio-ingressgateway.yaml

Verify.

istioctl verify-install -f istio-ingressgateway.yaml

Overview

Get an overview of your mesh.

istioctl proxy-status

Uninstall

istioctl manifest generate --set profile=default | kubectl delete -f -