正如标题所示,我正在尝试通过值使用带有数据源的helmfile来设置grafana。
我可以在这里找到文档,但遗憾的是我的知识太有限,无法使其工作。
我的头盔文件的相关部分在这里
releases:
...
- name: grafana
namespace: grafana
chart: stable/grafana
values:
- datasources:
- name: Prometheus
type: prometheus
url: http://prometheus-server.prometheus.svc.cluster.local
我偶然发现了这个,似乎我也可以通过环境变量做到这一点,但我似乎找不到一种简单的方法来在我的 helmfile 中设置它。
如果有人对helmfile,json等有更好的了解,将不胜感激,可以向我展示或指导我朝着正确的方向前进。
更新:多亏@WindyFields我的最终解决方案如下
releases:
...
- name: grafana
namespace: grafana
chart: stable/grafana
values:
- datasources:
datasources.yaml:
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
access: proxy
url: http://prometheus-server.prometheus.svc.cluster.local
isDefault: true
答案
只需将以下内容直接添加到values.yaml
datasources:
datasources.yaml:
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
url: http://prometheus-server.prometheus.svc.cluster.local
详
在 Helm 渲染模板后,将生成以下配置映射:
# Source: grafana/templates/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: RELEASE-NAME-grafana
labels:
app: grafana
chart: grafana-1.20.0
release: RELEASE-NAME
heritage: Tiller
data:
grafana.ini: |
...
datasources.yaml: |
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
url: http://prometheus-server.prometheus.svc.cluster.local
在 Helms 安装图表后,k8s 将从config.yaml
获取数据源配置datatsources.yaml
,并通过以下路径/etc/grafana/provisioning/datasources/datasources.yaml
挂载它,在那里它将被 Grafana 应用程序拾取。
请参阅 Grafana 数据源预配文档。
提示:要查看渲染的 Helm 模板,请使用helm template <path_to_chart>