values.yaml 41 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226
  1. global:
  2. # To help compatibility with other charts which use global.imagePullSecrets.
  3. # Allow either an array of {name: pullSecret} maps (k8s-style), or an array of strings (more common helm-style).
  4. # Can be tempalted.
  5. # global:
  6. # imagePullSecrets:
  7. # - name: pullSecret1
  8. # - name: pullSecret2
  9. # or
  10. # global:
  11. # imagePullSecrets:
  12. # - pullSecret1
  13. # - pullSecret2
  14. imagePullSecrets: []
  15. rbac:
  16. create: true
  17. ## Use an existing ClusterRole/Role (depending on rbac.namespaced false/true)
  18. # useExistingRole: name-of-some-(cluster)role
  19. pspEnabled: false
  20. pspUseAppArmor: false
  21. namespaced: false
  22. extraRoleRules: []
  23. # - apiGroups: []
  24. # resources: []
  25. # verbs: []
  26. extraClusterRoleRules: []
  27. # - apiGroups: []
  28. # resources: []
  29. # verbs: []
  30. serviceAccount:
  31. create: true
  32. name:
  33. nameTest:
  34. ## ServiceAccount labels.
  35. labels: {}
  36. ## Service account annotations. Can be templated.
  37. # annotations:
  38. # eks.amazonaws.com/role-arn: arn:aws:iam::123456789000:role/iam-role-name-here
  39. autoMount: true
  40. replicas: 1
  41. ## Create a headless service for the deployment
  42. headlessService: false
  43. ## Create HorizontalPodAutoscaler object for deployment type
  44. #
  45. autoscaling:
  46. enabled: false
  47. minReplicas: 1
  48. maxReplicas: 5
  49. targetCPU: "60"
  50. targetMemory: ""
  51. behavior: {}
  52. ## See `kubectl explain poddisruptionbudget.spec` for more
  53. ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
  54. podDisruptionBudget: {}
  55. # minAvailable: 1
  56. # maxUnavailable: 1
  57. ## See `kubectl explain deployment.spec.strategy` for more
  58. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
  59. deploymentStrategy:
  60. type: RollingUpdate
  61. readinessProbe:
  62. httpGet:
  63. path: /api/health
  64. port: 3000
  65. livenessProbe:
  66. httpGet:
  67. path: /api/health
  68. port: 3000
  69. initialDelaySeconds: 60
  70. timeoutSeconds: 30
  71. failureThreshold: 10
  72. ## Use an alternate scheduler, e.g. "stork".
  73. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  74. ##
  75. # schedulerName: "default-scheduler"
  76. image:
  77. repository: grafana/grafana
  78. # Overrides the Grafana image tag whose default is the chart appVersion
  79. tag: "10.3.5-ubuntu"
  80. #tag: latest
  81. sha: ""
  82. pullPolicy: IfNotPresent
  83. ## Optionally specify an array of imagePullSecrets.
  84. ## Secrets must be manually created in the namespace.
  85. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  86. ## Can be templated.
  87. ##
  88. pullSecrets: []
  89. # - myRegistrKeySecretName
  90. testFramework:
  91. enabled: true
  92. image: "bats/bats"
  93. tag: "v1.4.1"
  94. imagePullPolicy: IfNotPresent
  95. securityContext: {}
  96. securityContext:
  97. runAsUser: 472
  98. runAsGroup: 472
  99. fsGroup: 472
  100. containerSecurityContext: {}
  101. # Enable creating the grafana configmap
  102. createConfigmap: true
  103. # Extra configmaps to mount in grafana pods
  104. # Values are templated.
  105. extraConfigmapMounts: []
  106. # - name: certs-configmap
  107. # mountPath: /etc/grafana/ssl/
  108. # subPath: certificates.crt # (optional)
  109. # configMap: certs-configmap
  110. # readOnly: true
  111. extraEmptyDirMounts: []
  112. # - name: provisioning-notifiers
  113. # mountPath: /etc/grafana/provisioning/notifiers
  114. # Apply extra labels to common labels.
  115. extraLabels: {}
  116. ## Assign a PriorityClassName to pods if set
  117. #priorityClassName: pods-high
  118. downloadDashboardsImage:
  119. repository: curlimages/curl
  120. tag: 7.85.0
  121. sha: ""
  122. pullPolicy: IfNotPresent
  123. downloadDashboards:
  124. env: {}
  125. envFromSecret: ""
  126. resources: {}
  127. securityContext: {}
  128. envValueFrom: {}
  129. # ENV_NAME:
  130. # configMapKeyRef:
  131. # name: configmap-name
  132. # key: value_key
  133. ## Pod Annotations
  134. # podAnnotations: {}
  135. ## Pod Labels
  136. # podLabels: {}
  137. podPortName: grafana
  138. gossipPortName: gossip
  139. ## Deployment annotations
  140. # annotations: {}
  141. ## Expose the grafana service to be accessed from outside the cluster (LoadBalancer service).
  142. ## or access it from within the cluster (ClusterIP service). Set the service type and the port to serve it.
  143. ## ref: http://kubernetes.io/docs/user-guide/services/
  144. ##
  145. service:
  146. enabled: true
  147. type: ClusterIP
  148. port: 80
  149. targetPort: 3000
  150. # targetPort: 4181 To be used with a proxy extraContainer
  151. ## Service annotations. Can be templated.
  152. annotations: {}
  153. labels: {}
  154. portName: service
  155. # Adds the appProtocol field to the service. This allows to work with istio protocol selection. Ex: "http" or "tcp"
  156. appProtocol: ""
  157. serviceMonitor:
  158. ## If true, a ServiceMonitor CRD is created for a prometheus operator
  159. ## https://github.com/coreos/prometheus-operator
  160. ##
  161. enabled: false
  162. path: /metrics
  163. # namespace: monitoring (defaults to use the namespace this chart is deployed to)
  164. labels: {}
  165. interval: 1m
  166. scheme: http
  167. tlsConfig: {}
  168. scrapeTimeout: 30s
  169. relabelings: []
  170. targetLabels: []
  171. extraExposePorts: []
  172. # - name: keycloak
  173. # port: 8080
  174. # targetPort: 8080
  175. # type: ClusterIP
  176. # overrides pod.spec.hostAliases in the grafana deployment's pods
  177. hostAliases: []
  178. # - ip: "1.2.3.4"
  179. # hostnames:
  180. # - "my.host.com"
  181. ingress:
  182. enabled: false
  183. # For Kubernetes >= 1.18 you should specify the ingress-controller via the field ingressClassName
  184. # See https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress
  185. ingressClassName: nginx
  186. # Values can be templated
  187. annotations:
  188. kubernetes.io/ingress.class: nginx
  189. kubernetes.io/tls-acme: "true"
  190. nginx.ingress.kubernetes.io/enable-cors: "true"
  191. nginx.ingress.kubernetes.io/cors-allow-origin: "*"
  192. nginx.ingress.kubernetes.io/proxy-cache: "true"
  193. nginx.ingress.kubernetes.io/proxy-cache-path: "/tmp/nginx-cache"
  194. nginx.ingress.kubernetes.io/proxy-cache-methods: "GET,HEAD,POST"
  195. nginx.ingress.kubernetes.io/proxy-cache-min_uses: "1"
  196. nginx.ingress.kubernetes.io/proxy-cache-lock: "on"
  197. nginx.ingress.kubernetes.io/proxy-cache-valid: "10m"
  198. nginx.ingress.kubernetes.io/proxy-cache-max-size: "100m"
  199. labels: {}
  200. path: /
  201. # pathType is only for k8s >= 1.1=
  202. pathType: Prefix
  203. hosts:
  204. - grafana.cestong.com.cn
  205. ## Extra paths to prepend to every host configuration. This is useful when working with annotation based services.
  206. extraPaths: []
  207. # - path: /*
  208. # backend:
  209. # serviceName: ssl-redirect
  210. # servicePort: use-annotation
  211. ## Or for k8s > 1.19
  212. # - path: /*
  213. # pathType: Prefix
  214. # backend:
  215. # service:
  216. # name: ssl-redirect
  217. # port:
  218. # name: use-annotation
  219. tls: []
  220. # - secretName: chart-example-tls
  221. # hosts:
  222. # - chart-example.local
  223. resources:
  224. # limits:
  225. # cpu: 100m
  226. # memory: 128Mi
  227. requests:
  228. cpu: 500m
  229. memory: 2Gi
  230. ## Node labels for pod assignment
  231. ## ref: https://kubernetes.io/docs/user-guide/node-selection/
  232. #
  233. nodeSelector:
  234. kubernetes.io/hostname: "node02"
  235. ## Tolerations for pod assignment
  236. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  237. ##
  238. tolerations: []
  239. ## Affinity for pod assignment (evaluated as template)
  240. ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  241. ##
  242. affinity: {}
  243. ## Topology Spread Constraints
  244. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
  245. ##
  246. topologySpreadConstraints: []
  247. ## Additional init containers (evaluated as template)
  248. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
  249. ##
  250. extraInitContainers: []
  251. ## Enable an Specify container in extraContainers. This is meant to allow adding an authentication proxy to a grafana pod
  252. extraContainers: ""
  253. # extraContainers: |
  254. # - name: proxy
  255. # image: quay.io/gambol99/keycloak-proxy:latest
  256. # args:
  257. # - -provider=github
  258. # - -client-id=
  259. # - -client-secret=
  260. # - -github-org=<ORG_NAME>
  261. # - -email-domain=*
  262. # - -cookie-secret=
  263. # - -http-address=http://0.0.0.0:4181
  264. # - -upstream-url=http://127.0.0.1:3000
  265. # ports:
  266. # - name: proxy-web
  267. # containerPort: 4181
  268. ## Volumes that can be used in init containers that will not be mounted to deployment pods
  269. extraContainerVolumes: []
  270. # - name: volume-from-secret
  271. # secret:
  272. # secretName: secret-to-mount
  273. # - name: empty-dir-volume
  274. # emptyDir: {}
  275. ## Enable persistence using Persistent Volume Claims
  276. ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  277. ##
  278. persistence:
  279. type: pvc
  280. enabled: true
  281. storageClassName: "openebs-hostpath"
  282. accessModes:
  283. - ReadWriteOnce
  284. size: 20Gi
  285. annotations:
  286. helm.sh/resource-policy: "keep"
  287. finalizers:
  288. - kubernetes.io/pvc-protection
  289. # selectorLabels: {}
  290. ## Sub-directory of the PV to mount. Can be templated.
  291. # subPath: ""
  292. ## Name of an existing PVC. Can be templated.
  293. # existingClaim:
  294. ## Extra labels to apply to a PVC.
  295. extraPvcLabels: {}
  296. ## If persistence is not enabled, this allows to mount the
  297. ## local storage in-memory to improve performance
  298. ##
  299. inMemory:
  300. enabled: false
  301. ## The maximum usage on memory medium EmptyDir would be
  302. ## the minimum value between the SizeLimit specified
  303. ## here and the sum of memory limits of all containers in a pod
  304. ##
  305. # sizeLimit: 300Mi
  306. initChownData:
  307. ## If false, data ownership will not be reset at startup
  308. ## This allows the grafana-server to be run with an arbitrary user
  309. ##
  310. enabled: true
  311. ## initChownData container image
  312. ##
  313. image:
  314. repository: busybox
  315. tag: "1.31.1"
  316. sha: ""
  317. pullPolicy: IfNotPresent
  318. ## initChownData resource requests and limits
  319. ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
  320. ##
  321. resources: {}
  322. # limits:
  323. # cpu: 100m
  324. # memory: 128Mi
  325. # requests:
  326. # cpu: 100m
  327. # memory: 128Mi
  328. securityContext:
  329. runAsNonRoot: false
  330. runAsUser: 0
  331. # Administrator credentials when not using an existing secret (see below)
  332. adminUser: admin
  333. adminPassword: "cecf@cestong.com"
  334. # Use an existing secret for the admin user.
  335. admin:
  336. ## Name of the secret. Can be templated.
  337. existingSecret: ""
  338. userKey: admin-user
  339. passwordKey: admin-password
  340. ## Define command to be executed at startup by grafana container
  341. ## Needed if using `vault-env` to manage secrets (ref: https://banzaicloud.com/blog/inject-secrets-into-pods-vault/)
  342. ## Default is "run.sh" as defined in grafana's Dockerfile
  343. # command:
  344. # - "sh"
  345. # - "/run.sh"
  346. ## Optionally define args if command is used
  347. ## Needed if using `hashicorp/envconsul` to manage secrets
  348. ## By default no arguments are set
  349. # args:
  350. # - "-secret"
  351. # - "secret/grafana"
  352. # - "./grafana"
  353. ## Extra environment variables that will be pass onto deployment pods
  354. ##
  355. ## to provide grafana with access to CloudWatch on AWS EKS:
  356. ## 1. create an iam role of type "Web identity" with provider oidc.eks.* (note the provider for later)
  357. ## 2. edit the "Trust relationships" of the role, add a line inside the StringEquals clause using the
  358. ## same oidc eks provider as noted before (same as the existing line)
  359. ## also, replace NAMESPACE and prometheus-operator-grafana with the service account namespace and name
  360. ##
  361. ## "oidc.eks.us-east-1.amazonaws.com/id/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:sub": "system:serviceaccount:NAMESPACE:prometheus-operator-grafana",
  362. ##
  363. ## 3. attach a policy to the role, you can use a built in policy called CloudWatchReadOnlyAccess
  364. ## 4. use the following env: (replace 123456789000 and iam-role-name-here with your aws account number and role name)
  365. ##
  366. ## env:
  367. ## AWS_ROLE_ARN: arn:aws:iam::123456789000:role/iam-role-name-here
  368. ## AWS_WEB_IDENTITY_TOKEN_FILE: /var/run/secrets/eks.amazonaws.com/serviceaccount/token
  369. ## AWS_REGION: us-east-1
  370. ##
  371. ## 5. uncomment the EKS section in extraSecretMounts: below
  372. ## 6. uncomment the annotation section in the serviceAccount: above
  373. ## make sure to replace arn:aws:iam::123456789000:role/iam-role-name-here with your role arn
  374. env: {}
  375. ## "valueFrom" environment variable references that will be added to deployment pods. Name is templated.
  376. ## ref: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#envvarsource-v1-core
  377. ## Renders in container spec as:
  378. ## env:
  379. ## ...
  380. ## - name: <key>
  381. ## valueFrom:
  382. ## <value rendered as YAML>
  383. envValueFrom: {}
  384. # ENV_NAME:
  385. # configMapKeyRef:
  386. # name: configmap-name
  387. # key: value_key
  388. ## The name of a secret in the same kubernetes namespace which contain values to be added to the environment
  389. ## This can be useful for auth tokens, etc. Value is templated.
  390. envFromSecret: ""
  391. ## Sensible environment variables that will be rendered as new secret object
  392. ## This can be useful for auth tokens, etc
  393. envRenderSecret: {}
  394. ## The names of secrets in the same kubernetes namespace which contain values to be added to the environment
  395. ## Each entry should contain a name key, and can optionally specify whether the secret must be defined with an optional key.
  396. ## Name is templated.
  397. envFromSecrets: []
  398. ## - name: secret-name
  399. ## optional: true
  400. ## The names of conifgmaps in the same kubernetes namespace which contain values to be added to the environment
  401. ## Each entry should contain a name key, and can optionally specify whether the configmap must be defined with an optional key.
  402. ## Name is templated.
  403. ## ref: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#configmapenvsource-v1-core
  404. envFromConfigMaps: []
  405. ## - name: configmap-name
  406. ## optional: true
  407. # Inject Kubernetes services as environment variables.
  408. # See https://kubernetes.io/docs/concepts/services-networking/connect-applications-service/#environment-variables
  409. enableServiceLinks: true
  410. ## Additional grafana server secret mounts
  411. # Defines additional mounts with secrets. Secrets must be manually created in the namespace.
  412. extraSecretMounts: []
  413. # - name: secret-files
  414. # mountPath: /etc/secrets
  415. # secretName: grafana-secret-files
  416. # readOnly: true
  417. # subPath: ""
  418. #
  419. # for AWS EKS (cloudwatch) use the following (see also instruction in env: above)
  420. # - name: aws-iam-token
  421. # mountPath: /var/run/secrets/eks.amazonaws.com/serviceaccount
  422. # readOnly: true
  423. # projected:
  424. # defaultMode: 420
  425. # sources:
  426. # - serviceAccountToken:
  427. # audience: sts.amazonaws.com
  428. # expirationSeconds: 86400
  429. # path: token
  430. #
  431. # for CSI e.g. Azure Key Vault use the following
  432. # - name: secrets-store-inline
  433. # mountPath: /run/secrets
  434. # readOnly: true
  435. # csi:
  436. # driver: secrets-store.csi.k8s.io
  437. # readOnly: true
  438. # volumeAttributes:
  439. # secretProviderClass: "akv-grafana-spc"
  440. # nodePublishSecretRef: # Only required when using service principal mode
  441. # name: grafana-akv-creds # Only required when using service principal mode
  442. ## Additional grafana server volume mounts
  443. # Defines additional volume mounts.
  444. extraVolumeMounts: []
  445. # - name: extra-volume-0
  446. # mountPath: /mnt/volume0
  447. # readOnly: true
  448. # existingClaim: volume-claim
  449. # - name: extra-volume-1
  450. # mountPath: /mnt/volume1
  451. # readOnly: true
  452. # hostPath: /usr/shared/
  453. # - name: grafana-secrets
  454. # csi: true
  455. # data:
  456. # driver: secrets-store.csi.k8s.io
  457. # readOnly: true
  458. # volumeAttributes:
  459. # secretProviderClass: "grafana-env-spc"
  460. ## Container Lifecycle Hooks. Execute a specific bash command or make an HTTP request
  461. lifecycleHooks: {}
  462. # postStart:
  463. # exec:
  464. # command: []
  465. ## Pass the plugins you want installed as a list.
  466. ##
  467. plugins:
  468. # - digrich-bubblechart-panel
  469. # - grafana-clock-panel
  470. ## You can also use other plugin download URL, as long as they are valid zip files,
  471. ## and specify the name of the plugin after the semicolon. Like this:
  472. # - https://grafana.com/api/plugins/marcusolsson-json-datasource/versions/1.3.2/download;marcusolsson-json-datasource
  473. - https://storage.googleapis.com/plugins-community/hamedkarbasi93-nodegraphapi-datasource/release/1.0.1/hamedkarbasi93-nodegraphapi-datasource-1.0.1.zip;hamedkarbasi93-nodegraphapi-datasource
  474. ## Configure grafana datasources
  475. ## ref: http://docs.grafana.org/administration/provisioning/#datasources
  476. ##
  477. datasources: {}
  478. # datasources.yaml:
  479. # apiVersion: 1
  480. # datasources:
  481. # - name: Prometheus
  482. # type: prometheus
  483. # url: http://prometheus-prometheus-server
  484. # access: proxy
  485. # isDefault: true
  486. # - name: CloudWatch
  487. # type: cloudwatch
  488. # access: proxy
  489. # uid: cloudwatch
  490. # editable: false
  491. # jsonData:
  492. # authType: default
  493. # defaultRegion: us-east-1
  494. ## Configure grafana alerting (can be templated)
  495. ## ref: http://docs.grafana.org/administration/provisioning/#alerting
  496. ##
  497. alerting: {}
  498. # rules.yaml:
  499. # apiVersion: 1
  500. # groups:
  501. # - orgId: 1
  502. # name: '{{ .Chart.Name }}_my_rule_group'
  503. # folder: my_first_folder
  504. # interval: 60s
  505. # rules:
  506. # - uid: my_id_1
  507. # title: my_first_rule
  508. # condition: A
  509. # data:
  510. # - refId: A
  511. # datasourceUid: '-100'
  512. # model:
  513. # conditions:
  514. # - evaluator:
  515. # params:
  516. # - 3
  517. # type: gt
  518. # operator:
  519. # type: and
  520. # query:
  521. # params:
  522. # - A
  523. # reducer:
  524. # type: last
  525. # type: query
  526. # datasource:
  527. # type: __expr__
  528. # uid: '-100'
  529. # expression: 1==0
  530. # intervalMs: 1000
  531. # maxDataPoints: 43200
  532. # refId: A
  533. # type: math
  534. # dashboardUid: my_dashboard
  535. # panelId: 123
  536. # noDataState: Alerting
  537. # for: 60s
  538. # annotations:
  539. # some_key: some_value
  540. # labels:
  541. # team: sre_team_1
  542. # contactpoints.yaml:
  543. # apiVersion: 1
  544. # contactPoints:
  545. # - orgId: 1
  546. # name: cp_1
  547. # receivers:
  548. # - uid: first_uid
  549. # type: pagerduty
  550. # settings:
  551. # integrationKey: XXX
  552. # severity: critical
  553. # class: ping failure
  554. # component: Grafana
  555. # group: app-stack
  556. # summary: |
  557. # {{ `{{ include "default.message" . }}` }}
  558. ## Configure notifiers
  559. ## ref: http://docs.grafana.org/administration/provisioning/#alert-notification-channels
  560. ##
  561. notifiers: {}
  562. # notifiers.yaml:
  563. # notifiers:
  564. # - name: email-notifier
  565. # type: email
  566. # uid: email1
  567. # # either:
  568. # org_id: 1
  569. # # or
  570. # org_name: Main Org.
  571. # is_default: true
  572. # settings:
  573. # addresses: an_email_address@example.com
  574. # delete_notifiers:
  575. ## Configure grafana dashboard providers
  576. ## ref: http://docs.grafana.org/administration/provisioning/#dashboards
  577. ##
  578. ## `path` must be /var/lib/grafana/dashboards/<provider_name>
  579. ##
  580. dashboardProviders: {}
  581. # dashboardproviders.yaml:
  582. # apiVersion: 1
  583. # providers:
  584. # - name: 'default'
  585. # orgId: 1
  586. # folder: ''
  587. # type: file
  588. # disableDeletion: false
  589. # editable: true
  590. # options:
  591. # path: /var/lib/grafana/dashboards/default
  592. ## Configure grafana dashboard to import
  593. ## NOTE: To use dashboards you must also enable/configure dashboardProviders
  594. ## ref: https://grafana.com/dashboards
  595. ##
  596. ## dashboards per provider, use provider name as key.
  597. ##
  598. dashboards: {}
  599. # default:
  600. # some-dashboard:
  601. # json: |
  602. # $RAW_JSON
  603. # custom-dashboard:
  604. # file: dashboards/custom-dashboard.json
  605. # prometheus-stats:
  606. # gnetId: 2
  607. # revision: 2
  608. # datasource: Prometheus
  609. # local-dashboard:
  610. # url: https://example.com/repository/test.json
  611. # token: ''
  612. # local-dashboard-base64:
  613. # url: https://example.com/repository/test-b64.json
  614. # token: ''
  615. # b64content: true
  616. # local-dashboard-gitlab:
  617. # url: https://example.com/repository/test-gitlab.json
  618. # gitlabToken: ''
  619. # local-dashboard-bitbucket:
  620. # url: https://example.com/repository/test-bitbucket.json
  621. # bearerToken: ''
  622. # local-dashboard-azure:
  623. # url: https://example.com/repository/test-azure.json
  624. # basic: ''
  625. # acceptHeader: '*/*'
  626. ## Reference to external ConfigMap per provider. Use provider name as key and ConfigMap name as value.
  627. ## A provider dashboards must be defined either by external ConfigMaps or in values.yaml, not in both.
  628. ## ConfigMap data example:
  629. ##
  630. ## data:
  631. ## example-dashboard.json: |
  632. ## RAW_JSON
  633. ##
  634. dashboardsConfigMaps: {}
  635. # default: ""
  636. ## Grafana's primary configuration
  637. ## NOTE: values in map will be converted to ini format
  638. ## ref: http://docs.grafana.org/installation/configuration/
  639. ##
  640. grafana.ini:
  641. database:
  642. type: mysql
  643. host: mysql-primary.observe.svc.cluster.local
  644. port: 3306
  645. user: root
  646. password: pg3mfWRtYonekZWB
  647. security:
  648. allow_embedding: true
  649. auth.anonymous:
  650. enabled: true
  651. org_role: Admin
  652. paths:
  653. data: /var/lib/grafana/
  654. logs: /var/log/grafana
  655. plugins: /var/lib/grafana/plugins
  656. provisioning: /etc/grafana/provisioning
  657. analytics:
  658. check_for_updates: true ## 此配置会导致init时校验更新
  659. log:
  660. mode: console
  661. grafana_net:
  662. url: https://grafana.net
  663. server:
  664. domain: "{{ if (and .Values.ingress.enabled .Values.ingress.hosts) }}{{ .Values.ingress.hosts | first }}{{ else }}''{{ end }}"
  665. #root_url: "http://%(domain)/grafana/"
  666. ## grafana Authentication can be enabled with the following values on grafana.ini
  667. # server:
  668. # The full public facing url you use in browser, used for redirects and emails
  669. # root_url:
  670. # https://grafana.com/docs/grafana/latest/auth/github/#enable-github-in-grafana
  671. # auth.github:
  672. # enabled: false
  673. # allow_sign_up: false
  674. # scopes: user:email,read:org
  675. # auth_url: https://github.com/login/oauth/authorize
  676. # token_url: https://github.com/login/oauth/access_token
  677. # api_url: https://api.github.com/user
  678. # team_ids:
  679. # allowed_organizations:
  680. # client_id:
  681. # client_secret:
  682. ## LDAP Authentication can be enabled with the following values on grafana.ini
  683. ## NOTE: Grafana will fail to start if the value for ldap.toml is invalid
  684. # auth.ldap:
  685. # enabled: true
  686. # allow_sign_up: true
  687. # config_file: /etc/grafana/ldap.toml
  688. ## Grafana's LDAP configuration
  689. ## Templated by the template in _helpers.tpl
  690. ## NOTE: To enable the grafana.ini must be configured with auth.ldap.enabled
  691. ## ref: http://docs.grafana.org/installation/configuration/#auth-ldap
  692. ## ref: http://docs.grafana.org/installation/ldap/#configuration
  693. ldap:
  694. enabled: false
  695. # `existingSecret` is a reference to an existing secret containing the ldap configuration
  696. # for Grafana in a key `ldap-toml`.
  697. existingSecret: ""
  698. # `config` is the content of `ldap.toml` that will be stored in the created secret
  699. config: ""
  700. # config: |-
  701. # verbose_logging = true
  702. # [[servers]]
  703. # host = "my-ldap-server"
  704. # port = 636
  705. # use_ssl = true
  706. # start_tls = false
  707. # ssl_skip_verify = false
  708. # bind_dn = "uid=%s,ou=users,dc=myorg,dc=com"
  709. ## Grafana's SMTP configuration
  710. ## NOTE: To enable, grafana.ini must be configured with smtp.enabled
  711. ## ref: http://docs.grafana.org/installation/configuration/#smtp
  712. smtp:
  713. # `existingSecret` is a reference to an existing secret containing the smtp configuration
  714. # for Grafana.
  715. existingSecret: ""
  716. userKey: "user"
  717. passwordKey: "password"
  718. ## Sidecars that collect the configmaps with specified label and stores the included files them into the respective folders
  719. ## Requires at least Grafana 5 to work and can't be used together with parameters dashboardProviders, datasources and dashboards
  720. sidecar:
  721. image:
  722. repository: quay.io/kiwigrid/k8s-sidecar
  723. tag: 1.22.0
  724. sha: ""
  725. imagePullPolicy: IfNotPresent
  726. resources: {}
  727. # limits:
  728. # cpu: 100m
  729. # memory: 100Mi
  730. # requests:
  731. # cpu: 50m
  732. # memory: 50Mi
  733. securityContext: {}
  734. # skipTlsVerify Set to true to skip tls verification for kube api calls
  735. # skipTlsVerify: true
  736. enableUniqueFilenames: false
  737. readinessProbe: {}
  738. livenessProbe: {}
  739. # Log level default for all sidecars. Can be one of: DEBUG, INFO, WARN, ERROR, CRITICAL. Defaults to INFO
  740. # logLevel: INFO
  741. alerts:
  742. enabled: false
  743. # Additional environment variables for the alerts sidecar
  744. env: {}
  745. # Do not reprocess already processed unchanged resources on k8s API reconnect.
  746. # ignoreAlreadyProcessed: true
  747. # label that the configmaps with alert are marked with
  748. label: grafana_alert
  749. # value of label that the configmaps with alert are set to
  750. labelValue: ""
  751. # Log level. Can be one of: DEBUG, INFO, WARN, ERROR, CRITICAL.
  752. # logLevel: INFO
  753. # If specified, the sidecar will search for alert config-maps inside this namespace.
  754. # Otherwise the namespace in which the sidecar is running will be used.
  755. # It's also possible to specify ALL to search in all namespaces
  756. searchNamespace: null
  757. # Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH requests, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
  758. watchMethod: WATCH
  759. # search in configmap, secret or both
  760. resource: both
  761. # watchServerTimeout: request to the server, asking it to cleanly close the connection after that.
  762. # defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S
  763. # watchServerTimeout: 3600
  764. #
  765. # watchClientTimeout: is a client-side timeout, configuring your local socket.
  766. # If you have a network outage dropping all packets with no RST/FIN,
  767. # this is how long your client waits before realizing & dropping the connection.
  768. # defaults to 66sec (sic!)
  769. # watchClientTimeout: 60
  770. #
  771. # Endpoint to send request to reload alerts
  772. reloadURL: "http://localhost:3000/api/admin/provisioning/alerting/reload"
  773. # Absolute path to shell script to execute after a alert got reloaded
  774. script: null
  775. skipReload: false
  776. # Deploy the alert sidecar as an initContainer in addition to a container.
  777. # Sets the size limit of the alert sidecar emptyDir volume
  778. sizeLimit: {}
  779. dashboards:
  780. enabled: false
  781. # Additional environment variables for the dashboards sidecar
  782. env: {}
  783. # Do not reprocess already processed unchanged resources on k8s API reconnect.
  784. # ignoreAlreadyProcessed: true
  785. SCProvider: true
  786. # label that the configmaps with dashboards are marked with
  787. label: grafana_dashboard
  788. # value of label that the configmaps with dashboards are set to
  789. labelValue: ""
  790. # Log level. Can be one of: DEBUG, INFO, WARN, ERROR, CRITICAL.
  791. # logLevel: INFO
  792. # folder in the pod that should hold the collected dashboards (unless `defaultFolderName` is set)
  793. folder: /tmp/dashboards
  794. # The default folder name, it will create a subfolder under the `folder` and put dashboards in there instead
  795. defaultFolderName: null
  796. # Namespaces list. If specified, the sidecar will search for config-maps/secrets inside these namespaces.
  797. # Otherwise the namespace in which the sidecar is running will be used.
  798. # It's also possible to specify ALL to search in all namespaces.
  799. searchNamespace: null
  800. # Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH requests, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
  801. watchMethod: WATCH
  802. # search in configmap, secret or both
  803. resource: both
  804. # If specified, the sidecar will look for annotation with this name to create folder and put graph here.
  805. # You can use this parameter together with `provider.foldersFromFilesStructure`to annotate configmaps and create folder structure.
  806. folderAnnotation: null
  807. # Endpoint to send request to reload alerts
  808. reloadURL: "http://localhost:3000/api/admin/provisioning/dashboards/reload"
  809. # Absolute path to shell script to execute after a configmap got reloaded
  810. script: null
  811. skipReload: false
  812. # watchServerTimeout: request to the server, asking it to cleanly close the connection after that.
  813. # defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S
  814. # watchServerTimeout: 3600
  815. #
  816. # watchClientTimeout: is a client-side timeout, configuring your local socket.
  817. # If you have a network outage dropping all packets with no RST/FIN,
  818. # this is how long your client waits before realizing & dropping the connection.
  819. # defaults to 66sec (sic!)
  820. # watchClientTimeout: 60
  821. #
  822. # provider configuration that lets grafana manage the dashboards
  823. provider:
  824. # name of the provider, should be unique
  825. name: sidecarProvider
  826. # orgid as configured in grafana
  827. orgid: 1
  828. # folder in which the dashboards should be imported in grafana
  829. folder: ''
  830. # type of the provider
  831. type: file
  832. # disableDelete to activate a import-only behaviour
  833. disableDelete: false
  834. # allow updating provisioned dashboards from the UI
  835. allowUiUpdates: false
  836. # allow Grafana to replicate dashboard structure from filesystem
  837. foldersFromFilesStructure: false
  838. # Additional dashboard sidecar volume mounts
  839. extraMounts: []
  840. # Sets the size limit of the dashboard sidecar emptyDir volume
  841. sizeLimit: {}
  842. datasources:
  843. enabled: false
  844. # Additional environment variables for the datasourcessidecar
  845. env: {}
  846. # Do not reprocess already processed unchanged resources on k8s API reconnect.
  847. # ignoreAlreadyProcessed: true
  848. # label that the configmaps with datasources are marked with
  849. label: grafana_datasource
  850. # value of label that the configmaps with datasources are set to
  851. labelValue: ""
  852. # Log level. Can be one of: DEBUG, INFO, WARN, ERROR, CRITICAL.
  853. # logLevel: INFO
  854. # If specified, the sidecar will search for datasource config-maps inside this namespace.
  855. # Otherwise the namespace in which the sidecar is running will be used.
  856. # It's also possible to specify ALL to search in all namespaces
  857. searchNamespace: null
  858. # Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH requests, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
  859. watchMethod: WATCH
  860. # search in configmap, secret or both
  861. resource: both
  862. # watchServerTimeout: request to the server, asking it to cleanly close the connection after that.
  863. # defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S
  864. # watchServerTimeout: 3600
  865. #
  866. # watchClientTimeout: is a client-side timeout, configuring your local socket.
  867. # If you have a network outage dropping all packets with no RST/FIN,
  868. # this is how long your client waits before realizing & dropping the connection.
  869. # defaults to 66sec (sic!)
  870. # watchClientTimeout: 60
  871. #
  872. # Endpoint to send request to reload datasources
  873. reloadURL: "http://localhost:3000/api/admin/provisioning/datasources/reload"
  874. # Absolute path to shell script to execute after a datasource got reloaded
  875. script: null
  876. skipReload: false
  877. # Deploy the datasource sidecar as an initContainer in addition to a container.
  878. # This is needed if skipReload is true, to load any datasources defined at startup time.
  879. initDatasources: false
  880. # Sets the size limit of the datasource sidecar emptyDir volume
  881. sizeLimit: {}
  882. plugins:
  883. enabled: false
  884. # Additional environment variables for the plugins sidecar
  885. env: {}
  886. # Do not reprocess already processed unchanged resources on k8s API reconnect.
  887. # ignoreAlreadyProcessed: true
  888. # label that the configmaps with plugins are marked with
  889. label: grafana_plugin
  890. # value of label that the configmaps with plugins are set to
  891. labelValue: ""
  892. # Log level. Can be one of: DEBUG, INFO, WARN, ERROR, CRITICAL.
  893. # logLevel: INFO
  894. # If specified, the sidecar will search for plugin config-maps inside this namespace.
  895. # Otherwise the namespace in which the sidecar is running will be used.
  896. # It's also possible to specify ALL to search in all namespaces
  897. searchNamespace: null
  898. # Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH requests, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
  899. watchMethod: WATCH
  900. # search in configmap, secret or both
  901. resource: both
  902. # watchServerTimeout: request to the server, asking it to cleanly close the connection after that.
  903. # defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S
  904. # watchServerTimeout: 3600
  905. #
  906. # watchClientTimeout: is a client-side timeout, configuring your local socket.
  907. # If you have a network outage dropping all packets with no RST/FIN,
  908. # this is how long your client waits before realizing & dropping the connection.
  909. # defaults to 66sec (sic!)
  910. # watchClientTimeout: 60
  911. #
  912. # Endpoint to send request to reload plugins
  913. reloadURL: "http://localhost:3000/api/admin/provisioning/plugins/reload"
  914. # Absolute path to shell script to execute after a plugin got reloaded
  915. script: null
  916. skipReload: false
  917. # Deploy the datasource sidecar as an initContainer in addition to a container.
  918. # This is needed if skipReload is true, to load any plugins defined at startup time.
  919. initPlugins: false
  920. # Sets the size limit of the plugin sidecar emptyDir volume
  921. sizeLimit: {}
  922. notifiers:
  923. enabled: false
  924. # Additional environment variables for the notifierssidecar
  925. env: {}
  926. # Do not reprocess already processed unchanged resources on k8s API reconnect.
  927. # ignoreAlreadyProcessed: true
  928. # label that the configmaps with notifiers are marked with
  929. label: grafana_notifier
  930. # value of label that the configmaps with notifiers are set to
  931. labelValue: ""
  932. # Log level. Can be one of: DEBUG, INFO, WARN, ERROR, CRITICAL.
  933. # logLevel: INFO
  934. # If specified, the sidecar will search for notifier config-maps inside this namespace.
  935. # Otherwise the namespace in which the sidecar is running will be used.
  936. # It's also possible to specify ALL to search in all namespaces
  937. searchNamespace: null
  938. # Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH requests, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
  939. watchMethod: WATCH
  940. # search in configmap, secret or both
  941. resource: both
  942. # watchServerTimeout: request to the server, asking it to cleanly close the connection after that.
  943. # defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S
  944. # watchServerTimeout: 3600
  945. #
  946. # watchClientTimeout: is a client-side timeout, configuring your local socket.
  947. # If you have a network outage dropping all packets with no RST/FIN,
  948. # this is how long your client waits before realizing & dropping the connection.
  949. # defaults to 66sec (sic!)
  950. # watchClientTimeout: 60
  951. #
  952. # Endpoint to send request to reload notifiers
  953. reloadURL: "http://localhost:3000/api/admin/provisioning/notifications/reload"
  954. # Absolute path to shell script to execute after a notifier got reloaded
  955. script: null
  956. skipReload: false
  957. # Deploy the notifier sidecar as an initContainer in addition to a container.
  958. # This is needed if skipReload is true, to load any notifiers defined at startup time.
  959. initNotifiers: false
  960. # Sets the size limit of the notifier sidecar emptyDir volume
  961. sizeLimit: {}
  962. ## Override the deployment namespace
  963. ##
  964. namespaceOverride: ""
  965. ## Number of old ReplicaSets to retain
  966. ##
  967. revisionHistoryLimit: 10
  968. ## Add a seperate remote image renderer deployment/service
  969. imageRenderer:
  970. deploymentStrategy: {}
  971. # Enable the image-renderer deployment & service
  972. enabled: false
  973. replicas: 1
  974. autoscaling:
  975. enabled: false
  976. minReplicas: 1
  977. maxReplicas: 5
  978. targetCPU: "60"
  979. targetMemory: ""
  980. behavior: {}
  981. image:
  982. # image-renderer Image repository
  983. repository: grafana/grafana-image-renderer
  984. # image-renderer Image tag
  985. tag: latest
  986. # image-renderer Image sha (optional)
  987. sha: ""
  988. # image-renderer ImagePullPolicy
  989. pullPolicy: Always
  990. # extra environment variables
  991. env:
  992. HTTP_HOST: "0.0.0.0"
  993. # RENDERING_ARGS: --no-sandbox,--disable-gpu,--window-size=1280x758
  994. # RENDERING_MODE: clustered
  995. # IGNORE_HTTPS_ERRORS: true
  996. # image-renderer deployment serviceAccount
  997. serviceAccountName: ""
  998. # image-renderer deployment securityContext
  999. securityContext: {}
  1000. # image-renderer deployment container securityContext
  1001. containerSecurityContext:
  1002. capabilities:
  1003. drop: ['ALL']
  1004. allowPrivilegeEscalation: false
  1005. readOnlyRootFilesystem: true
  1006. # image-renderer deployment Host Aliases
  1007. hostAliases: []
  1008. # image-renderer deployment priority class
  1009. priorityClassName: ''
  1010. service:
  1011. # Enable the image-renderer service
  1012. enabled: true
  1013. # image-renderer service port name
  1014. portName: 'http'
  1015. # image-renderer service port used by both service and deployment
  1016. port: 8081
  1017. targetPort: 8081
  1018. # Adds the appProtocol field to the image-renderer service. This allows to work with istio protocol selection. Ex: "http" or "tcp"
  1019. appProtocol: ""
  1020. serviceMonitor:
  1021. ## If true, a ServiceMonitor CRD is created for a prometheus operator
  1022. ## https://github.com/coreos/prometheus-operator
  1023. ##
  1024. enabled: false
  1025. path: /metrics
  1026. # namespace: monitoring (defaults to use the namespace this chart is deployed to)
  1027. labels: {}
  1028. interval: 1m
  1029. scheme: http
  1030. tlsConfig: {}
  1031. scrapeTimeout: 30s
  1032. relabelings: []
  1033. # See: https://doc.crds.dev/github.com/prometheus-operator/kube-prometheus/monitoring.coreos.com/ServiceMonitor/v1@v0.11.0#spec-targetLabels
  1034. targetLabels: []
  1035. # - targetLabel1
  1036. # - targetLabel2
  1037. # If https is enabled in Grafana, this needs to be set as 'https' to correctly configure the callback used in Grafana
  1038. grafanaProtocol: http
  1039. # In case a sub_path is used this needs to be added to the image renderer callback
  1040. grafanaSubPath: ""
  1041. # name of the image-renderer port on the pod
  1042. podPortName: http
  1043. # number of image-renderer replica sets to keep
  1044. revisionHistoryLimit: 10
  1045. networkPolicy:
  1046. # Enable a NetworkPolicy to limit inbound traffic to only the created grafana pods
  1047. limitIngress: true
  1048. # Enable a NetworkPolicy to limit outbound traffic to only the created grafana pods
  1049. limitEgress: false
  1050. # Allow additional services to access image-renderer (eg. Prometheus operator when ServiceMonitor is enabled)
  1051. extraIngressSelectors: []
  1052. resources: {}
  1053. # limits:
  1054. # cpu: 100m
  1055. # memory: 100Mi
  1056. # requests:
  1057. # cpu: 50m
  1058. # memory: 50Mi
  1059. ## Node labels for pod assignment
  1060. ## ref: https://kubernetes.io/docs/user-guide/node-selection/
  1061. #
  1062. nodeSelector: {}
  1063. ## Tolerations for pod assignment
  1064. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  1065. ##
  1066. tolerations: []
  1067. ## Affinity for pod assignment (evaluated as template)
  1068. ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  1069. ##
  1070. affinity: {}
  1071. ## Use an alternate scheduler, e.g. "stork".
  1072. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  1073. ##
  1074. # schedulerName: "default-scheduler"
  1075. networkPolicy:
  1076. ## @param networkPolicy.enabled Enable creation of NetworkPolicy resources. Only Ingress traffic is filtered for now.
  1077. ##
  1078. enabled: false
  1079. ## @param networkPolicy.allowExternal Don't require client label for connections
  1080. ## The Policy model to apply. When set to false, only pods with the correct
  1081. ## client label will have network access to grafana port defined.
  1082. ## When true, grafana will accept connections from any source
  1083. ## (with the correct destination port).
  1084. ##
  1085. ingress: true
  1086. ## @param networkPolicy.ingress When true enables the creation
  1087. ## an ingress network policy
  1088. ##
  1089. allowExternal: true
  1090. ## @param networkPolicy.explicitNamespacesSelector A Kubernetes LabelSelector to explicitly select namespaces from which traffic could be allowed
  1091. ## If explicitNamespacesSelector is missing or set to {}, only client Pods that are in the networkPolicy's namespace
  1092. ## and that match other criteria, the ones that have the good label, can reach the grafana.
  1093. ## But sometimes, we want the grafana to be accessible to clients from other namespaces, in this case, we can use this
  1094. ## LabelSelector to select these namespaces, note that the networkPolicy's namespace should also be explicitly added.
  1095. ##
  1096. ## Example:
  1097. ## explicitNamespacesSelector:
  1098. ## matchLabels:
  1099. ## role: frontend
  1100. ## matchExpressions:
  1101. ## - {key: role, operator: In, values: [frontend]}
  1102. ##
  1103. explicitNamespacesSelector: {}
  1104. ##
  1105. ##
  1106. ##
  1107. ##
  1108. ##
  1109. ##
  1110. egress:
  1111. ## @param networkPolicy.egress.enabled When enabled, an egress network policy will be
  1112. ## created allowing grafana to connect to external data sources from kubernetes cluster.
  1113. enabled: false
  1114. ##
  1115. ## @param networkPolicy.egress.ports Add individual ports to be allowed by the egress
  1116. ports: []
  1117. ## Add ports to the egress by specifying - port: <port number>
  1118. ## E.X.
  1119. ## ports:
  1120. ## - port: 80
  1121. ## - port: 443
  1122. ##
  1123. ##
  1124. ##
  1125. ##
  1126. ##
  1127. ##
  1128. # Enable backward compatibility of kubernetes where version below 1.13 doesn't have the enableServiceLinks option
  1129. enableKubeBackwardCompatibility: false
  1130. useStatefulSet: false
  1131. # Create a dynamic manifests via values:
  1132. extraObjects: []
  1133. # - apiVersion: "kubernetes-client.io/v1"
  1134. # kind: ExternalSecret
  1135. # metadata:
  1136. # name: grafana-secrets
  1137. # spec:
  1138. # backendType: gcpSecretsManager
  1139. # data:
  1140. # - key: grafana-admin-password
  1141. # name: adminPassword