Installation with Helm
Quick start instructions for the setup and configuration of Istio using the Helm package manager.
Installation with Helm prior to Istio version 0.7 is unstable and not recommended.
Prerequisites
The following instructions require you have access to Helm 2.7.2 or newer in your Kubernetes environment or alternately the ability to modify RBAC rules required to install Helm. Additionally Kubernetes 1.7.3 or newer is also required. Finally this Helm chart does not yet implement automatic sidecar injection.
Deploy with Helm
- If a service account has not already been installed for Helm, please install one:
kubectl create -f install/kubernetes/helm/helm-service-account.yaml
- Initialize Helm:
helm init --service-account tiller
- Create the Helm chart:
helm install install/kubernetes/helm/istio --name istio
Customization with Helm
The Helm chart ships with reasonable defaults. There may be circumstances in which defaults require overrides. To override Helm values, use --set key=value
argument during the helm install
command. Multiple --set
operations may be used in the same Helm operation.
Helm charts expose configuration options which are currently in alpha. The currently exposed options are explained in the following table:
Helm Variable | Possible Values | Default Value | Purpose of Key |
---|---|---|---|
global.namespace | any Kubernetes ns | istio-system | Specifies the namespace for Istio |
global.initializer.enabled | true/false | true | Specifies whether to use the Initializer |
global.proxy.hub | registry+namespace | release registry/namespace | Specifies the HUB for the proxy image |
global.proxy.tag | image tag | release unique hash | Specifies the TAG for the proxy image |
global.proxy.debug | true/false | false | Specifies whether proxy is run in debug mode |
global.pilot.hub | registry+namespace | release registry/namespace | Specifies the HUB for the pilot image |
global.pilot.tag | image tag | release unique hash | Specifies the TAG for the pilot image |
global.pilot.enabled | true/false | true | Specifies whether pilot is enabled/disabled |
global.security.hub | registry+namespace | release registry/namespace | Specifies the HUB for the ca image |
global.security.tag | image tag | release unique hash | Specifies the TAG for the ca image |
global.security.enabled | true/false | false | Specifies whether security is enabled/disabled |
global.mixer.hub | registry+namespace | release registry/namespace | Specifies the HUB for the mixer image |
global.mixer.tag | image tag | release unique hash | Specifies the TAG for the mixer image |
global.mixer.enabled | true/false | true | Specifies whether mixer is enabled/disabled |
global.hyperkube.hub | registry+namespace | quay.io/coreos/hyperkube | Specifies the HUB for the hyperkube image |
global.hyperkube.tag | image tag | v1.7.6_coreos.0 | Specifies the TAG for the hyperkube image |
global.ingress.use_nodeport | true/false | false | Specifies whether to use nodeport or LB |
global.ingress.nodeport_port | 32000-32767 | 32000 | If nodeport is used, specifies its port |
Uninstalling
Uninstall Istio:
helm delete --purge istio