12 deploymentStrategy: RollingUpdate
23 initialDelaySeconds: 60
28 repository: grafana/grafana
30 pullPolicy: IfNotPresent
32 ## Optionally specify an array of imagePullSecrets.
33 ## Secrets must be manually created in the namespace.
34 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
37 # - myRegistrKeySecretName
44 extraConfigmapMounts: []
45 # - name: certs-configmap
46 # mountPath: /etc/grafana/ssl/
47 # configMap: certs-configmap
51 extraEmptyDirMounts: []
52 # - name: provisioning-notifiers
53 # mountPath: /etc/grafana/provisioning/notifiers
56 ## Assign a PriorityClassName to pods if set
59 downloadDashboardsImage:
60 repository: appropriate/curl
62 pullPolicy: IfNotPresent
67 pullPolicy: IfNotPresent
72 ## Deployment annotations
75 ## Expose the grafana service to be accessed from outside the cluster (LoadBalancer service).
76 ## or access it from within the cluster (ClusterIP service). Set the service type and the port to serve it.
77 ## ref: http://kubernetes.io/docs/user-guide/services/
83 # targetPort: 4181 To be used with a proxy extraContainer
90 # kubernetes.io/ingress.class: nginx
91 # kubernetes.io/tls-acme: "true"
97 # - secretName: chart-example-tls
99 # - chart-example.local
109 ## Node labels for pod assignment
110 ## ref: https://kubernetes.io/docs/user-guide/node-selection/
114 ## Tolerations for pod assignment
115 ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
119 ## Affinity for pod assignment
120 ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
124 extraInitContainers: []
126 ## Enable an Specify container in extraContainers. This is meant to allow adding an authentication proxy to a grafana pod
129 # image: quay.io/gambol99/keycloak-proxy:latest
134 # - -github-org=<ORG_NAME>
137 # - -http-address=http://0.0.0.0:4181
138 # - -upstream-url=http://127.0.0.1:3000
141 # containerPort: 4181
143 ## Enable persistence using Persistent Volume Claims
144 ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
149 # storageClassName: default
157 # Administrator credentials when not using an existing secret (see below)
159 # adminPassword: strongpassword
161 # Use an existing secret for the admin user.
165 passwordKey: admin-password
167 ## Define command to be executed at startup by grafana container
168 ## Needed if using `vault-env` to manage secrets (ref: https://banzaicloud.com/blog/inject-secrets-into-pods-vault/)
169 ## Default is "run.sh" as defined in grafana's Dockerfile
174 ## Use an alternate scheduler, e.g. "stork".
175 ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
179 ## Extra environment variables that will be pass onto deployment pods
182 ## The name of a secret in the same kubernetes namespace which contain values to be added to the environment
183 ## This can be useful for auth tokens, etc
186 ## Additional grafana server secret mounts
187 # Defines additional mounts with secrets. Secrets must be manually created in the namespace.
188 extraSecretMounts: []
189 # - name: secret-files
190 # mountPath: /etc/secrets
191 # secretName: grafana-secret-files
194 ## Additional grafana server volume mounts
195 # Defines additional volume mounts.
196 extraVolumeMounts: []
197 # - name: extra-volume
198 # mountPath: /mnt/volume
200 # existingClaim: volume-claim
202 ## Pass the plugins you want installed as a list.
205 # - digrich-bubblechart-panel
206 # - grafana-clock-panel
208 ## Configure grafana datasources
209 ## ref: http://docs.grafana.org/administration/provisioning/#datasources
217 url: http://localhost:9090
221 url: http://m3coordinator-m3db-cluster.edge1.svc.cluster.local:7201
224 ## Configure notifiers
225 ## ref: http://docs.grafana.org/administration/provisioning/#alert-notification-channels
230 # - name: email-notifier
236 # org_name: Main Org.
239 # addresses: an_email_address@example.com
242 ## Configure grafana dashboard providers
243 ## ref: http://docs.grafana.org/administration/provisioning/#dashboards
245 ## `path` must be /var/lib/grafana/dashboards/<provider_name>
247 dashboardProviders: {}
248 # dashboardproviders.yaml:
255 # disableDeletion: false
258 # path: /var/lib/grafana/dashboards/default
260 ## Configure grafana dashboard to import
261 ## NOTE: To use dashboards you must also enable/configure dashboardProviders
262 ## ref: https://grafana.com/dashboards
264 ## dashboards per provider, use provider name as key.
272 # file: dashboards/custom-dashboard.json
276 # datasource: Prometheus
278 # url: https://example.com/repository/test.json
279 # local-dashboard-base64:
280 # url: https://example.com/repository/test-b64.json
283 ## Reference to external ConfigMap per provider. Use provider name as key and ConfiMap name as value.
284 ## A provider dashboards must be defined either by external ConfigMaps or in values.yaml, not in both.
285 ## ConfigMap data example:
288 ## example-dashboard.json: |
291 dashboardsConfigMaps: {}
294 ## Grafana's primary configuration
295 ## NOTE: values in map will be converted to ini format
296 ## ref: http://docs.grafana.org/installation/configuration/
300 data: /var/lib/grafana/data
301 logs: /var/log/grafana
302 plugins: /var/lib/grafana/plugins
303 provisioning: /etc/grafana/provisioning
305 check_for_updates: true
309 url: https://grafana.net
310 ## LDAP Authentication can be enabled with the following values on grafana.ini
311 ## NOTE: Grafana will fail to start if the value for ldap.toml is invalid
314 # allow_sign_up: true
315 # config_file: /etc/grafana/ldap.toml
317 ## Grafana's LDAP configuration
318 ## Templated by the template in _helpers.tpl
319 ## NOTE: To enable the grafana.ini must be configured with auth.ldap.enabled
320 ## ref: http://docs.grafana.org/installation/configuration/#auth-ldap
321 ## ref: http://docs.grafana.org/installation/ldap/#configuration
323 # `existingSecret` is a reference to an existing secret containing the ldap configuration
324 # for Grafana in a key `ldap-toml`.
326 # `config` is the content of `ldap.toml` that will be stored in the created secret
329 # verbose_logging = true
332 # host = "my-ldap-server"
336 # ssl_skip_verify = false
337 # bind_dn = "uid=%s,ou=users,dc=myorg,dc=com"
339 ## Grafana's SMTP configuration
340 ## NOTE: To enable, grafana.ini must be configured with smtp.enabled
341 ## ref: http://docs.grafana.org/installation/configuration/#smtp
343 # `existingSecret` is a reference to an existing secret containing the smtp configuration
347 passwordKey: "password"
349 ## Sidecars that collect the configmaps with specified label and stores the included files them into the respective folders
350 ## Requires at least Grafana 5 to work and can't be used together with parameters dashboardProviders, datasources and dashboards
352 image: kiwigrid/k8s-sidecar:0.0.13
353 imagePullPolicy: IfNotPresent
363 # label that the configmaps with dashboards are marked with
364 label: grafana_dashboard
365 # folder in the pod that should hold the collected dashboards
366 folder: /tmp/dashboards
367 # If specified, the sidecar will search for dashboard config-maps inside this namespace.
368 # Otherwise the namespace in which the sidecar is running will be used.
369 # It's also possible to specify ALL to search in all namespaces
370 searchNamespace: null
373 # label that the configmaps with datasources are marked with
374 label: grafana_datasource
375 # If specified, the sidecar will search for datasource config-maps inside this namespace.
376 # Otherwise the namespace in which the sidecar is running will be used.
377 # It's also possible to specify ALL to search in all namespaces
378 searchNamespace: null