Note that the Istio kubeconfig must be stored in a Kubernetes secret with a data key named kubeconfig. For more details on how to configure Istio multi-cluster credentials read the Istio docs.
Deploy Flagger for Linkerd:
If you need to add labels to the flagger deployment or pods, you can pass the labels as parameters as shown below.
You can install Flagger in any namespace as long as it can talk to the Prometheus service on port 9090.
For ingress controllers, the installation instructions are:
The command removes all the Kubernetes components associated with the chart and deletes the release.
Note that on uninstall the Canary CRD will not be removed. Deleting the CRD will make Kubernetes remove all the objects owned by Flagger like Istio virtual services, Kubernetes deployments and ClusterIP services.
If you want to remove all the objects created by Flagger you have to delete the Canary CRD with kubectl:
Install Grafana with Helm
Flagger comes with a Grafana dashboard made for monitoring the canary analysis.
Deploy Grafana in the istio-system namespace:
You can access Grafana using port forwarding:
Install Flagger with Kubectl
Install Flagger and Prometheus using the Kustomize overlay from the GitHub repository:
This deploys Flagger and Prometheus in the flagger-system namespace, sets the metrics server URL to http://flagger-prometheus.flagger-system:9090 and the mesh provider to kubernetes.
The Prometheus instance has a two hours data retention and is configured to scrape all pods in your cluster that have the prometheus.io/scrape: "true" annotation.
Customized installer
Create a kustomization file using Flagger as base and patch the container args: