在 configmap 中参数化 grafana.ini
Parameterize grafana.ini inside a configmap
我在已配置的 kubernetes 集群中有一个 grafana 仪表板 运行。 yaml 通过 ConfigMap 使用 Azure AD 来限制访问。
我现在想在该配置映射中参数化 grafana.ini,这样我就可以在我的发布管道中使用不同的子域,如下所示:
kind: ConfigMap
data:
grafana.ini: |
[server]
root_url = https://{Subdomain}.domain/
[...]
{Subdomain} 应通过参数在管道中替换。在 "normal" kubernetes .yaml 文件中,我可以做类似
的事情
[...]
host: {{ .Values.Subdomain }}.{{ .Values.Domain }}
[...]
传递参数。这似乎不适用于 grafana.ini 数据部分。
将参数传递到此处的 grafana 配置的正确语法是什么?
您可以像这样用环境变量覆盖 INI 配置文件:
export GF_SERVER_ROOT_URL= https://{Subdomain}.domain/
您可以使用此约定覆盖所有配置选项:
GF_<SectionName>_<KeyName>
不,YAML 中没有字符串模板。您正在查看的示例使用 Helm 来处理 YAML。你可以做到这一点,但你需要实际使用 Helm。
我在已配置的 kubernetes 集群中有一个 grafana 仪表板 运行。 yaml 通过 ConfigMap 使用 Azure AD 来限制访问。
我现在想在该配置映射中参数化 grafana.ini,这样我就可以在我的发布管道中使用不同的子域,如下所示:
kind: ConfigMap
data:
grafana.ini: |
[server]
root_url = https://{Subdomain}.domain/
[...]
{Subdomain} 应通过参数在管道中替换。在 "normal" kubernetes .yaml 文件中,我可以做类似
的事情[...]
host: {{ .Values.Subdomain }}.{{ .Values.Domain }}
[...]
传递参数。这似乎不适用于 grafana.ini 数据部分。
将参数传递到此处的 grafana 配置的正确语法是什么?
您可以像这样用环境变量覆盖 INI 配置文件:
export GF_SERVER_ROOT_URL= https://{Subdomain}.domain/
您可以使用此约定覆盖所有配置选项:
GF_<SectionName>_<KeyName>
不,YAML 中没有字符串模板。您正在查看的示例使用 Helm 来处理 YAML。你可以做到这一点,但你需要实际使用 Helm。