· 6 years ago · Nov 11, 2019, 07:32 PM
1rbac:
2 create: true
3 pspEnabled: true
4 pspUseAppArmor: true
5 namespaced: false
6 extraRoleRules: []
7 # - apiGroups: []
8 # resources: []
9 # verbs: []
10 extraClusterRoleRules: []
11 # - apiGroups: []
12 # resources: []
13 # verbs: []
14serviceAccount:
15 create: true
16 name:
17 nameTest:
18# annotations:
19
20replicas: 1
21
22## See `kubectl explain poddisruptionbudget.spec` for more
23## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
24podDisruptionBudget: {}
25# minAvailble: 1
26# maxUnavailable: 1
27
28## See `kubectl explain deployment.spec.strategy` for more
29## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
30deploymentStrategy:
31 type: RollingUpdate
32
33readinessProbe:
34 httpGet:
35 path: /api/health
36 port: 3000
37
38livenessProbe:
39 httpGet:
40 path: /api/health
41 port: 3000
42 initialDelaySeconds: 60
43 timeoutSeconds: 30
44 failureThreshold: 10
45
46## Use an alternate scheduler, e.g. "stork".
47## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
48##
49# schedulerName: "default-scheduler"
50
51image:
52 repository: grafana/grafana
53 tag: 6.4.2
54 pullPolicy: IfNotPresent
55
56 ## Optionally specify an array of imagePullSecrets.
57 ## Secrets must be manually created in the namespace.
58 ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
59 ##
60 # pullSecrets:
61 # - myRegistrKeySecretName
62
63testFramework:
64 enabled: true
65 image: "dduportal/bats"
66 tag: "0.4.0"
67 securityContext: {}
68
69securityContext:
70 runAsUser: 472
71 fsGroup: 472
72
73
74extraConfigmapMounts: []
75 # - name: certs-configmap
76 # mountPath: /etc/grafana/ssl/
77 # subPath: certificates.crt # (optional)
78 # configMap: certs-configmap
79 # readOnly: true
80
81
82extraEmptyDirMounts: []
83 # - name: provisioning-notifiers
84 # mountPath: /etc/grafana/provisioning/notifiers
85
86
87## Assign a PriorityClassName to pods if set
88# priorityClassName:
89
90downloadDashboardsImage:
91 repository: appropriate/curl
92 tag: latest
93 pullPolicy: IfNotPresent
94
95downloadDashboards:
96 env: {}
97
98## Pod Annotations
99# podAnnotations: {}
100
101## Pod Labels
102# podLabels: {}
103
104podPortName: grafana
105
106## Deployment annotations
107# annotations: {}
108
109## Expose the grafana service to be accessed from outside the cluster (LoadBalancer service).
110## or access it from within the cluster (ClusterIP service). Set the service type and the port to serve it.
111## ref: http://kubernetes.io/docs/user-guide/services/
112##
113service:
114 type: NodePort
115 nodePort: 32323
116 port: 80
117 targetPort: 3000
118 # targetPort: 4181 To be used with a proxy extraContainer
119 annotations: {}
120 labels: {}
121 portName: service
122
123ingress:
124 enabled: false
125 annotations: {}
126 # kubernetes.io/ingress.class: nginx
127 # kubernetes.io/tls-acme: "true"
128 labels: {}
129 path: /
130 hosts:
131 - chart-example.local
132 ## Extra paths to prepend to every host configuration. This is useful when working with annotation based services.
133 extraPaths: []
134 # - path: /*
135 # backend:
136 # serviceName: ssl-redirect
137 # servicePort: use-annotation
138 tls: []
139 # - secretName: chart-example-tls
140 # hosts:
141 # - chart-example.local
142
143resources: {}
144# limits:
145# cpu: 100m
146# memory: 128Mi
147# requests:
148# cpu: 100m
149# memory: 128Mi
150
151## Node labels for pod assignment
152## ref: https://kubernetes.io/docs/user-guide/node-selection/
153#
154nodeSelector: {}
155
156## Tolerations for pod assignment
157## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
158##
159tolerations: []
160
161## Affinity for pod assignment
162## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
163##
164affinity: {}
165
166extraInitContainers: []
167
168## Enable an Specify container in extraContainers. This is meant to allow adding an authentication proxy to a grafana pod
169extraContainers: |
170# - name: proxy
171# image: quay.io/gambol99/keycloak-proxy:latest
172# args:
173# - -provider=github
174# - -client-id=
175# - -client-secret=
176# - -github-org=<ORG_NAME>
177# - -email-domain=*
178# - -cookie-secret=
179# - -http-address=http://0.0.0.0:4181
180# - -upstream-url=http://127.0.0.1:3000
181# ports:
182# - name: proxy-web
183# containerPort: 4181
184
185## Enable persistence using Persistent Volume Claims
186## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
187##
188persistence:
189 type: pvc
190 enabled: true
191 # storageClassName: default
192 accessModes:
193 - ReadWriteOnce
194 size: 1Gi
195 # annotations: {}
196 finalizers:
197 - kubernetes.io/pvc-protection
198 # subPath: ""
199 # existingClaim:
200
201initChownData:
202 ## If false, data ownership will not be reset at startup
203 ## This allows the prometheus-server to be run with an arbitrary user
204 ##
205 enabled: true
206
207 ## initChownData container image
208 ##
209 image:
210 repository: busybox
211 tag: "1.30"
212 pullPolicy: IfNotPresent
213
214 ## initChownData resource requests and limits
215 ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
216 ##
217 resources: {}
218 # limits:
219 # cpu: 100m
220 # memory: 128Mi
221 # requests:
222 # cpu: 100m
223 # memory: 128Mi
224
225
226# Administrator credentials when not using an existing secret (see below)
227adminUser: admin
228# adminPassword: strongpassword
229
230# Use an existing secret for the admin user.
231admin:
232 existingSecret: ""
233 userKey: admin-user
234 passwordKey: admin-password
235
236## Define command to be executed at startup by grafana container
237## Needed if using `vault-env` to manage secrets (ref: https://banzaicloud.com/blog/inject-secrets-into-pods-vault/)
238## Default is "run.sh" as defined in grafana's Dockerfile
239# command:
240# - "sh"
241# - "/run.sh"
242
243## Use an alternate scheduler, e.g. "stork".
244## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
245##
246# schedulerName:
247
248## Extra environment variables that will be pass onto deployment pods
249env: {}
250
251## The name of a secret in the same kubernetes namespace which contain values to be added to the environment
252## This can be useful for auth tokens, etc
253envFromSecret: ""
254
255## Sensible environment variables that will be rendered as new secret object
256## This can be useful for auth tokens, etc
257envRenderSecret: {}
258
259## Additional grafana server secret mounts
260# Defines additional mounts with secrets. Secrets must be manually created in the namespace.
261extraSecretMounts: []
262 # - name: secret-files
263 # mountPath: /etc/secrets
264 # secretName: grafana-secret-files
265 # readOnly: true
266
267## Additional grafana server volume mounts
268# Defines additional volume mounts.
269extraVolumeMounts: []
270 # - name: extra-volume
271 # mountPath: /mnt/volume
272 # readOnly: true
273 # existingClaim: volume-claim
274
275## Pass the plugins you want installed as a list.
276##
277plugins: []
278 # - digrich-bubblechart-panel
279 # - grafana-clock-panel
280
281## Configure grafana datasources
282## ref: http://docs.grafana.org/administration/provisioning/#datasources
283##
284datasources: {}
285# datasources.yaml:
286# apiVersion: 1
287# datasources:
288# - name: Prometheus
289# type: prometheus
290# url: http://prometheus-prometheus-server
291# access: proxy
292# isDefault: true
293
294## Configure notifiers
295## ref: http://docs.grafana.org/administration/provisioning/#alert-notification-channels
296##
297notifiers: {}
298# notifiers.yaml:
299# notifiers:
300# - name: email-notifier
301# type: email
302# uid: email1
303# # either:
304# org_id: 1
305# # or
306# org_name: Main Org.
307# is_default: true
308# settings:
309# addresses: an_email_address@example.com
310# delete_notifiers:
311
312## Configure grafana dashboard providers
313## ref: http://docs.grafana.org/administration/provisioning/#dashboards
314##
315## `path` must be /var/lib/grafana/dashboards/<provider_name>
316##
317dashboardProviders: {}
318# dashboardproviders.yaml:
319# apiVersion: 1
320# providers:
321# - name: 'default'
322# orgId: 1
323# folder: ''
324# type: file
325# disableDeletion: false
326# editable: true
327# options:
328# path: /var/lib/grafana/dashboards/default
329
330## Configure grafana dashboard to import
331## NOTE: To use dashboards you must also enable/configure dashboardProviders
332## ref: https://grafana.com/dashboards
333##
334## dashboards per provider, use provider name as key.
335##
336dashboards: {}
337 # default:
338 # some-dashboard:
339 # json: |
340 # $RAW_JSON
341 # custom-dashboard:
342 # file: dashboards/custom-dashboard.json
343 # prometheus-stats:
344 # gnetId: 2
345 # revision: 2
346 # datasource: Prometheus
347 # local-dashboard:
348 # url: https://example.com/repository/test.json
349 # local-dashboard-base64:
350 # url: https://example.com/repository/test-b64.json
351 # b64content: true
352
353## Reference to external ConfigMap per provider. Use provider name as key and ConfiMap name as value.
354## A provider dashboards must be defined either by external ConfigMaps or in values.yaml, not in both.
355## ConfigMap data example:
356##
357## data:
358## example-dashboard.json: |
359## RAW_JSON
360##
361dashboardsConfigMaps: {}
362# default: ""
363
364## Grafana's primary configuration
365## NOTE: values in map will be converted to ini format
366## ref: http://docs.grafana.org/installation/configuration/
367##
368grafana.ini:
369 paths:
370 data: /var/lib/grafana/data
371 logs: /var/log/grafana
372 plugins: /var/lib/grafana/plugins
373 provisioning: /etc/grafana/provisioning
374 analytics:
375 check_for_updates: true
376 log:
377 mode: console
378 grafana_net:
379 url: https://grafana.net
380## LDAP Authentication can be enabled with the following values on grafana.ini
381## NOTE: Grafana will fail to start if the value for ldap.toml is invalid
382 # auth.ldap:
383 # enabled: true
384 # allow_sign_up: true
385 # config_file: /etc/grafana/ldap.toml
386
387## Grafana's LDAP configuration
388## Templated by the template in _helpers.tpl
389## NOTE: To enable the grafana.ini must be configured with auth.ldap.enabled
390## ref: http://docs.grafana.org/installation/configuration/#auth-ldap
391## ref: http://docs.grafana.org/installation/ldap/#configuration
392ldap:
393 enabled: false
394 # `existingSecret` is a reference to an existing secret containing the ldap configuration
395 # for Grafana in a key `ldap-toml`.
396 existingSecret: ""
397 # `config` is the content of `ldap.toml` that will be stored in the created secret
398 config: ""
399 # config: |-
400 # verbose_logging = true
401
402 # [[servers]]
403 # host = "my-ldap-server"
404 # port = 636
405 # use_ssl = true
406 # start_tls = false
407 # ssl_skip_verify = false
408 # bind_dn = "uid=%s,ou=users,dc=myorg,dc=com"
409
410## Grafana's SMTP configuration
411## NOTE: To enable, grafana.ini must be configured with smtp.enabled
412## ref: http://docs.grafana.org/installation/configuration/#smtp
413smtp:
414 # `existingSecret` is a reference to an existing secret containing the smtp configuration
415 # for Grafana.
416 existingSecret: ""
417 userKey: "user"
418 passwordKey: "password"
419
420## Sidecars that collect the configmaps with specified label and stores the included files them into the respective folders
421## Requires at least Grafana 5 to work and can't be used together with parameters dashboardProviders, datasources and dashboards
422sidecar:
423 image: kiwigrid/k8s-sidecar:0.1.20
424 imagePullPolicy: IfNotPresent
425 resources: {}
426# limits:
427# cpu: 100m
428# memory: 100Mi
429# requests:
430# cpu: 50m
431# memory: 50Mi
432 # skipTlsVerify Set to true to skip tls verification for kube api calls
433 # skipTlsVerify: true
434 dashboards:
435 enabled: false
436 # label that the configmaps with dashboards are marked with
437 label: grafana_dashboard
438 # folder in the pod that should hold the collected dashboards (unless `defaultFolderName` is set)
439 folder: /tmp/dashboards
440 # The default folder name, it will create a subfolder under the `folder` and put dashboards in there instead
441 defaultFolderName: null
442 # If specified, the sidecar will search for dashboard config-maps inside this namespace.
443 # Otherwise the namespace in which the sidecar is running will be used.
444 # It's also possible to specify ALL to search in all namespaces
445 searchNamespace: null
446 # provider configuration that lets grafana manage the dashboards
447 provider:
448 # name of the provider, should be unique
449 name: sidecarProvider
450 # orgid as configured in grafana
451 orgid: 1
452 # folder in which the dashboards should be imported in grafana
453 folder: ''
454 # type of the provider
455 type: file
456 # disableDelete to activate a import-only behaviour
457 disableDelete: false
458 datasources:
459 enabled: false
460 # label that the configmaps with datasources are marked with
461 label: grafana_datasource
462 # If specified, the sidecar will search for datasource config-maps inside this namespace.
463 # Otherwise the namespace in which the sidecar is running will be used.
464 # It's also possible to specify ALL to search in all namespaces
465 searchNamespace: null