{{with .Values -}} --- ### ### Grafana ### --- kind: Service apiVersion: v1 metadata: name: linkerd-grafana namespace: {{.Namespace}} labels: {{.ControllerComponentLabel}}: grafana annotations: {{.CreatedByAnnotation}}: {{.CliVersion}} spec: type: ClusterIP selector: {{.ControllerComponentLabel}}: grafana ports: - name: http port: 3000 targetPort: 3000 --- kind: Deployment apiVersion: extensions/v1beta1 metadata: name: linkerd-grafana namespace: {{.Namespace}} labels: {{.ControllerComponentLabel}}: grafana annotations: {{.CreatedByAnnotation}}: {{.CliVersion}} spec: replicas: 1 template: metadata: labels: {{.ControllerComponentLabel}}: grafana annotations: {{.CreatedByAnnotation}}: {{.CliVersion}} spec: volumes: - name: data emptyDir: {} - name: grafana-config configMap: name: linkerd-grafana-config items: - key: grafana.ini path: grafana.ini - key: datasources.yaml path: provisioning/datasources/datasources.yaml - key: dashboards.yaml path: provisioning/dashboards/dashboards.yaml containers: - name: grafana ports: - name: http containerPort: 3000 env: - name: GF_PATHS_DATA value: /data volumeMounts: - name: data mountPath: /data - name: grafana-config mountPath: /etc/grafana readOnly: true image: {{.GrafanaImage}} imagePullPolicy: {{.ImagePullPolicy}} livenessProbe: httpGet: path: /api/health port: 3000 initialDelaySeconds: 30 readinessProbe: httpGet: path: /api/health port: 3000 {{- with .GrafanaResources }} {{- template "resources" . }} {{- end }} securityContext: runAsUser: 472 serviceAccountName: linkerd-grafana {{end -}}