Grafana HTTP错误网关错误和模板初始化失败

onl*_*ine 7 monitoring grafana kubernetes prometheus minikube

使用helm安装PrometheusGrafanaminikube当地。

$ helm install stable/prometheus
$ helm install stable/grafana
Run Code Online (Sandbox Code Playgroud)

设置端口转发后,Prometheus服务器,alertmanager grafana可以运行:

$ export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=server" -o jsonpath="{.items[0].metadata.name}")
$ kubectl --namespace default port-forward $POD_NAME 9090

$ export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=alertmanager" -o jsonpath="{.items[0].metadata.name}")
$ kubectl --namespace default port-forward $POD_NAME 9093

$ export POD_NAME=$(kubectl get pods --namespace default -l "app=excited-crocodile-grafana,component=grafana" -o jsonpath="{.items[0].metadata.name}")
$ kubectl --namespace default port-forward $POD_NAME 3000
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明 在此处输入图片说明

从grafana添加数据源,出现HTTP Error Bad Gateway错误:

在此处输入图片说明

从以下位置导入仪表板315:

https://grafana.com/dashboards/315

然后检查Kubernetes cluster monitoring (via Prometheus),出现Templating init failed错误:

在此处输入图片说明

为什么?

sve*_*ltr 12

在Grafana的HTTP设置中,将设置AccessProxy,这意味着Grafana想要访问Prometheus。由于Kubernetes使用覆盖网络,因此它是一个不同的IP。

有两种解决方法:

  1. 设置AccessDirect,以便浏览器直接连接到Prometheus。
  2. 使用Kubernetes内部IP或域名。我不了解Prometheus Helm-chart,但是假设有一个Servicenamed prometheushttp://prometheus:9090应该可以使用。