[Istio](https://istio.io/) is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data.
## Introduction
This chart bootstraps all Istio [components](https://istio.io/docs/concepts/what-is-istio/overview.html) deployment on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.
## Chart Details
This chart can install multiple istio components as subcharts:
- gateways
- sidecarInjectorWebhook
- galley
- mixer
- pilot
- security(citadel)
- tracing(jaeger)
- kiali
- grafana
- prometheus
To enable or disable each component, change the corresponding `enabled` flag.
Notes: You will need to apply `kubectl label namespace $your-namesapce istio-injection=enabled` to enabled automatic sidecar injection of your desired kubernetes namespaces.
enabled:false# Note that if using the demo or demo-auth yaml when installing via Helm, this default will be `true`.
replicaCount:1
hub:quay.io/kiali
tag:v0.20
contextPath:/kiali# The root context path to access the Kiali UI.
contextPath:/
nodeSelector:{}
# Specify the pod anti-affinity that allows you to constrain which nodes
...
...
@@ -44,11 +42,20 @@ ingress:
# - kiali.local
dashboard:
# login/anonymous
authStrategy:anonymous
username:admin
passphrase:admin
secretName:kiali# You must create a secret with this name - one is not provided out-of-box.
viewOnlyMode:false# Bind the service account to a role with only read access
grafanaURL:# If you have Grafana installed and it is accessible to client browsers, then set this to its external URL. Kiali will redirect users to this URL when Grafana metrics are to be shown.
jaegerURL:# If you have Jaeger installed and it is accessible to client browsers, then set this property to its external URL. Kiali will redirect users to this URL when Jaeger tracing is to be shown.
prometheusAddr:http://prometheus:9090
# When true, a secret will be created with a default username and password. Useful for demos.
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
name: Age
type: date
group:certmanager.k8s.io
version:v1alpha1
scope:Namespaced
names:
kind:Certificate
plural:certificates
shortNames:
-cert
-certs
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:orders.certmanager.k8s.io
labels:
app:certmanager
chart:certmanager
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
additionalPrinterColumns:
-JSONPath:.status.state
name:State
type:string
-JSONPath:.spec.issuerRef.name
name:Issuer
type:string
priority:1
-JSONPath:.status.reason
name:Reason
type:string
priority:1
-JSONPath:.metadata.creationTimestamp
description:|-
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
name: Age
type: date
group:certmanager.k8s.io
version:v1alpha1
names:
kind:Order
plural:orders
scope:Namespaced
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:challenges.certmanager.k8s.io
labels:
app:certmanager
chart:certmanager
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
additionalPrinterColumns:
-JSONPath:.status.state
name:State
type:string
-JSONPath:.spec.dnsName
name:Domain
type:string
-JSONPath:.status.reason
name:Reason
type:string
-JSONPath:.metadata.creationTimestamp
description:|-
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
description:The names of gateways and sidecars that should apply these routes
name:Gateways
type:string
-JSONPath:.spec.hosts
description:The destination hosts to which traffic is being sent
name:Hosts
type:string
-JSONPath:.metadata.creationTimestamp
description:|-
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
name: Age
type: date
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:destinationrules.networking.istio.io
labels:
app:istio-pilot
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:networking.istio.io
names:
kind:DestinationRule
listKind:DestinationRuleList
plural:destinationrules
singular:destinationrule
shortNames:
-dr
categories:
-istio-io
-networking-istio-io
scope:Namespaced
version:v1alpha3
additionalPrinterColumns:
-JSONPath:.spec.host
description:The name of a service from the service registry
name:Host
type:string
-JSONPath:.metadata.creationTimestamp
description:|-
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
name: Age
type: date
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:serviceentries.networking.istio.io
labels:
app:istio-pilot
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:networking.istio.io
names:
kind:ServiceEntry
listKind:ServiceEntryList
plural:serviceentries
singular:serviceentry
shortNames:
-se
categories:
-istio-io
-networking-istio-io
scope:Namespaced
version:v1alpha3
additionalPrinterColumns:
-JSONPath:.spec.hosts
description:The hosts associated with the ServiceEntry
name:Hosts
type:string
-JSONPath:.spec.location
description:Whether the service is external to the mesh or part of the mesh (MESH_EXTERNAL or MESH_INTERNAL)
name:Location
type:string
-JSONPath:.spec.resolution
description:Service discovery mode for the hosts (NONE, STATIC, or DNS)
name:Resolution
type:string
-JSONPath:.metadata.creationTimestamp
description:|-
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
name: Age
type: date
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:gateways.networking.istio.io
labels:
app:istio-pilot
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:networking.istio.io
names:
kind:Gateway
plural:gateways
singular:gateway
shortNames:
-gw
categories:
-istio-io
-networking-istio-io
scope:Namespaced
version:v1alpha3
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:sidecars.networking.istio.io
labels:
app:istio-pilot
chart:istio
heritage:Tiller
release:istio
spec:
group:networking.istio.io
names:
kind:Sidecar
plural:sidecars
singular:sidecar
categories:
-istio-io
-networking-istio-io
scope:Namespaced
version:v1alpha3
---
apiVersion:apiextensions.k8s.io/v1beta1
kind:CustomResourceDefinition
metadata:
name:envoyfilters.networking.istio.io
labels:
app:istio-pilot
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:networking.istio.io
names:
kind:EnvoyFilter
plural:envoyfilters
singular:envoyfilter
categories:
-istio-io
-networking-istio-io
scope:Namespaced
version:v1alpha3
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:clusterrbacconfigs.rbac.istio.io
labels:
app:istio-pilot
istio:rbac
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:rbac.istio.io
names:
kind:ClusterRbacConfig
plural:clusterrbacconfigs
singular:clusterrbacconfig
categories:
-istio-io
-rbac-istio-io
scope:Cluster
version:v1alpha1
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:policies.authentication.istio.io
labels:
app:istio-citadel
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:authentication.istio.io
names:
kind:Policy
plural:policies
singular:policy
categories:
-istio-io
-authentication-istio-io
scope:Namespaced
version:v1alpha1
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:meshpolicies.authentication.istio.io
labels:
app:istio-citadel
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:authentication.istio.io
names:
kind:MeshPolicy
listKind:MeshPolicyList
plural:meshpolicies
singular:meshpolicy
categories:
-istio-io
-authentication-istio-io
scope:Cluster
version:v1alpha1
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:httpapispecbindings.config.istio.io
labels:
app:istio-mixer
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:config.istio.io
names:
kind:HTTPAPISpecBinding
plural:httpapispecbindings
singular:httpapispecbinding
categories:
-istio-io
-apim-istio-io
scope:Namespaced
version:v1alpha2
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:httpapispecs.config.istio.io
labels:
app:istio-mixer
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:config.istio.io
names:
kind:HTTPAPISpec
plural:httpapispecs
singular:httpapispec
categories:
-istio-io
-apim-istio-io
scope:Namespaced
version:v1alpha2
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:quotaspecbindings.config.istio.io
labels:
app:istio-mixer
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:config.istio.io
names:
kind:QuotaSpecBinding
plural:quotaspecbindings
singular:quotaspecbinding
categories:
-istio-io
-apim-istio-io
scope:Namespaced
version:v1alpha2
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:quotaspecs.config.istio.io
labels:
app:istio-mixer
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:config.istio.io
names:
kind:QuotaSpec
plural:quotaspecs
singular:quotaspec
categories:
-istio-io
-apim-istio-io
scope:Namespaced
version:v1alpha2
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:rules.config.istio.io
labels:
app:mixer
package:istio.io.mixer
istio:core
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:config.istio.io
names:
kind:rule
plural:rules
singular:rule
categories:
-istio-io
-policy-istio-io
scope:Namespaced
version:v1alpha2
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:attributemanifests.config.istio.io
labels:
app:mixer
package:istio.io.mixer
istio:core
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:config.istio.io
names:
kind:attributemanifest
plural:attributemanifests
singular:attributemanifest
categories:
-istio-io
-policy-istio-io
scope:Namespaced
version:v1alpha2
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:rbacconfigs.rbac.istio.io
labels:
app:mixer
package:istio.io.mixer
istio:rbac
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:rbac.istio.io
names:
kind:RbacConfig
plural:rbacconfigs
singular:rbacconfig
categories:
-istio-io
-rbac-istio-io
scope:Namespaced
version:v1alpha1
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:serviceroles.rbac.istio.io
labels:
app:mixer
package:istio.io.mixer
istio:rbac
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:rbac.istio.io
names:
kind:ServiceRole
plural:serviceroles
singular:servicerole
categories:
-istio-io
-rbac-istio-io
scope:Namespaced
version:v1alpha1
---
kind:CustomResourceDefinition
apiVersion:apiextensions.k8s.io/v1beta1
metadata:
name:servicerolebindings.rbac.istio.io
labels:
app:mixer
package:istio.io.mixer
istio:rbac
chart:istio
heritage:Tiller
release:istio
annotations:
"helm.sh/resource-policy":keep
"helm.sh/hook":"crd-install"
spec:
group:rbac.istio.io
names:
kind:ServiceRoleBinding
plural:servicerolebindings
singular:servicerolebinding
categories:
-istio-io
-rbac-istio-io
scope:Namespaced
version:v1alpha1
additionalPrinterColumns:
-JSONPath:.spec.roleRef.name
description:The name of the ServiceRole object being referenced
name:Reference
type:string
-JSONPath:.metadata.creationTimestamp
description:|-
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
These files are intended to be used to install Istio for E2E tests.
The rendered files can be generated with `make generate_e2e_yaml`.
These files will all have `values-e2e.yaml` applied to them *first*, so if there are settings there that should not be included in the test the must be overridden.