7.6 KiB
| title | description | weight | keywords | |||
|---|---|---|---|---|---|---|
| Quick Start with IBM Cloud | How to quickly setup Istio using IBM Cloud Public or IBM Cloud Private. | 21 |
|
Follow these instructions to install and run Istio in IBM Cloud. You can install Istio in IBM Cloud Public or IBM Cloud Private.
IBM Cloud Public
Follow these instructions to install and run Istio in IBM Cloud Public by using Helm and the IBM Cloud Kubernetes Service.
This guide installs the current release version of Istio.
Prerequisites - IBM Cloud Public
- Install the IBM Cloud CLI, the IBM Cloud Kubernetes Service plug-in, and the Kubernetes CLI. Istio requires the Kubernetes version 1.9 or later. Make sure to install the
kubectlCLI version that matches the Kubernetes version of your cluster. - Make sure you have a cluster of Kubernetes version of 1.9 or later. If you do not have a cluster available, create a version 1.9 or later cluster.
- Target the CLI to your cluster by running
ibmcloud ks cluster-config <cluster_name_or_ID>and copying and pasting the command in the output.
Initialize Helm and Tiller
-
Install the Helm CLI.
-
Create a service account for Tiller in the
kube-systemnamespace and a Kubernetes RBAC cluster role binding for thetiller-deploypod:{{< text yaml >}} apiVersion: v1 kind: ServiceAccount metadata: name: tiller namespace: kube-system
apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: tiller roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects:
- kind: ServiceAccount name: tiller namespace: kube-system {{< /text >}}
-
Create the service account and cluster role binding:
{{< text bash >}} $ kubectl create -f rbac-config.yaml {{< /text >}}
-
Initialize Helm and install Tiller:
{{< text bash >}} $ helm init --service-account tiller {{< /text >}}
-
Add the IBM Cloud Helm repository to your Helm instance:
{{< text bash >}} $ helm repo add ibm-charts https://registry.bluemix.net/helm/ibm-charts {{< /text >}}
Deploy the Istio Helm chart
-
If using a Helm version prior to 2.10.0, install Istio’s Custom Resource Definitions via
kubectl apply, and wait a few seconds for the CRDs to be committed in the kube-apiserver:{{< text bash >}} $ kubectl apply -f https://raw.githubusercontent.com/IBM/charts/master/stable/ibm-istio/templates/crds.yaml {{< /text >}}
-
Install the Helm chart to your cluster:
{{< text bash >}} $ helm install ibm-charts/ibm-istio --name=istio --namespace istio-system {{< /text >}}
-
Ensure the pods for the 9 Istio services and the pod for Prometheus are all fully deployed:
{{< text bash >}} $ kubectl get pods -n istio-system NAME READY STATUS RESTARTS AGE istio-citadel-748d656b-pj9bw 1/1 Running 0 2m istio-egressgateway-6c65d7c98d-l54kg 1/1 Running 0 2m istio-galley-65cfbc6fd7-bpnqx 1/1 Running 0 2m istio-ingressgateway-f8dd85989-6w6nj 1/1 Running 0 2m istio-pilot-5fd885964b-l4df6 2/2 Running 0 2m istio-policy-56f4f4cbbd-2z2bk 2/2 Running 0 2m istio-sidecar-injector-646655c8cd-rwvsx 1/1 Running 0 2m istio-statsd-prom-bridge-7fdbbf769-8k42l 1/1 Running 0 2m istio-telemetry-8687d9d745-mwjbf 2/2 Running 0 2m prometheus-55c7c698d6-f4drj 1/1 Running 0 2m {{< /text >}}
Upgrade
-
To upgrade your Istio Helm chart to the latest version:
{{< text bash >}} $ helm upgrade -f config.yaml istio ibm/ibm-istio {{< /text >}}
Uninstall
-
Uninstall the Istio Helm deployment:
{{< text bash >}} $ helm del istio --purge {{< /text >}}
If your Helm version is less than 2.9.0, then you need to manually cleanup extra job resource before redeploy new version of Istio chart:
{{< text bash >}} $ kubectl -n istio-system delete job --all {{< /text >}}
-
If desired, delete the Istio custom resource definitions:
{{< text bash >}} $ kubectl delete -f https://raw.githubusercontent.com/IBM/charts/master/stable/ibm-istio/templates/crds.yaml {{< /text >}}
IBM Cloud Private
Follow these instructions to install and run Istio in
IBM Cloud Private
using the Catalog module.
This guide installs the current release version of Istio.
Prerequisites - IBM Cloud Private
- You need to have an available IBM Cloud Private cluster. Otherwise, you can follow Installing IBM Cloud Private-CE to create an IBM Cloud Private cluster.
Deploy Istio via the Catalog module
- Log in to the IBM Cloud Private console.
- Click
Catalogon the right side of the navigation bar. - Click
Filteron the right side of the search box and select theibm-chartscheck box. - Click
Operationsin the left navigation pane.
{{< image width="100%" ratio="43.98%" link="./istio-catalog-1.png" caption="IBM Cloud Private - Istio Catalog" >}}
- Click
ibm-istioin the right panel.
{{< image width="100%" ratio="40.45%" link="./istio-catalog-2.png" caption="IBM Cloud Private - Istio Catalog" >}}
- (Optional) Change the Istio version using the
CHART VERSIONdrop-down. - Click the
Configurebutton.
{{< image width="100%" ratio="53.92%" link="./istio-installation-1.png" caption="IBM Cloud Private - Istio Installation" >}}
- Input the Helm release name (e.g. istio-1.0.3) and select
istio-systemas the target namespace. - Agree to the license terms.
- (Optional) Customize the installation parameters by clicking
All parameters. - Click the
Installbutton.
{{< image width="100%" ratio="55.07%" link="./istio-installation-2.png" caption="IBM Cloud Private - Istio Installation" >}}
After it is installed, you can find it by searching for its release name on the Helm Releases page.
{{< image width="100%" ratio="25.47%" link="./istio-release.png" caption="IBM Cloud Private - Istio Installation" >}}
Upgrade or Rollback
- Log in to the IBM Cloud Private console.
- Click the menu button on the left side of the navigation bar.
- Click
Workloadsand selectHelm Releases. - Find the installed Istio using its release name.
- Click
Actionand selectupgradeorrollback.
{{< image width="100%" ratio="41.28%" link="./istio-upgrade-1.png" caption="IBM Cloud Private - Istio Upgrade or Rollback" >}}
{{< image width="100%" ratio="32.52%" link="./istio-upgrade-2.png" caption="IBM Cloud Private - Istio Upgrade or Rollback" >}}
Uninstalling
- Log in to the IBM Cloud Private console.
- Click the menu button on the left side of the navigation bar.
- Click
Workloadsand selectHelm Releases. - Find the installed Istio using its release name.
- Click
Actionand selectdelete.
{{< image width="100%" ratio="32.52%" link="./istio-deletion.png" caption="IBM Cloud Private - Istio Uninstalling" >}}