Skip to content
Branch: master
Find file History

README.md

Podinfo

Podinfo is a tiny web application made with Go that showcases best practices of running canary deployments with Flagger and Istio.

Installing the Chart

Add Flagger Helm repository:

helm repo add flagger https://flagger.app

To install the chart with the release name frontend:

helm upgrade -i frontend flagger/podinfo \
--namespace test \
--set nameOverride=frontend \
--set backend=http://backend.test:9898/echo \
--set canary.enabled=true \
--set canary.istioIngress.enabled=true \
--set canary.istioIngress.gateway=public-gateway.istio-system.svc.cluster.local \
--set canary.istioIngress.host=frontend.istio.example.com

To install the chart as backend:

helm upgrade -i backend flagger/podinfo \
--namespace test \
--set nameOverride=backend \
--set canary.enabled=true 

Uninstalling the Chart

To uninstall/delete the frontend deployment:

$ helm delete --purge frontend

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

The following tables lists the configurable parameters of the podinfo chart and their default values.

Parameter Description Default
image.repository image repository quay.io/stefanprodan/podinfo
image.tag image tag <VERSION>
image.pullPolicy image pull policy IfNotPresent
hpa.enabled enables HPA true
hpa.cpu target CPU usage per pod 80
hpa.memory target memory usage per pod 512Mi
hpa.minReplicas maximum pod replicas 2
hpa.maxReplicas maximum pod replicas 4
resources.requests/cpu pod CPU request 1m
resources.requests/memory pod memory request 16Mi
backend backend URL None
faults.delay random HTTP response delays between 0 and 5 seconds false
faults.error 1/3 chances of a random HTTP response error false

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

$ helm install flagger/podinfo --name frontend \
  --set=image.tag=1.4.1,hpa.enabled=false

Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,

$ helm install flagger/podinfo --name frontend -f values.yaml
You can’t perform that action at this time.