apiVersion: apps/v1 kind: Deployment metadata: name: observability spec: replicas: 1 selector: matchLabels: app: observability template: metadata: labels: app: observability spec: containers: - name: otel-lgtm image: grafana/otel-lgtm ports: - name: web-interface containerPort: 3000 - name: otel-http containerPort: 4318 - name: otel-grpc containerPort: 4317 env: - name: ENABLE_LOGS_GRAFANA value: "true" - name: GF_AUTH_ANONYMOUS_ENABLED value: "false" - name: GF_AUTH_PASSWORDLESS_ENABLED value: "false" - name: GF_DATABASE_TYPE value: "postgres" - name: GF_DATABASE_USER value: {{ .Values.pg.user }} - name: GF_DATABASE_PASSWORD value: {{ .Values.pg.pass }} - name: GF_DATABASE_HOST value: "postgres:5432" - name: GF_DATABASE_INSTRUMENT_QUERIES value: "true" volumeMounts: - name: tempo-data mountPath: /data/tempo - name: grafana-data mountPath: /data/grafana - name: loki-data mountPath: /data/loki - name: loki-storage mountPath: /loki - name: p8s-storage mountPath: /data/prometheus - name: pyroscope-storage mountPath: /data/pyroscope volumes: - name: tempo-data persistentVolumeClaim: claimName: tempo-pvc - name: loki-data persistentVolumeClaim: claimName: loki-data-pvc - name: grafana-data persistentVolumeClaim: claimName: grafana-pvc - name: loki-storage persistentVolumeClaim: claimName: loki-storage-pvc - name: p8s-storage persistentVolumeClaim: claimName: p8s-pvc - name: pyroscope-storage persistentVolumeClaim: claimName: pyroscope-pvc --- apiVersion: v1 kind: Service metadata: name: observability spec: selector: app: observability ports: - name: grafana protocol: TCP port: 3000 targetPort: 3000 - name: otel-grpc protocol: TCP port: 4317 targetPort: 4317 - name: otel-http protocol: TCP port: 4318 targetPort: 4318 --- apiVersion: v1 kind: PersistentVolume metadata: name: tempo-pv labels: pvc_type: tempo-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: {{ .Values.observability.tempo }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: tempo-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem storageClassName: "" volumeName: tempo-pv resources: requests: storage: 50Gi --- apiVersion: v1 kind: PersistentVolume metadata: name: loki-data-pv labels: pvc_type: loki-data-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: {{ .Values.observability.loki.data_path }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: loki-data-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem storageClassName: "" volumeName: loki-data-pv resources: requests: storage: 50Gi --- apiVersion: v1 kind: PersistentVolume metadata: name: loki-storage-pv labels: pvc_type: loki-storage-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: {{ .Values.observability.loki.storage_path }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: loki-storage-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem storageClassName: "" volumeName: loki-storage-pv resources: requests: storage: 50Gi --- apiVersion: v1 kind: PersistentVolume metadata: name: grafana-pv labels: pvc_type: grafana-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: {{ .Values.observability.grafana }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: grafana-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem storageClassName: "" volumeName: grafana-pv resources: requests: storage: 50Gi --- apiVersion: v1 kind: PersistentVolume metadata: name: p8s-pv labels: pvc_type: p8s-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: {{ .Values.observability.p8s }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: p8s-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem storageClassName: "" volumeName: p8s-pv resources: requests: storage: 50Gi --- apiVersion: v1 kind: PersistentVolume metadata: name: pyroscope-pv labels: pvc_type: pyroscope-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: {{ .Values.observability.pyroscope }} --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pyroscope-pvc spec: accessModes: - ReadWriteOnce volumeMode: Filesystem storageClassName: "" volumeName: pyroscope-pv resources: requests: storage: 50Gi