正如标题所示,我正在尝试通过带有值的数据源使用helmfile设置grafana。
我可以找到文档here,但可悲的是我的知识太有限,无法正常工作。
我的头盔文件的相关部分在这里
releases:
...
- name: grafana
namespace: grafana
chart: stable/grafana
values:
- datasources:
- name: Prometheus
type: prometheus
url: http://prometheus-server.prometheus.svc.cluster.local
我偶然发现了this,而且似乎也可以通过环境变量来完成此操作,但是我似乎找不到在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
答案 0 :(得分:1)
答案
只需将以下内容直接添加到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将从datatsources.yaml
获取数据源配置config.yaml
并通过以下路径/etc/grafana/provisioning/datasources/datasources.yaml
进行安装,然后由Grafana应用程序将其拾取。
请参阅Grafana datasources provisioning doc。
提示:使用helm template <path_to_chart>