prombench/manifests/cluster-infra/grafana_deployment.yaml (109 lines of code) (raw):

apiVersion: apps/v1 kind: Deployment metadata: name: grafana-core labels: app: grafana component: core spec: replicas: 1 selector: matchLabels: app: grafana component: core template: metadata: labels: app: grafana component: core spec: serviceAccountName: prometheus securityContext: runAsUser: 472 containers: - image: grafana/grafana:9.4.3 name: grafana-core imagePullPolicy: IfNotPresent env: - name: GF_PATHS_PROVISIONING value: "/opt/grafana-provision" - name: GF_SERVER_ROOT_URL value: "http://{{ .DOMAIN_NAME }}/grafana" - name: GF_SERVER_SERVE_FROM_SUB_PATH value: "true" - name: GF_AUTH_ANONYMOUS_ENABLED value: "true" - name: GF_AUTH_ANONYMOUS_ORG_NAME value: "Main Org." - name: GF_SECURITY_ADMIN_PASSWORD value: "{{ .GRAFANA_ADMIN_PASSWORD }}" - name: GF_USERS_VIEWERS_CAN_EDIT value: "true" readinessProbe: httpGet: path: /login port: 3000 initialDelaySeconds: 30 timeoutSeconds: 1 volumeMounts: - name: grafana-persistent-storage mountPath: /var/lib/grafana - name: grafana-datasource-provision mountPath: /opt/grafana-provision/datasources - name: grafana-dashboard-provision mountPath: /opt/grafana-provision/dashboards - name: grafana-dashboards mountPath: /var/lib/grafana/dashboards ports: - name: grafana-web containerPort: 3000 volumes: - name: grafana-persistent-storage emptyDir: {} - name: grafana-datasource-provision configMap: name: grafana-datasource-provision - name: grafana-dashboard-provision configMap: name: grafana-dashboard-provision - name: grafana-dashboards configMap: name: grafana-dashboards nodeSelector: node-name: main-node --- apiVersion: v1 kind: Service metadata: name: grafana labels: app: grafana component: core spec: type: NodePort ports: - name: grafana-web port: 80 targetPort: grafana-web selector: app: grafana component: core --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-grafana annotations: kubernetes.io/ingress.class: "nginx" nginx.ingress.kubernetes.io/ssl-redirect: "false" spec: rules: - http: paths: - backend: service: name: grafana port: name: grafana-web path: /grafana pathType: Prefix