mirror of https://git.rancher.io/charts
Replace current chart with new contents
parent
391d444a9c
commit
66476b807e
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -5,7 +5,7 @@ annotations:
|
||||||
catalog.rancher.io/namespace: cattle-monitoring-system
|
catalog.rancher.io/namespace: cattle-monitoring-system
|
||||||
catalog.rancher.io/release-name: rancher-grafana
|
catalog.rancher.io/release-name: rancher-grafana
|
||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 7.4.5
|
appVersion: 7.5.8
|
||||||
description: The leading tool for querying and visualizing time series and metrics.
|
description: The leading tool for querying and visualizing time series and metrics.
|
||||||
home: https://grafana.net
|
home: https://grafana.net
|
||||||
icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
|
icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
|
||||||
|
@ -25,4 +25,4 @@ name: rancher-grafana
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/grafana/grafana
|
- https://github.com/grafana/grafana
|
||||||
type: application
|
type: application
|
||||||
version: 100.0.0+up6.6.4
|
version: 100.0.0+up6.11.0
|
|
@ -63,6 +63,7 @@ This version requires Helm >= 3.1.0.
|
||||||
| `image.sha` | Image sha (optional) | `2b56f6106ddc376bb46d974230d530754bf65a640dfbc5245191d72d3b49efc6` |
|
| `image.sha` | Image sha (optional) | `2b56f6106ddc376bb46d974230d530754bf65a640dfbc5245191d72d3b49efc6` |
|
||||||
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
||||||
| `image.pullSecrets` | Image pull secrets | `{}` |
|
| `image.pullSecrets` | Image pull secrets | `{}` |
|
||||||
|
| `service.enabled` | Enable grafana service | `true` |
|
||||||
| `service.type` | Kubernetes service type | `ClusterIP` |
|
| `service.type` | Kubernetes service type | `ClusterIP` |
|
||||||
| `service.port` | Kubernetes port where service is exposed | `80` |
|
| `service.port` | Kubernetes port where service is exposed | `80` |
|
||||||
| `service.portName` | Name of the port on the service | `service` |
|
| `service.portName` | Name of the port on the service | `service` |
|
||||||
|
@ -82,7 +83,7 @@ This version requires Helm >= 3.1.0.
|
||||||
| `ingress.path` | Ingress accepted path | `/` |
|
| `ingress.path` | Ingress accepted path | `/` |
|
||||||
| `ingress.pathType` | Ingress type of path | `Prefix` |
|
| `ingress.pathType` | Ingress type of path | `Prefix` |
|
||||||
| `ingress.hosts` | Ingress accepted hostnames | `["chart-example.local"]` |
|
| `ingress.hosts` | Ingress accepted hostnames | `["chart-example.local"]` |
|
||||||
| `ingress.extraPaths` | Ingress extra paths to prepend to every host configuration. Useful when configuring [custom actions with AWS ALB Ingress Controller](https://kubernetes-sigs.github.io/aws-alb-ingress-controller/guide/ingress/annotation/#actions). | `[]` |
|
| `ingress.extraPaths` | Ingress extra paths to prepend to every host configuration. Useful when configuring [custom actions with AWS ALB Ingress Controller](https://kubernetes-sigs.github.io/aws-alb-ingress-controller/guide/ingress/annotation/#actions). Requires `ingress.hosts` to have one or more host entries. | `[]` |
|
||||||
| `ingress.tls` | Ingress TLS configuration | `[]` |
|
| `ingress.tls` | Ingress TLS configuration | `[]` |
|
||||||
| `resources` | CPU/Memory resource requests/limits | `{}` |
|
| `resources` | CPU/Memory resource requests/limits | `{}` |
|
||||||
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
||||||
|
@ -157,13 +158,16 @@ This version requires Helm >= 3.1.0.
|
||||||
| `sidecar.dashboards.folderAnnotation` | The annotation the sidecar will look for in configmaps to override the destination folder for files | `nil` |
|
| `sidecar.dashboards.folderAnnotation` | The annotation the sidecar will look for in configmaps to override the destination folder for files | `nil` |
|
||||||
| `sidecar.dashboards.defaultFolderName` | The default folder name, it will create a subfolder under the `sidecar.dashboards.folder` and put dashboards in there instead | `nil` |
|
| `sidecar.dashboards.defaultFolderName` | The default folder name, it will create a subfolder under the `sidecar.dashboards.folder` and put dashboards in there instead | `nil` |
|
||||||
| `sidecar.dashboards.searchNamespace` | If specified, the sidecar will search for dashboard config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
| `sidecar.dashboards.searchNamespace` | If specified, the sidecar will search for dashboard config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
||||||
|
| `sidecar.dashboards.resource` | Should the sidecar looks into secrets, configmaps or both. | `both` |
|
||||||
| `sidecar.datasources.enabled` | Enables the cluster wide search for datasources and adds/updates/deletes them in grafana |`false` |
|
| `sidecar.datasources.enabled` | Enables the cluster wide search for datasources and adds/updates/deletes them in grafana |`false` |
|
||||||
| `sidecar.datasources.label` | Label that config maps with datasources should have to be added | `grafana_datasource` |
|
| `sidecar.datasources.label` | Label that config maps with datasources should have to be added | `grafana_datasource` |
|
||||||
| `sidecar.datasources.labelValue` | Label value that config maps with datasources should have to be added | `nil` |
|
| `sidecar.datasources.labelValue` | Label value that config maps with datasources should have to be added | `nil` |
|
||||||
| `sidecar.datasources.searchNamespace` | If specified, the sidecar will search for datasources config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
| `sidecar.datasources.searchNamespace` | If specified, the sidecar will search for datasources config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
||||||
|
| `sidecar.datasources.resource` | Should the sidecar looks into secrets, configmaps or both. | `both` |
|
||||||
| `sidecar.notifiers.enabled` | Enables the cluster wide search for notifiers and adds/updates/deletes them in grafana | `false` |
|
| `sidecar.notifiers.enabled` | Enables the cluster wide search for notifiers and adds/updates/deletes them in grafana | `false` |
|
||||||
| `sidecar.notifiers.label` | Label that config maps with notifiers should have to be added | `grafana_notifier` |
|
| `sidecar.notifiers.label` | Label that config maps with notifiers should have to be added | `grafana_notifier` |
|
||||||
| `sidecar.notifiers.searchNamespace` | If specified, the sidecar will search for notifiers config-maps (or secrets) inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
| `sidecar.notifiers.searchNamespace` | If specified, the sidecar will search for notifiers config-maps (or secrets) inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
||||||
|
| `sidecar.notifiers.resource` | Should the sidecar looks into secrets, configmaps or both. | `both` |
|
||||||
| `smtp.existingSecret` | The name of an existing secret containing the SMTP credentials. | `""` |
|
| `smtp.existingSecret` | The name of an existing secret containing the SMTP credentials. | `""` |
|
||||||
| `smtp.userKey` | The key in the existing SMTP secret containing the username. | `"user"` |
|
| `smtp.userKey` | The key in the existing SMTP secret containing the username. | `"user"` |
|
||||||
| `smtp.passwordKey` | The key in the existing SMTP secret containing the password. | `"password"` |
|
| `smtp.passwordKey` | The key in the existing SMTP secret containing the password. | `"password"` |
|
||||||
|
@ -215,6 +219,7 @@ This version requires Helm >= 3.1.0.
|
||||||
| `imageRenderer.securityContext` | image-renderer deployment securityContext | `{}` |
|
| `imageRenderer.securityContext` | image-renderer deployment securityContext | `{}` |
|
||||||
| `imageRenderer.hostAliases` | image-renderer deployment Host Aliases | `[]` |
|
| `imageRenderer.hostAliases` | image-renderer deployment Host Aliases | `[]` |
|
||||||
| `imageRenderer.priorityClassName` | image-renderer deployment priority class | `''` |
|
| `imageRenderer.priorityClassName` | image-renderer deployment priority class | `''` |
|
||||||
|
| `imageRenderer.service.enabled` | Enable the image-renderer service | `true` |
|
||||||
| `imageRenderer.service.portName` | image-renderer service port name | `'http'` |
|
| `imageRenderer.service.portName` | image-renderer service port name | `'http'` |
|
||||||
| `imageRenderer.service.port` | image-renderer service port used by both service and deployment | `8081` |
|
| `imageRenderer.service.port` | image-renderer service port used by both service and deployment | `8081` |
|
||||||
| `imageRenderer.grafanaSubPath` | Grafana sub path to use for image renderer callback url | `''` |
|
| `imageRenderer.grafanaSubPath` | Grafana sub path to use for image renderer callback url | `''` |
|
||||||
|
@ -242,6 +247,9 @@ ingress:
|
||||||
|
|
||||||
### Example of extraVolumeMounts
|
### Example of extraVolumeMounts
|
||||||
|
|
||||||
|
Volume can be type persistentVolumeClaim or hostPath but not both at same time.
|
||||||
|
If none existingClaim or hostPath argument is givent then type is emptyDir.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- extraVolumeMounts:
|
- extraVolumeMounts:
|
||||||
- name: plugins
|
- name: plugins
|
||||||
|
@ -249,6 +257,10 @@ ingress:
|
||||||
subPath: configs/grafana/plugins
|
subPath: configs/grafana/plugins
|
||||||
existingClaim: existing-grafana-claim
|
existingClaim: existing-grafana-claim
|
||||||
readOnly: false
|
readOnly: false
|
||||||
|
- name: dashboards
|
||||||
|
mountPath: /var/lib/grafana/dashboards
|
||||||
|
hostPath: /usr/shared/grafana/dashboards
|
||||||
|
readOnly: false
|
||||||
```
|
```
|
||||||
|
|
||||||
## Import dashboards
|
## Import dashboards
|
|
@ -143,3 +143,16 @@ Return the appropriate apiVersion for rbac.
|
||||||
{{- print "rbac.authorization.k8s.io/v1beta1" -}}
|
{{- print "rbac.authorization.k8s.io/v1beta1" -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Looks if there's an existing secret and reuse its password. If not it generates
|
||||||
|
new password and use it.
|
||||||
|
*/}}
|
||||||
|
{{- define "grafana.password" -}}
|
||||||
|
{{- $secret := (lookup "v1" "Secret" (include "grafana.namespace" .) (include "grafana.fullname" .) ) -}}
|
||||||
|
{{- if $secret -}}
|
||||||
|
{{- index $secret "data" "admin-password" -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- (randAlphaNum 40) | b64enc | quote -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
|
@ -100,7 +100,7 @@ initContainers:
|
||||||
- name: FOLDER
|
- name: FOLDER
|
||||||
value: "/etc/grafana/provisioning/datasources"
|
value: "/etc/grafana/provisioning/datasources"
|
||||||
- name: RESOURCE
|
- name: RESOURCE
|
||||||
value: "both"
|
value: {{ quote .Values.sidecar.datasources.resource }}
|
||||||
{{- if .Values.sidecar.enableUniqueFilenames }}
|
{{- if .Values.sidecar.enableUniqueFilenames }}
|
||||||
- name: UNIQUE_FILENAMES
|
- name: UNIQUE_FILENAMES
|
||||||
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
||||||
|
@ -135,7 +135,7 @@ initContainers:
|
||||||
- name: FOLDER
|
- name: FOLDER
|
||||||
value: "/etc/grafana/provisioning/notifiers"
|
value: "/etc/grafana/provisioning/notifiers"
|
||||||
- name: RESOURCE
|
- name: RESOURCE
|
||||||
value: "both"
|
value: {{ quote .Values.sidecar.notifiers.resource }}
|
||||||
{{- if .Values.sidecar.enableUniqueFilenames }}
|
{{- if .Values.sidecar.enableUniqueFilenames }}
|
||||||
- name: UNIQUE_FILENAMES
|
- name: UNIQUE_FILENAMES
|
||||||
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
||||||
|
@ -184,7 +184,7 @@ containers:
|
||||||
- name: FOLDER
|
- name: FOLDER
|
||||||
value: "{{ .Values.sidecar.dashboards.folder }}{{- with .Values.sidecar.dashboards.defaultFolderName }}/{{ . }}{{- end }}"
|
value: "{{ .Values.sidecar.dashboards.folder }}{{- with .Values.sidecar.dashboards.defaultFolderName }}/{{ . }}{{- end }}"
|
||||||
- name: RESOURCE
|
- name: RESOURCE
|
||||||
value: "both"
|
value: {{ quote .Values.sidecar.dashboards.resource }}
|
||||||
{{- if .Values.sidecar.enableUniqueFilenames }}
|
{{- if .Values.sidecar.enableUniqueFilenames }}
|
||||||
- name: UNIQUE_FILENAMES
|
- name: UNIQUE_FILENAMES
|
||||||
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
||||||
|
@ -317,14 +317,14 @@ containers:
|
||||||
containerPort: 3000
|
containerPort: 3000
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
env:
|
env:
|
||||||
{{- if not .Values.env.GF_SECURITY_ADMIN_USER }}
|
{{- if and (not .Values.env.GF_SECURITY_ADMIN_USER) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
- name: GF_SECURITY_ADMIN_USER
|
- name: GF_SECURITY_ADMIN_USER
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: {{ .Values.admin.existingSecret | default (include "grafana.fullname" .) }}
|
name: {{ .Values.admin.existingSecret | default (include "grafana.fullname" .) }}
|
||||||
key: {{ .Values.admin.userKey | default "admin-user" }}
|
key: {{ .Values.admin.userKey | default "admin-user" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if and (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) }}
|
{{- if and (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
- name: GF_SECURITY_ADMIN_PASSWORD
|
- name: GF_SECURITY_ADMIN_PASSWORD
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
|
@ -356,6 +356,14 @@ containers:
|
||||||
- name: GF_RENDERING_CALLBACK_URL
|
- name: GF_RENDERING_CALLBACK_URL
|
||||||
value: http://{{ template "grafana.fullname" . }}.{{ template "grafana.namespace" . }}:{{ .Values.service.port }}/{{ .Values.imageRenderer.grafanaSubPath }}
|
value: http://{{ template "grafana.fullname" . }}.{{ template "grafana.namespace" . }}:{{ .Values.service.port }}/{{ .Values.imageRenderer.grafanaSubPath }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
- name: GF_PATHS_DATA
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.data }}
|
||||||
|
- name: GF_PATHS_LOGS
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.logs }}
|
||||||
|
- name: GF_PATHS_PLUGINS
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.plugins }}
|
||||||
|
- name: GF_PATHS_PROVISIONING
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.provisioning }}
|
||||||
{{- range $key, $value := .Values.envValueFrom }}
|
{{- range $key, $value := .Values.envValueFrom }}
|
||||||
- name: {{ $key | quote }}
|
- name: {{ $key | quote }}
|
||||||
valueFrom:
|
valueFrom:
|
||||||
|
@ -483,8 +491,15 @@ volumes:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.extraVolumeMounts }}
|
{{- range .Values.extraVolumeMounts }}
|
||||||
- name: {{ .name }}
|
- name: {{ .name }}
|
||||||
|
{{- if .existingClaim }}
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: {{ .existingClaim }}
|
claimName: {{ .existingClaim }}
|
||||||
|
{{- else if .hostPath }}
|
||||||
|
hostPath:
|
||||||
|
path: {{ .hostPath }}
|
||||||
|
{{- else }}
|
||||||
|
emptyDir: {}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.extraEmptyDirMounts }}
|
{{- range .Values.extraEmptyDirMounts }}
|
||||||
- name: {{ .name }}
|
- name: {{ .name }}
|
|
@ -19,8 +19,10 @@ data:
|
||||||
{{- range $elem, $elemVal := $value }}
|
{{- range $elem, $elemVal := $value }}
|
||||||
{{- if kindIs "invalid" $elemVal }}
|
{{- if kindIs "invalid" $elemVal }}
|
||||||
{{ $elem }} =
|
{{ $elem }} =
|
||||||
|
{{- else if kindIs "string" $elemVal }}
|
||||||
|
{{ $elem }} = {{ tpl $elemVal $ }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{ $elem }} = {{ tpl (toYaml $elemVal) $ }}
|
{{ $elem }} = {{ $elemVal }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
|
@ -14,7 +14,9 @@ metadata:
|
||||||
{{ toYaml . | indent 4 }}
|
{{ toYaml . | indent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
|
{{- if not .Values.autoscaling.enabled }}
|
||||||
replicas: {{ .Values.replicas }}
|
replicas: {{ .Values.replicas }}
|
||||||
|
{{- end }}
|
||||||
revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
|
revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
@ -34,7 +36,7 @@ spec:
|
||||||
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
||||||
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
||||||
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
||||||
{{- if or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret)) }}
|
{{- if and (or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret))) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.envRenderSecret }}
|
{{- if .Values.envRenderSecret }}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{{- if .Values.autoscaling.enabled }}
|
||||||
|
apiVersion: autoscaling/v2beta1
|
||||||
|
kind: HorizontalPodAutoscaler
|
||||||
|
metadata:
|
||||||
|
name: {{ template "grafana.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "grafana.name" . }}
|
||||||
|
helm.sh/chart: {{ template "grafana.chart" . }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
scaleTargetRef:
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
name: {{ template "grafana.fullname" . }}
|
||||||
|
minReplicas: {{ .Values.autoscaling.minReplicas }}
|
||||||
|
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
|
||||||
|
metrics:
|
||||||
|
{{ toYaml .Values.autoscaling.metrics | indent 4 }}
|
||||||
|
{{- end }}
|
|
@ -1,4 +1,5 @@
|
||||||
{{ if .Values.imageRenderer.enabled }}
|
{{ if .Values.imageRenderer.enabled }}
|
||||||
|
{{ if .Values.imageRenderer.service.enabled }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
|
@ -26,3 +27,4 @@ spec:
|
||||||
selector:
|
selector:
|
||||||
{{- include "grafana.imageRenderer.selectorLabels" . | nindent 4 }}
|
{{- include "grafana.imageRenderer.selectorLabels" . | nindent 4 }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
{{ end }}
|
|
@ -13,19 +13,8 @@ spec:
|
||||||
privileged: false
|
privileged: false
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
requiredDropCapabilities:
|
requiredDropCapabilities:
|
||||||
# Default set from Docker, without DAC_OVERRIDE or CHOWN
|
# Default set from Docker, with DAC_OVERRIDE and CHOWN
|
||||||
- FOWNER
|
- ALL
|
||||||
- FSETID
|
|
||||||
- KILL
|
|
||||||
- SETGID
|
|
||||||
- SETUID
|
|
||||||
- SETPCAP
|
|
||||||
- NET_BIND_SERVICE
|
|
||||||
- NET_RAW
|
|
||||||
- SYS_CHROOT
|
|
||||||
- MKNOD
|
|
||||||
- AUDIT_WRITE
|
|
||||||
- SETFCAP
|
|
||||||
volumes:
|
volumes:
|
||||||
- 'configMap'
|
- 'configMap'
|
||||||
- 'emptyDir'
|
- 'emptyDir'
|
||||||
|
@ -38,12 +27,20 @@ spec:
|
||||||
hostIPC: false
|
hostIPC: false
|
||||||
hostPID: false
|
hostPID: false
|
||||||
runAsUser:
|
runAsUser:
|
||||||
rule: 'RunAsAny'
|
rule: 'MustRunAsNonRoot'
|
||||||
seLinux:
|
seLinux:
|
||||||
rule: 'RunAsAny'
|
rule: 'RunAsAny'
|
||||||
supplementalGroups:
|
supplementalGroups:
|
||||||
rule: 'RunAsAny'
|
rule: 'MustRunAs'
|
||||||
|
ranges:
|
||||||
|
# Forbid adding the root group.
|
||||||
|
- min: 1
|
||||||
|
max: 65535
|
||||||
fsGroup:
|
fsGroup:
|
||||||
rule: 'RunAsAny'
|
rule: 'MustRunAs'
|
||||||
|
ranges:
|
||||||
|
# Forbid adding the root group.
|
||||||
|
- min: 1
|
||||||
|
max: 65535
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: false
|
||||||
{{- end }}
|
{{- end }}
|
|
@ -1,4 +1,4 @@
|
||||||
{{- if or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret)) }}
|
{{- if and (or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret))) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Secret
|
kind: Secret
|
||||||
metadata:
|
metadata:
|
||||||
|
@ -6,6 +6,10 @@ metadata:
|
||||||
namespace: {{ template "grafana.namespace" . }}
|
namespace: {{ template "grafana.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "grafana.labels" . | nindent 4 }}
|
{{- include "grafana.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{ toYaml . | indent 4 }}
|
||||||
|
{{- end }}
|
||||||
type: Opaque
|
type: Opaque
|
||||||
data:
|
data:
|
||||||
{{- if and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) }}
|
{{- if and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) }}
|
||||||
|
@ -13,7 +17,7 @@ data:
|
||||||
{{- if .Values.adminPassword }}
|
{{- if .Values.adminPassword }}
|
||||||
admin-password: {{ .Values.adminPassword | b64enc | quote }}
|
admin-password: {{ .Values.adminPassword | b64enc | quote }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
admin-password: {{ randAlphaNum 40 | b64enc | quote }}
|
admin-password: {{ template "grafana.password" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if not .Values.ldap.existingSecret }}
|
{{- if not .Values.ldap.existingSecret }}
|
|
@ -1,3 +1,4 @@
|
||||||
|
{{ if .Values.service.enabled }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
|
@ -47,4 +48,4 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
selector:
|
selector:
|
||||||
{{- include "grafana.selectorLabels" . | nindent 4 }}
|
{{- include "grafana.selectorLabels" . | nindent 4 }}
|
||||||
|
{{ end }}
|
|
@ -27,7 +27,7 @@ spec:
|
||||||
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
||||||
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
||||||
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
||||||
{{- if or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret)) }}
|
{{- if and (or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret))) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- with .Values.podAnnotations }}
|
{{- with .Values.podAnnotations }}
|
|
@ -38,6 +38,22 @@ serviceAccount:
|
||||||
|
|
||||||
replicas: 1
|
replicas: 1
|
||||||
|
|
||||||
|
## Create HorizontalPodAutoscaler object for deployment type
|
||||||
|
#
|
||||||
|
autoscaling:
|
||||||
|
enabled: false
|
||||||
|
# minReplicas: 1
|
||||||
|
# maxReplicas: 10
|
||||||
|
# metrics:
|
||||||
|
# - type: Resource
|
||||||
|
# resource:
|
||||||
|
# name: cpu
|
||||||
|
# targetAverageUtilization: 60
|
||||||
|
# - type: Resource
|
||||||
|
# resource:
|
||||||
|
# name: memory
|
||||||
|
# targetAverageUtilization: 60
|
||||||
|
|
||||||
## See `kubectl explain poddisruptionbudget.spec` for more
|
## See `kubectl explain poddisruptionbudget.spec` for more
|
||||||
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
|
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
|
||||||
podDisruptionBudget: {}
|
podDisruptionBudget: {}
|
||||||
|
@ -69,7 +85,7 @@ livenessProbe:
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: rancher/mirrored-grafana-grafana
|
repository: rancher/mirrored-grafana-grafana
|
||||||
tag: 7.4.5
|
tag: 7.5.8
|
||||||
sha: ""
|
sha: ""
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
@ -119,7 +135,7 @@ extraLabels: {}
|
||||||
|
|
||||||
downloadDashboardsImage:
|
downloadDashboardsImage:
|
||||||
repository: rancher/mirrored-curlimages-curl
|
repository: rancher/mirrored-curlimages-curl
|
||||||
tag: 7.73.0
|
tag: 7.77.0
|
||||||
sha: ""
|
sha: ""
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
@ -144,6 +160,7 @@ podPortName: grafana
|
||||||
## ref: http://kubernetes.io/docs/user-guide/services/
|
## ref: http://kubernetes.io/docs/user-guide/services/
|
||||||
##
|
##
|
||||||
service:
|
service:
|
||||||
|
enabled: true
|
||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 3000
|
targetPort: 3000
|
||||||
|
@ -420,10 +437,14 @@ extraSecretMounts: []
|
||||||
## Additional grafana server volume mounts
|
## Additional grafana server volume mounts
|
||||||
# Defines additional volume mounts.
|
# Defines additional volume mounts.
|
||||||
extraVolumeMounts: []
|
extraVolumeMounts: []
|
||||||
# - name: extra-volume
|
# - name: extra-volume-0
|
||||||
# mountPath: /mnt/volume
|
# mountPath: /mnt/volume0
|
||||||
# readOnly: true
|
# readOnly: true
|
||||||
# existingClaim: volume-claim
|
# existingClaim: volume-claim
|
||||||
|
# - name: extra-volume-1
|
||||||
|
# mountPath: /mnt/volume1
|
||||||
|
# readOnly: true
|
||||||
|
# hostPath: /usr/shared/
|
||||||
|
|
||||||
## Pass the plugins you want installed as a list.
|
## Pass the plugins you want installed as a list.
|
||||||
##
|
##
|
||||||
|
@ -530,7 +551,7 @@ dashboardsConfigMaps: {}
|
||||||
##
|
##
|
||||||
grafana.ini:
|
grafana.ini:
|
||||||
paths:
|
paths:
|
||||||
data: /var/lib/grafana/data
|
data: /var/lib/grafana/
|
||||||
logs: /var/log/grafana
|
logs: /var/log/grafana
|
||||||
plugins: /var/lib/grafana/plugins
|
plugins: /var/lib/grafana/plugins
|
||||||
provisioning: /etc/grafana/provisioning
|
provisioning: /etc/grafana/provisioning
|
||||||
|
@ -601,7 +622,7 @@ smtp:
|
||||||
sidecar:
|
sidecar:
|
||||||
image:
|
image:
|
||||||
repository: rancher/mirrored-kiwigrid-k8s-sidecar
|
repository: rancher/mirrored-kiwigrid-k8s-sidecar
|
||||||
tag: 1.10.7
|
tag: 1.12.2
|
||||||
sha: ""
|
sha: ""
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
resources: {}
|
resources: {}
|
||||||
|
@ -629,6 +650,8 @@ sidecar:
|
||||||
# Otherwise the namespace in which the sidecar is running will be used.
|
# Otherwise the namespace in which the sidecar is running will be used.
|
||||||
# It's also possible to specify ALL to search in all namespaces
|
# It's also possible to specify ALL to search in all namespaces
|
||||||
searchNamespace: null
|
searchNamespace: null
|
||||||
|
# search in configmap, secret or both
|
||||||
|
resource: both
|
||||||
# If specified, the sidecar will look for annotation with this name to create folder and put graph here.
|
# If specified, the sidecar will look for annotation with this name to create folder and put graph here.
|
||||||
# You can use this parameter together with `provider.foldersFromFilesStructure`to annotate configmaps and create folder structure.
|
# You can use this parameter together with `provider.foldersFromFilesStructure`to annotate configmaps and create folder structure.
|
||||||
folderAnnotation: null
|
folderAnnotation: null
|
||||||
|
@ -658,10 +681,8 @@ sidecar:
|
||||||
# Otherwise the namespace in which the sidecar is running will be used.
|
# Otherwise the namespace in which the sidecar is running will be used.
|
||||||
# It's also possible to specify ALL to search in all namespaces
|
# It's also possible to specify ALL to search in all namespaces
|
||||||
searchNamespace: null
|
searchNamespace: null
|
||||||
|
# search in configmap, secret or both
|
||||||
## The name of a secret in the same kubernetes namespace which contain values to be added to the environment
|
resource: both
|
||||||
## This can be useful for database passwords, etc. Value is templated.
|
|
||||||
envFromSecret: ""
|
|
||||||
notifiers:
|
notifiers:
|
||||||
enabled: false
|
enabled: false
|
||||||
# label that the configmaps with notifiers are marked with
|
# label that the configmaps with notifiers are marked with
|
||||||
|
@ -670,6 +691,8 @@ sidecar:
|
||||||
# Otherwise the namespace in which the sidecar is running will be used.
|
# Otherwise the namespace in which the sidecar is running will be used.
|
||||||
# It's also possible to specify ALL to search in all namespaces
|
# It's also possible to specify ALL to search in all namespaces
|
||||||
searchNamespace: null
|
searchNamespace: null
|
||||||
|
# search in configmap, secret or both
|
||||||
|
resource: both
|
||||||
|
|
||||||
## Override the deployment namespace
|
## Override the deployment namespace
|
||||||
##
|
##
|
||||||
|
@ -688,7 +711,7 @@ imageRenderer:
|
||||||
# image-renderer Image repository
|
# image-renderer Image repository
|
||||||
repository: rancher/mirrored-grafana-grafana-image-renderer
|
repository: rancher/mirrored-grafana-grafana-image-renderer
|
||||||
# image-renderer Image tag
|
# image-renderer Image tag
|
||||||
tag: 2.0.1
|
tag: 3.0.1
|
||||||
# image-renderer Image sha (optional)
|
# image-renderer Image sha (optional)
|
||||||
sha: ""
|
sha: ""
|
||||||
# image-renderer ImagePullPolicy
|
# image-renderer ImagePullPolicy
|
||||||
|
@ -707,6 +730,8 @@ imageRenderer:
|
||||||
# image-renderer deployment priority class
|
# image-renderer deployment priority class
|
||||||
priorityClassName: ''
|
priorityClassName: ''
|
||||||
service:
|
service:
|
||||||
|
# Enable the image-renderer service
|
||||||
|
enabled: true
|
||||||
# image-renderer service port name
|
# image-renderer service port name
|
||||||
portName: 'http'
|
portName: 'http'
|
||||||
# image-renderer service port used by both service and deployment
|
# image-renderer service port used by both service and deployment
|
|
@ -5,7 +5,7 @@ annotations:
|
||||||
catalog.rancher.io/namespace: cattle-monitoring-system
|
catalog.rancher.io/namespace: cattle-monitoring-system
|
||||||
catalog.rancher.io/release-name: rancher-grafana
|
catalog.rancher.io/release-name: rancher-grafana
|
||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 7.4.5
|
appVersion: 7.5.8
|
||||||
description: The leading tool for querying and visualizing time series and metrics.
|
description: The leading tool for querying and visualizing time series and metrics.
|
||||||
home: https://grafana.net
|
home: https://grafana.net
|
||||||
icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
|
icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
|
||||||
|
@ -25,4 +25,4 @@ name: grafana
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/grafana/grafana
|
- https://github.com/grafana/grafana
|
||||||
type: application
|
type: application
|
||||||
version: 6.6.4
|
version: 6.11.0
|
||||||
|
|
|
@ -63,6 +63,7 @@ This version requires Helm >= 3.1.0.
|
||||||
| `image.sha` | Image sha (optional) | `2b56f6106ddc376bb46d974230d530754bf65a640dfbc5245191d72d3b49efc6` |
|
| `image.sha` | Image sha (optional) | `2b56f6106ddc376bb46d974230d530754bf65a640dfbc5245191d72d3b49efc6` |
|
||||||
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
||||||
| `image.pullSecrets` | Image pull secrets | `{}` |
|
| `image.pullSecrets` | Image pull secrets | `{}` |
|
||||||
|
| `service.enabled` | Enable grafana service | `true` |
|
||||||
| `service.type` | Kubernetes service type | `ClusterIP` |
|
| `service.type` | Kubernetes service type | `ClusterIP` |
|
||||||
| `service.port` | Kubernetes port where service is exposed | `80` |
|
| `service.port` | Kubernetes port where service is exposed | `80` |
|
||||||
| `service.portName` | Name of the port on the service | `service` |
|
| `service.portName` | Name of the port on the service | `service` |
|
||||||
|
@ -82,7 +83,7 @@ This version requires Helm >= 3.1.0.
|
||||||
| `ingress.path` | Ingress accepted path | `/` |
|
| `ingress.path` | Ingress accepted path | `/` |
|
||||||
| `ingress.pathType` | Ingress type of path | `Prefix` |
|
| `ingress.pathType` | Ingress type of path | `Prefix` |
|
||||||
| `ingress.hosts` | Ingress accepted hostnames | `["chart-example.local"]` |
|
| `ingress.hosts` | Ingress accepted hostnames | `["chart-example.local"]` |
|
||||||
| `ingress.extraPaths` | Ingress extra paths to prepend to every host configuration. Useful when configuring [custom actions with AWS ALB Ingress Controller](https://kubernetes-sigs.github.io/aws-alb-ingress-controller/guide/ingress/annotation/#actions). | `[]` |
|
| `ingress.extraPaths` | Ingress extra paths to prepend to every host configuration. Useful when configuring [custom actions with AWS ALB Ingress Controller](https://kubernetes-sigs.github.io/aws-alb-ingress-controller/guide/ingress/annotation/#actions). Requires `ingress.hosts` to have one or more host entries. | `[]` |
|
||||||
| `ingress.tls` | Ingress TLS configuration | `[]` |
|
| `ingress.tls` | Ingress TLS configuration | `[]` |
|
||||||
| `resources` | CPU/Memory resource requests/limits | `{}` |
|
| `resources` | CPU/Memory resource requests/limits | `{}` |
|
||||||
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
||||||
|
@ -157,13 +158,16 @@ This version requires Helm >= 3.1.0.
|
||||||
| `sidecar.dashboards.folderAnnotation` | The annotation the sidecar will look for in configmaps to override the destination folder for files | `nil` |
|
| `sidecar.dashboards.folderAnnotation` | The annotation the sidecar will look for in configmaps to override the destination folder for files | `nil` |
|
||||||
| `sidecar.dashboards.defaultFolderName` | The default folder name, it will create a subfolder under the `sidecar.dashboards.folder` and put dashboards in there instead | `nil` |
|
| `sidecar.dashboards.defaultFolderName` | The default folder name, it will create a subfolder under the `sidecar.dashboards.folder` and put dashboards in there instead | `nil` |
|
||||||
| `sidecar.dashboards.searchNamespace` | If specified, the sidecar will search for dashboard config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
| `sidecar.dashboards.searchNamespace` | If specified, the sidecar will search for dashboard config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
||||||
|
| `sidecar.dashboards.resource` | Should the sidecar looks into secrets, configmaps or both. | `both` |
|
||||||
| `sidecar.datasources.enabled` | Enables the cluster wide search for datasources and adds/updates/deletes them in grafana |`false` |
|
| `sidecar.datasources.enabled` | Enables the cluster wide search for datasources and adds/updates/deletes them in grafana |`false` |
|
||||||
| `sidecar.datasources.label` | Label that config maps with datasources should have to be added | `grafana_datasource` |
|
| `sidecar.datasources.label` | Label that config maps with datasources should have to be added | `grafana_datasource` |
|
||||||
| `sidecar.datasources.labelValue` | Label value that config maps with datasources should have to be added | `nil` |
|
| `sidecar.datasources.labelValue` | Label value that config maps with datasources should have to be added | `nil` |
|
||||||
| `sidecar.datasources.searchNamespace` | If specified, the sidecar will search for datasources config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
| `sidecar.datasources.searchNamespace` | If specified, the sidecar will search for datasources config-maps inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
||||||
|
| `sidecar.datasources.resource` | Should the sidecar looks into secrets, configmaps or both. | `both` |
|
||||||
| `sidecar.notifiers.enabled` | Enables the cluster wide search for notifiers and adds/updates/deletes them in grafana | `false` |
|
| `sidecar.notifiers.enabled` | Enables the cluster wide search for notifiers and adds/updates/deletes them in grafana | `false` |
|
||||||
| `sidecar.notifiers.label` | Label that config maps with notifiers should have to be added | `grafana_notifier` |
|
| `sidecar.notifiers.label` | Label that config maps with notifiers should have to be added | `grafana_notifier` |
|
||||||
| `sidecar.notifiers.searchNamespace` | If specified, the sidecar will search for notifiers config-maps (or secrets) inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
| `sidecar.notifiers.searchNamespace` | If specified, the sidecar will search for notifiers config-maps (or secrets) inside this namespace. Otherwise the namespace in which the sidecar is running will be used. It's also possible to specify ALL to search in all namespaces | `nil` |
|
||||||
|
| `sidecar.notifiers.resource` | Should the sidecar looks into secrets, configmaps or both. | `both` |
|
||||||
| `smtp.existingSecret` | The name of an existing secret containing the SMTP credentials. | `""` |
|
| `smtp.existingSecret` | The name of an existing secret containing the SMTP credentials. | `""` |
|
||||||
| `smtp.userKey` | The key in the existing SMTP secret containing the username. | `"user"` |
|
| `smtp.userKey` | The key in the existing SMTP secret containing the username. | `"user"` |
|
||||||
| `smtp.passwordKey` | The key in the existing SMTP secret containing the password. | `"password"` |
|
| `smtp.passwordKey` | The key in the existing SMTP secret containing the password. | `"password"` |
|
||||||
|
@ -215,6 +219,7 @@ This version requires Helm >= 3.1.0.
|
||||||
| `imageRenderer.securityContext` | image-renderer deployment securityContext | `{}` |
|
| `imageRenderer.securityContext` | image-renderer deployment securityContext | `{}` |
|
||||||
| `imageRenderer.hostAliases` | image-renderer deployment Host Aliases | `[]` |
|
| `imageRenderer.hostAliases` | image-renderer deployment Host Aliases | `[]` |
|
||||||
| `imageRenderer.priorityClassName` | image-renderer deployment priority class | `''` |
|
| `imageRenderer.priorityClassName` | image-renderer deployment priority class | `''` |
|
||||||
|
| `imageRenderer.service.enabled` | Enable the image-renderer service | `true` |
|
||||||
| `imageRenderer.service.portName` | image-renderer service port name | `'http'` |
|
| `imageRenderer.service.portName` | image-renderer service port name | `'http'` |
|
||||||
| `imageRenderer.service.port` | image-renderer service port used by both service and deployment | `8081` |
|
| `imageRenderer.service.port` | image-renderer service port used by both service and deployment | `8081` |
|
||||||
| `imageRenderer.grafanaSubPath` | Grafana sub path to use for image renderer callback url | `''` |
|
| `imageRenderer.grafanaSubPath` | Grafana sub path to use for image renderer callback url | `''` |
|
||||||
|
@ -242,6 +247,9 @@ ingress:
|
||||||
|
|
||||||
### Example of extraVolumeMounts
|
### Example of extraVolumeMounts
|
||||||
|
|
||||||
|
Volume can be type persistentVolumeClaim or hostPath but not both at same time.
|
||||||
|
If none existingClaim or hostPath argument is givent then type is emptyDir.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- extraVolumeMounts:
|
- extraVolumeMounts:
|
||||||
- name: plugins
|
- name: plugins
|
||||||
|
@ -249,6 +257,10 @@ ingress:
|
||||||
subPath: configs/grafana/plugins
|
subPath: configs/grafana/plugins
|
||||||
existingClaim: existing-grafana-claim
|
existingClaim: existing-grafana-claim
|
||||||
readOnly: false
|
readOnly: false
|
||||||
|
- name: dashboards
|
||||||
|
mountPath: /var/lib/grafana/dashboards
|
||||||
|
hostPath: /usr/shared/grafana/dashboards
|
||||||
|
readOnly: false
|
||||||
```
|
```
|
||||||
|
|
||||||
## Import dashboards
|
## Import dashboards
|
||||||
|
|
|
@ -143,3 +143,16 @@ Return the appropriate apiVersion for rbac.
|
||||||
{{- print "rbac.authorization.k8s.io/v1beta1" -}}
|
{{- print "rbac.authorization.k8s.io/v1beta1" -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Looks if there's an existing secret and reuse its password. If not it generates
|
||||||
|
new password and use it.
|
||||||
|
*/}}
|
||||||
|
{{- define "grafana.password" -}}
|
||||||
|
{{- $secret := (lookup "v1" "Secret" (include "grafana.namespace" .) (include "grafana.fullname" .) ) -}}
|
||||||
|
{{- if $secret -}}
|
||||||
|
{{- index $secret "data" "admin-password" -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- (randAlphaNum 40) | b64enc | quote -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
|
@ -100,7 +100,7 @@ initContainers:
|
||||||
- name: FOLDER
|
- name: FOLDER
|
||||||
value: "/etc/grafana/provisioning/datasources"
|
value: "/etc/grafana/provisioning/datasources"
|
||||||
- name: RESOURCE
|
- name: RESOURCE
|
||||||
value: "both"
|
value: {{ quote .Values.sidecar.datasources.resource }}
|
||||||
{{- if .Values.sidecar.enableUniqueFilenames }}
|
{{- if .Values.sidecar.enableUniqueFilenames }}
|
||||||
- name: UNIQUE_FILENAMES
|
- name: UNIQUE_FILENAMES
|
||||||
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
||||||
|
@ -135,7 +135,7 @@ initContainers:
|
||||||
- name: FOLDER
|
- name: FOLDER
|
||||||
value: "/etc/grafana/provisioning/notifiers"
|
value: "/etc/grafana/provisioning/notifiers"
|
||||||
- name: RESOURCE
|
- name: RESOURCE
|
||||||
value: "both"
|
value: {{ quote .Values.sidecar.notifiers.resource }}
|
||||||
{{- if .Values.sidecar.enableUniqueFilenames }}
|
{{- if .Values.sidecar.enableUniqueFilenames }}
|
||||||
- name: UNIQUE_FILENAMES
|
- name: UNIQUE_FILENAMES
|
||||||
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
||||||
|
@ -184,7 +184,7 @@ containers:
|
||||||
- name: FOLDER
|
- name: FOLDER
|
||||||
value: "{{ .Values.sidecar.dashboards.folder }}{{- with .Values.sidecar.dashboards.defaultFolderName }}/{{ . }}{{- end }}"
|
value: "{{ .Values.sidecar.dashboards.folder }}{{- with .Values.sidecar.dashboards.defaultFolderName }}/{{ . }}{{- end }}"
|
||||||
- name: RESOURCE
|
- name: RESOURCE
|
||||||
value: "both"
|
value: {{ quote .Values.sidecar.dashboards.resource }}
|
||||||
{{- if .Values.sidecar.enableUniqueFilenames }}
|
{{- if .Values.sidecar.enableUniqueFilenames }}
|
||||||
- name: UNIQUE_FILENAMES
|
- name: UNIQUE_FILENAMES
|
||||||
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
value: "{{ .Values.sidecar.enableUniqueFilenames }}"
|
||||||
|
@ -317,14 +317,14 @@ containers:
|
||||||
containerPort: 3000
|
containerPort: 3000
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
env:
|
env:
|
||||||
{{- if not .Values.env.GF_SECURITY_ADMIN_USER }}
|
{{- if and (not .Values.env.GF_SECURITY_ADMIN_USER) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
- name: GF_SECURITY_ADMIN_USER
|
- name: GF_SECURITY_ADMIN_USER
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: {{ .Values.admin.existingSecret | default (include "grafana.fullname" .) }}
|
name: {{ .Values.admin.existingSecret | default (include "grafana.fullname" .) }}
|
||||||
key: {{ .Values.admin.userKey | default "admin-user" }}
|
key: {{ .Values.admin.userKey | default "admin-user" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if and (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) }}
|
{{- if and (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
- name: GF_SECURITY_ADMIN_PASSWORD
|
- name: GF_SECURITY_ADMIN_PASSWORD
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
|
@ -356,6 +356,14 @@ containers:
|
||||||
- name: GF_RENDERING_CALLBACK_URL
|
- name: GF_RENDERING_CALLBACK_URL
|
||||||
value: http://{{ template "grafana.fullname" . }}.{{ template "grafana.namespace" . }}:{{ .Values.service.port }}/{{ .Values.imageRenderer.grafanaSubPath }}
|
value: http://{{ template "grafana.fullname" . }}.{{ template "grafana.namespace" . }}:{{ .Values.service.port }}/{{ .Values.imageRenderer.grafanaSubPath }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
- name: GF_PATHS_DATA
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.data }}
|
||||||
|
- name: GF_PATHS_LOGS
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.logs }}
|
||||||
|
- name: GF_PATHS_PLUGINS
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.plugins }}
|
||||||
|
- name: GF_PATHS_PROVISIONING
|
||||||
|
value: {{ (get .Values "grafana.ini").paths.provisioning }}
|
||||||
{{- range $key, $value := .Values.envValueFrom }}
|
{{- range $key, $value := .Values.envValueFrom }}
|
||||||
- name: {{ $key | quote }}
|
- name: {{ $key | quote }}
|
||||||
valueFrom:
|
valueFrom:
|
||||||
|
@ -483,8 +491,15 @@ volumes:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.extraVolumeMounts }}
|
{{- range .Values.extraVolumeMounts }}
|
||||||
- name: {{ .name }}
|
- name: {{ .name }}
|
||||||
|
{{- if .existingClaim }}
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: {{ .existingClaim }}
|
claimName: {{ .existingClaim }}
|
||||||
|
{{- else if .hostPath }}
|
||||||
|
hostPath:
|
||||||
|
path: {{ .hostPath }}
|
||||||
|
{{- else }}
|
||||||
|
emptyDir: {}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range .Values.extraEmptyDirMounts }}
|
{{- range .Values.extraEmptyDirMounts }}
|
||||||
- name: {{ .name }}
|
- name: {{ .name }}
|
||||||
|
|
|
@ -19,8 +19,10 @@ data:
|
||||||
{{- range $elem, $elemVal := $value }}
|
{{- range $elem, $elemVal := $value }}
|
||||||
{{- if kindIs "invalid" $elemVal }}
|
{{- if kindIs "invalid" $elemVal }}
|
||||||
{{ $elem }} =
|
{{ $elem }} =
|
||||||
|
{{- else if kindIs "string" $elemVal }}
|
||||||
|
{{ $elem }} = {{ tpl $elemVal $ }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{ $elem }} = {{ tpl (toYaml $elemVal) $ }}
|
{{ $elem }} = {{ $elemVal }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -14,7 +14,9 @@ metadata:
|
||||||
{{ toYaml . | indent 4 }}
|
{{ toYaml . | indent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
|
{{- if not .Values.autoscaling.enabled }}
|
||||||
replicas: {{ .Values.replicas }}
|
replicas: {{ .Values.replicas }}
|
||||||
|
{{- end }}
|
||||||
revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
|
revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
@ -34,7 +36,7 @@ spec:
|
||||||
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
||||||
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
||||||
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
||||||
{{- if or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret)) }}
|
{{- if and (or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret))) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.envRenderSecret }}
|
{{- if .Values.envRenderSecret }}
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
{{- if .Values.autoscaling.enabled }}
|
||||||
|
apiVersion: autoscaling/v2beta1
|
||||||
|
kind: HorizontalPodAutoscaler
|
||||||
|
metadata:
|
||||||
|
name: {{ template "grafana.fullname" . }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "grafana.name" . }}
|
||||||
|
helm.sh/chart: {{ template "grafana.chart" . }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
scaleTargetRef:
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
name: {{ template "grafana.fullname" . }}
|
||||||
|
minReplicas: {{ .Values.autoscaling.minReplicas }}
|
||||||
|
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
|
||||||
|
metrics:
|
||||||
|
{{ toYaml .Values.autoscaling.metrics | indent 4 }}
|
||||||
|
{{- end }}
|
|
@ -1,4 +1,5 @@
|
||||||
{{ if .Values.imageRenderer.enabled }}
|
{{ if .Values.imageRenderer.enabled }}
|
||||||
|
{{ if .Values.imageRenderer.service.enabled }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
|
@ -26,3 +27,4 @@ spec:
|
||||||
selector:
|
selector:
|
||||||
{{- include "grafana.imageRenderer.selectorLabels" . | nindent 4 }}
|
{{- include "grafana.imageRenderer.selectorLabels" . | nindent 4 }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
|
@ -13,19 +13,8 @@ spec:
|
||||||
privileged: false
|
privileged: false
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
requiredDropCapabilities:
|
requiredDropCapabilities:
|
||||||
# Default set from Docker, without DAC_OVERRIDE or CHOWN
|
# Default set from Docker, with DAC_OVERRIDE and CHOWN
|
||||||
- FOWNER
|
- ALL
|
||||||
- FSETID
|
|
||||||
- KILL
|
|
||||||
- SETGID
|
|
||||||
- SETUID
|
|
||||||
- SETPCAP
|
|
||||||
- NET_BIND_SERVICE
|
|
||||||
- NET_RAW
|
|
||||||
- SYS_CHROOT
|
|
||||||
- MKNOD
|
|
||||||
- AUDIT_WRITE
|
|
||||||
- SETFCAP
|
|
||||||
volumes:
|
volumes:
|
||||||
- 'configMap'
|
- 'configMap'
|
||||||
- 'emptyDir'
|
- 'emptyDir'
|
||||||
|
@ -38,12 +27,20 @@ spec:
|
||||||
hostIPC: false
|
hostIPC: false
|
||||||
hostPID: false
|
hostPID: false
|
||||||
runAsUser:
|
runAsUser:
|
||||||
rule: 'RunAsAny'
|
rule: 'MustRunAsNonRoot'
|
||||||
seLinux:
|
seLinux:
|
||||||
rule: 'RunAsAny'
|
rule: 'RunAsAny'
|
||||||
supplementalGroups:
|
supplementalGroups:
|
||||||
rule: 'RunAsAny'
|
rule: 'MustRunAs'
|
||||||
|
ranges:
|
||||||
|
# Forbid adding the root group.
|
||||||
|
- min: 1
|
||||||
|
max: 65535
|
||||||
fsGroup:
|
fsGroup:
|
||||||
rule: 'RunAsAny'
|
rule: 'MustRunAs'
|
||||||
|
ranges:
|
||||||
|
# Forbid adding the root group.
|
||||||
|
- min: 1
|
||||||
|
max: 65535
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: false
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{{- if or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret)) }}
|
{{- if and (or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret))) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Secret
|
kind: Secret
|
||||||
metadata:
|
metadata:
|
||||||
|
@ -6,6 +6,10 @@ metadata:
|
||||||
namespace: {{ template "grafana.namespace" . }}
|
namespace: {{ template "grafana.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "grafana.labels" . | nindent 4 }}
|
{{- include "grafana.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{ toYaml . | indent 4 }}
|
||||||
|
{{- end }}
|
||||||
type: Opaque
|
type: Opaque
|
||||||
data:
|
data:
|
||||||
{{- if and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) }}
|
{{- if and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD) }}
|
||||||
|
@ -13,7 +17,7 @@ data:
|
||||||
{{- if .Values.adminPassword }}
|
{{- if .Values.adminPassword }}
|
||||||
admin-password: {{ .Values.adminPassword | b64enc | quote }}
|
admin-password: {{ .Values.adminPassword | b64enc | quote }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
admin-password: {{ randAlphaNum 40 | b64enc | quote }}
|
admin-password: {{ template "grafana.password" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if not .Values.ldap.existingSecret }}
|
{{- if not .Values.ldap.existingSecret }}
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
{{ if .Values.service.enabled }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
|
@ -47,4 +48,4 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
selector:
|
selector:
|
||||||
{{- include "grafana.selectorLabels" . | nindent 4 }}
|
{{- include "grafana.selectorLabels" . | nindent 4 }}
|
||||||
|
{{ end }}
|
||||||
|
|
|
@ -27,7 +27,7 @@ spec:
|
||||||
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
|
||||||
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
checksum/dashboards-json-config: {{ include (print $.Template.BasePath "/dashboards-json-configmap.yaml") . | sha256sum }}
|
||||||
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
checksum/sc-dashboard-provider-config: {{ include (print $.Template.BasePath "/configmap-dashboard-provider.yaml") . | sha256sum }}
|
||||||
{{- if or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret)) }}
|
{{- if and (or (and (not .Values.admin.existingSecret) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD__FILE) (not .Values.env.GF_SECURITY_ADMIN_PASSWORD)) (and .Values.ldap.enabled (not .Values.ldap.existingSecret))) (not .Values.env.GF_SECURITY_DISABLE_INITIAL_ADMIN_CREATION) }}
|
||||||
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- with .Values.podAnnotations }}
|
{{- with .Values.podAnnotations }}
|
||||||
|
|
|
@ -38,6 +38,22 @@ serviceAccount:
|
||||||
|
|
||||||
replicas: 1
|
replicas: 1
|
||||||
|
|
||||||
|
## Create HorizontalPodAutoscaler object for deployment type
|
||||||
|
#
|
||||||
|
autoscaling:
|
||||||
|
enabled: false
|
||||||
|
# minReplicas: 1
|
||||||
|
# maxReplicas: 10
|
||||||
|
# metrics:
|
||||||
|
# - type: Resource
|
||||||
|
# resource:
|
||||||
|
# name: cpu
|
||||||
|
# targetAverageUtilization: 60
|
||||||
|
# - type: Resource
|
||||||
|
# resource:
|
||||||
|
# name: memory
|
||||||
|
# targetAverageUtilization: 60
|
||||||
|
|
||||||
## See `kubectl explain poddisruptionbudget.spec` for more
|
## See `kubectl explain poddisruptionbudget.spec` for more
|
||||||
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
|
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
|
||||||
podDisruptionBudget: {}
|
podDisruptionBudget: {}
|
||||||
|
@ -69,7 +85,7 @@ livenessProbe:
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: rancher/mirrored-grafana-grafana
|
repository: rancher/mirrored-grafana-grafana
|
||||||
tag: 7.4.5
|
tag: 7.5.8
|
||||||
sha: ""
|
sha: ""
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
@ -119,7 +135,7 @@ extraLabels: {}
|
||||||
|
|
||||||
downloadDashboardsImage:
|
downloadDashboardsImage:
|
||||||
repository: rancher/mirrored-curlimages-curl
|
repository: rancher/mirrored-curlimages-curl
|
||||||
tag: 7.73.0
|
tag: 7.77.0
|
||||||
sha: ""
|
sha: ""
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
@ -144,6 +160,7 @@ podPortName: grafana
|
||||||
## ref: http://kubernetes.io/docs/user-guide/services/
|
## ref: http://kubernetes.io/docs/user-guide/services/
|
||||||
##
|
##
|
||||||
service:
|
service:
|
||||||
|
enabled: true
|
||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 3000
|
targetPort: 3000
|
||||||
|
@ -420,10 +437,14 @@ extraSecretMounts: []
|
||||||
## Additional grafana server volume mounts
|
## Additional grafana server volume mounts
|
||||||
# Defines additional volume mounts.
|
# Defines additional volume mounts.
|
||||||
extraVolumeMounts: []
|
extraVolumeMounts: []
|
||||||
# - name: extra-volume
|
# - name: extra-volume-0
|
||||||
# mountPath: /mnt/volume
|
# mountPath: /mnt/volume0
|
||||||
# readOnly: true
|
# readOnly: true
|
||||||
# existingClaim: volume-claim
|
# existingClaim: volume-claim
|
||||||
|
# - name: extra-volume-1
|
||||||
|
# mountPath: /mnt/volume1
|
||||||
|
# readOnly: true
|
||||||
|
# hostPath: /usr/shared/
|
||||||
|
|
||||||
## Pass the plugins you want installed as a list.
|
## Pass the plugins you want installed as a list.
|
||||||
##
|
##
|
||||||
|
@ -530,7 +551,7 @@ dashboardsConfigMaps: {}
|
||||||
##
|
##
|
||||||
grafana.ini:
|
grafana.ini:
|
||||||
paths:
|
paths:
|
||||||
data: /var/lib/grafana/data
|
data: /var/lib/grafana/
|
||||||
logs: /var/log/grafana
|
logs: /var/log/grafana
|
||||||
plugins: /var/lib/grafana/plugins
|
plugins: /var/lib/grafana/plugins
|
||||||
provisioning: /etc/grafana/provisioning
|
provisioning: /etc/grafana/provisioning
|
||||||
|
@ -601,7 +622,7 @@ smtp:
|
||||||
sidecar:
|
sidecar:
|
||||||
image:
|
image:
|
||||||
repository: rancher/mirrored-kiwigrid-k8s-sidecar
|
repository: rancher/mirrored-kiwigrid-k8s-sidecar
|
||||||
tag: 1.10.7
|
tag: 1.12.2
|
||||||
sha: ""
|
sha: ""
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
resources: {}
|
resources: {}
|
||||||
|
@ -629,6 +650,8 @@ sidecar:
|
||||||
# Otherwise the namespace in which the sidecar is running will be used.
|
# Otherwise the namespace in which the sidecar is running will be used.
|
||||||
# It's also possible to specify ALL to search in all namespaces
|
# It's also possible to specify ALL to search in all namespaces
|
||||||
searchNamespace: null
|
searchNamespace: null
|
||||||
|
# search in configmap, secret or both
|
||||||
|
resource: both
|
||||||
# If specified, the sidecar will look for annotation with this name to create folder and put graph here.
|
# If specified, the sidecar will look for annotation with this name to create folder and put graph here.
|
||||||
# You can use this parameter together with `provider.foldersFromFilesStructure`to annotate configmaps and create folder structure.
|
# You can use this parameter together with `provider.foldersFromFilesStructure`to annotate configmaps and create folder structure.
|
||||||
folderAnnotation: null
|
folderAnnotation: null
|
||||||
|
@ -658,10 +681,8 @@ sidecar:
|
||||||
# Otherwise the namespace in which the sidecar is running will be used.
|
# Otherwise the namespace in which the sidecar is running will be used.
|
||||||
# It's also possible to specify ALL to search in all namespaces
|
# It's also possible to specify ALL to search in all namespaces
|
||||||
searchNamespace: null
|
searchNamespace: null
|
||||||
|
# search in configmap, secret or both
|
||||||
## The name of a secret in the same kubernetes namespace which contain values to be added to the environment
|
resource: both
|
||||||
## This can be useful for database passwords, etc. Value is templated.
|
|
||||||
envFromSecret: ""
|
|
||||||
notifiers:
|
notifiers:
|
||||||
enabled: false
|
enabled: false
|
||||||
# label that the configmaps with notifiers are marked with
|
# label that the configmaps with notifiers are marked with
|
||||||
|
@ -670,6 +691,8 @@ sidecar:
|
||||||
# Otherwise the namespace in which the sidecar is running will be used.
|
# Otherwise the namespace in which the sidecar is running will be used.
|
||||||
# It's also possible to specify ALL to search in all namespaces
|
# It's also possible to specify ALL to search in all namespaces
|
||||||
searchNamespace: null
|
searchNamespace: null
|
||||||
|
# search in configmap, secret or both
|
||||||
|
resource: both
|
||||||
|
|
||||||
## Override the deployment namespace
|
## Override the deployment namespace
|
||||||
##
|
##
|
||||||
|
@ -688,7 +711,7 @@ imageRenderer:
|
||||||
# image-renderer Image repository
|
# image-renderer Image repository
|
||||||
repository: rancher/mirrored-grafana-grafana-image-renderer
|
repository: rancher/mirrored-grafana-grafana-image-renderer
|
||||||
# image-renderer Image tag
|
# image-renderer Image tag
|
||||||
tag: 2.0.1
|
tag: 3.0.1
|
||||||
# image-renderer Image sha (optional)
|
# image-renderer Image sha (optional)
|
||||||
sha: ""
|
sha: ""
|
||||||
# image-renderer ImagePullPolicy
|
# image-renderer ImagePullPolicy
|
||||||
|
@ -707,6 +730,8 @@ imageRenderer:
|
||||||
# image-renderer deployment priority class
|
# image-renderer deployment priority class
|
||||||
priorityClassName: ''
|
priorityClassName: ''
|
||||||
service:
|
service:
|
||||||
|
# Enable the image-renderer service
|
||||||
|
enabled: true
|
||||||
# image-renderer service port name
|
# image-renderer service port name
|
||||||
portName: 'http'
|
portName: 'http'
|
||||||
# image-renderer service port used by both service and deployment
|
# image-renderer service port used by both service and deployment
|
||||||
|
|
10
index.yaml
10
index.yaml
|
@ -1684,10 +1684,10 @@ entries:
|
||||||
catalog.rancher.io/namespace: cattle-monitoring-system
|
catalog.rancher.io/namespace: cattle-monitoring-system
|
||||||
catalog.rancher.io/release-name: rancher-grafana
|
catalog.rancher.io/release-name: rancher-grafana
|
||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 7.4.5
|
appVersion: 7.5.8
|
||||||
created: "2021-06-23T08:47:16.868264-07:00"
|
created: "2021-06-25T17:45:08.728864-07:00"
|
||||||
description: The leading tool for querying and visualizing time series and metrics.
|
description: The leading tool for querying and visualizing time series and metrics.
|
||||||
digest: cf3211c911960f7b8eff1d5757e765d7f86e099822b796ed8b1286981a76f025
|
digest: e7d034ec2026d9fc0706a52570add8465d4daa2b0d78dc8fe3d3902a1ce5dad0
|
||||||
home: https://grafana.net
|
home: https://grafana.net
|
||||||
icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
|
icon: https://raw.githubusercontent.com/grafana/grafana/master/public/img/logo_transparent_400x.png
|
||||||
kubeVersion: ^1.8.0-0
|
kubeVersion: ^1.8.0-0
|
||||||
|
@ -1707,8 +1707,8 @@ entries:
|
||||||
- https://github.com/grafana/grafana
|
- https://github.com/grafana/grafana
|
||||||
type: application
|
type: application
|
||||||
urls:
|
urls:
|
||||||
- assets/rancher-grafana/rancher-grafana-100.0.0+up6.6.4.tgz
|
- assets/rancher-grafana/rancher-grafana-100.0.0+up6.11.0.tgz
|
||||||
version: 100.0.0+up6.6.4
|
version: 100.0.0+up6.11.0
|
||||||
- annotations:
|
- annotations:
|
||||||
catalog.cattle.io/hidden: "true"
|
catalog.cattle.io/hidden: "true"
|
||||||
catalog.cattle.io/os: linux
|
catalog.cattle.io/os: linux
|
||||||
|
|
Loading…
Reference in New Issue