TLDR, istio is open platform to create service mesh in your microservice.
About this project is to simulate to installing istio using your own existing grafana and prometheus.
It's very hard to manually install grafana and prometheus because the istio website lack documentation about to installing and configuring individual addons component
Dump Istio Profile
istioctl profile dump demo > istio-dump.yaml
Edit yaml file
Edit istio-dump.yaml
to disable grafana and prometheus component
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
addonComponents:
grafana:
enabled: false
k8s:
replicaCount: 1
istiocoredns:
enabled: false
kiali:
enabled: true
k8s:
replicaCount: 1
prometheus:
enabled: false
k8s:
replicaCount: 1
tracing:
enabled: true
Before
istioctl profile dump demo
istioctl manifest apply -f istio-dump.yaml
--set values.kiali.prometheusAddr="http://prometheus-server"
--set values.kiali.dashboard.grafanaURL="http://grafana"
istioctl manifest apply -f istio-dump.yaml
--set values.kiali.dashboard.grafanaURL="http://grafana"
istioctl manifest apply -f istio-dump.yaml
--set values.kiali.prometheusAddr="http://prometheus-server.default"
--set values.kiali.dashboard.grafanaURL="http://grafana.default"
istioctl manifest generate -f istio-dump.yaml | kubectl delete -f -
helm fetch stable/prometheus --version 9.1.2 --untar
helm upgrade prometheus ./helm-charts/prometheus --values ./helm-charts/prometheus/values-istio.yaml --install --namespace istio-system --debug