Merge pull request 'feat: add metrics and dashboards' (#5777) from tmp/metrics into main
Reviewed-on: #5777
This commit was merged in pull request #5777.
This commit is contained in:
@@ -10,7 +10,9 @@ home: https://docs.alexlebens.dev/applications/bazarr/
|
|||||||
sources:
|
sources:
|
||||||
- https://github.com/morpheus65535/bazarr
|
- https://github.com/morpheus65535/bazarr
|
||||||
- https://github.com/linuxserver/docker-bazarr
|
- https://github.com/linuxserver/docker-bazarr
|
||||||
|
- https://github.com/onedr0p/exportarr
|
||||||
- https://github.com/linuxserver/docker-bazarr/pkgs/container/bazarr
|
- https://github.com/linuxserver/docker-bazarr/pkgs/container/bazarr
|
||||||
|
- https://github.com/onedr0p/exportarr/pkgs/container/exportarr
|
||||||
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
||||||
- https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/volsync-target
|
- https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/volsync-target
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
18
clusters/cl01tl/helm/bazarr/templates/external-secret.yaml
Normal file
18
clusters/cl01tl/helm/bazarr/templates/external-secret.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: bazarr-key-secret
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: bazarr-key-secret
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
secretStoreRef:
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
name: vault
|
||||||
|
data:
|
||||||
|
- secretKey: key
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/bazarr/key
|
||||||
|
property: key
|
||||||
@@ -28,6 +28,25 @@ bazarr:
|
|||||||
requests:
|
requests:
|
||||||
cpu: 1m
|
cpu: 1m
|
||||||
memory: 250Mi
|
memory: 250Mi
|
||||||
|
metrics:
|
||||||
|
image:
|
||||||
|
repository: ghcr.io/onedr0p/exportarr
|
||||||
|
tag: v2.3.0@sha256:af535d94061cf97a52e1661945ffba78c03f9443eae7c0da1a80a5a4be56b520
|
||||||
|
args: ["bazarr"]
|
||||||
|
env:
|
||||||
|
- name: URL
|
||||||
|
value: http://localhost
|
||||||
|
- name: PORT
|
||||||
|
value: 9792
|
||||||
|
- name: APIKEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: bazarr-key-secret
|
||||||
|
key: key
|
||||||
|
- name: ENABLE_ADDITIONAL_METRICS
|
||||||
|
value: false
|
||||||
|
- name: ENABLE_UNKNOWN_QUEUE_ITEMS
|
||||||
|
value: false
|
||||||
service:
|
service:
|
||||||
main:
|
main:
|
||||||
controller: main
|
controller: main
|
||||||
@@ -35,6 +54,21 @@ bazarr:
|
|||||||
http:
|
http:
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 6767
|
targetPort: 6767
|
||||||
|
metrics:
|
||||||
|
port: 9792
|
||||||
|
targetPort: 9792
|
||||||
|
serviceMonitor:
|
||||||
|
main:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: bazarr
|
||||||
|
app.kubernetes.io/instance: bazarr
|
||||||
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
||||||
|
endpoints:
|
||||||
|
- port: metrics
|
||||||
|
interval: 3m
|
||||||
|
scrapeTimeout: 1m
|
||||||
|
path: /metrics
|
||||||
route:
|
route:
|
||||||
main:
|
main:
|
||||||
kind: HTTPRoute
|
kind: HTTPRoute
|
||||||
|
|||||||
@@ -244,6 +244,44 @@ spec:
|
|||||||
resyncPeriod: 6h
|
resyncPeriod: 6h
|
||||||
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/service/descheduler.json
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/service/descheduler.json
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
|
kind: GrafanaDashboard
|
||||||
|
metadata:
|
||||||
|
name: grafana-dashboard-external-dns
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: grafana-dashboard-external-dns
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
instanceSelector:
|
||||||
|
matchLabels:
|
||||||
|
app: grafana-main
|
||||||
|
contentCacheDuration: 6h
|
||||||
|
folderUID: grafana-folder-service
|
||||||
|
resyncPeriod: 6h
|
||||||
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/service/external-dns.json
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
|
kind: GrafanaDashboard
|
||||||
|
metadata:
|
||||||
|
name: grafana-dashboard-external-secrets
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: grafana-dashboard-external-secrets
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
instanceSelector:
|
||||||
|
matchLabels:
|
||||||
|
app: grafana-main
|
||||||
|
contentCacheDuration: 6h
|
||||||
|
folderUID: grafana-folder-service
|
||||||
|
resyncPeriod: 6h
|
||||||
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/service/external-secrets.json
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: grafana.integreatly.org/v1beta1
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
kind: GrafanaDashboard
|
kind: GrafanaDashboard
|
||||||
@@ -567,6 +605,25 @@ spec:
|
|||||||
resyncPeriod: 6h
|
resyncPeriod: 6h
|
||||||
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/platform/vault.json
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/platform/vault.json
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
|
kind: GrafanaDashboard
|
||||||
|
metadata:
|
||||||
|
name: grafana-dashboard-unpackerr
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: grafana-dashboard-unpackerr
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
instanceSelector:
|
||||||
|
matchLabels:
|
||||||
|
app: grafana-main
|
||||||
|
contentCacheDuration: 6h
|
||||||
|
folderUID: grafana-folder-platform
|
||||||
|
resyncPeriod: 6h
|
||||||
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/platform/unpackerr.json
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: grafana.integreatly.org/v1beta1
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
kind: GrafanaDashboard
|
kind: GrafanaDashboard
|
||||||
@@ -643,6 +700,25 @@ spec:
|
|||||||
resyncPeriod: 6h
|
resyncPeriod: 6h
|
||||||
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/jellyfin.json
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/jellyfin.json
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
|
kind: GrafanaDashboard
|
||||||
|
metadata:
|
||||||
|
name: grafana-dashboard-navidrome
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: grafana-dashboard-navidrome
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
instanceSelector:
|
||||||
|
matchLabels:
|
||||||
|
app: grafana-main
|
||||||
|
contentCacheDuration: 6h
|
||||||
|
folderUID: grafana-folder-application
|
||||||
|
resyncPeriod: 6h
|
||||||
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/navidrome.json
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: grafana.integreatly.org/v1beta1
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
kind: GrafanaDashboard
|
kind: GrafanaDashboard
|
||||||
@@ -662,6 +738,25 @@ spec:
|
|||||||
resyncPeriod: 6h
|
resyncPeriod: 6h
|
||||||
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/radarr.json
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/radarr.json
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
|
kind: GrafanaDashboard
|
||||||
|
metadata:
|
||||||
|
name: grafana-dashboard-servarr
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: grafana-dashboard-servarr
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
instanceSelector:
|
||||||
|
matchLabels:
|
||||||
|
app: grafana-main
|
||||||
|
contentCacheDuration: 6h
|
||||||
|
folderUID: grafana-folder-application
|
||||||
|
resyncPeriod: 6h
|
||||||
|
url: http://gitea-http.gitea:3000/alexlebens/grafana-dashboards/raw/branch/main/dashboards/application/servarr.json
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: grafana.integreatly.org/v1beta1
|
apiVersion: grafana.integreatly.org/v1beta1
|
||||||
kind: GrafanaDashboard
|
kind: GrafanaDashboard
|
||||||
|
|||||||
@@ -71,3 +71,15 @@ kubelet-serving-cert-approver:
|
|||||||
metrics:
|
metrics:
|
||||||
port: 9090
|
port: 9090
|
||||||
targetPort: 9090
|
targetPort: 9090
|
||||||
|
serviceMonitor:
|
||||||
|
main:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: kubelet-serving-cert-approver
|
||||||
|
app.kubernetes.io/instance: kubelet-serving-cert-approver
|
||||||
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
||||||
|
endpoints:
|
||||||
|
- port: metrics
|
||||||
|
interval: 30s
|
||||||
|
scrapeTimeout: 15s
|
||||||
|
path: /metrics
|
||||||
|
|||||||
@@ -10,7 +10,9 @@ home: https://docs.alexlebens.dev/applications/prowlarr/
|
|||||||
sources:
|
sources:
|
||||||
- https://github.com/Prowlarr/Prowlarr
|
- https://github.com/Prowlarr/Prowlarr
|
||||||
- https://github.com/linuxserver/docker-prowlarr
|
- https://github.com/linuxserver/docker-prowlarr
|
||||||
|
- https://github.com/onedr0p/exportarr
|
||||||
- https://github.com/linuxserver/docker-prowlarr/pkgs/container/prowlarr
|
- https://github.com/linuxserver/docker-prowlarr/pkgs/container/prowlarr
|
||||||
|
- https://github.com/onedr0p/exportarr/pkgs/container/exportarr
|
||||||
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
- https://github.com/bjw-s-labs/helm-charts/tree/main/charts/other/app-template
|
||||||
- https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/volsync-target
|
- https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/volsync-target
|
||||||
maintainers:
|
maintainers:
|
||||||
|
|||||||
18
clusters/cl01tl/helm/prowlarr/templates/external-secret.yaml
Normal file
18
clusters/cl01tl/helm/prowlarr/templates/external-secret.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: prowlarr-key-secret
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: prowlarr-key-secret
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
secretStoreRef:
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
name: vault
|
||||||
|
data:
|
||||||
|
- secretKey: key
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/prowlarr/key
|
||||||
|
property: key
|
||||||
@@ -20,6 +20,27 @@ prowlarr:
|
|||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
memory: 200Mi
|
memory: 200Mi
|
||||||
|
metrics:
|
||||||
|
image:
|
||||||
|
repository: ghcr.io/onedr0p/exportarr
|
||||||
|
tag: v2.3.0@sha256:af535d94061cf97a52e1661945ffba78c03f9443eae7c0da1a80a5a4be56b520
|
||||||
|
args: ["prowlarr"]
|
||||||
|
env:
|
||||||
|
- name: URL
|
||||||
|
value: http://localhost
|
||||||
|
- name: PORT
|
||||||
|
value: 9792
|
||||||
|
- name: APIKEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: prowlarr-key-secret
|
||||||
|
key: key
|
||||||
|
- name: ENABLE_ADDITIONAL_METRICS
|
||||||
|
value: false
|
||||||
|
- name: ENABLE_UNKNOWN_QUEUE_ITEMS
|
||||||
|
value: false
|
||||||
|
- name: PROWLARR__BACKFILL
|
||||||
|
value: true
|
||||||
service:
|
service:
|
||||||
main:
|
main:
|
||||||
controller: main
|
controller: main
|
||||||
@@ -27,6 +48,21 @@ prowlarr:
|
|||||||
http:
|
http:
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 9696
|
targetPort: 9696
|
||||||
|
metrics:
|
||||||
|
port: 9792
|
||||||
|
targetPort: 9792
|
||||||
|
serviceMonitor:
|
||||||
|
main:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: prowlarr
|
||||||
|
app.kubernetes.io/instance: prowlarr
|
||||||
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
||||||
|
endpoints:
|
||||||
|
- port: metrics
|
||||||
|
interval: 1m
|
||||||
|
scrapeTimeout: 30s
|
||||||
|
path: /metrics
|
||||||
route:
|
route:
|
||||||
main:
|
main:
|
||||||
kind: HTTPRoute
|
kind: HTTPRoute
|
||||||
|
|||||||
@@ -57,6 +57,25 @@ unpackerr:
|
|||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
memory: 10Mi
|
memory: 10Mi
|
||||||
|
service:
|
||||||
|
main:
|
||||||
|
controller: main
|
||||||
|
ports:
|
||||||
|
metrics:
|
||||||
|
port: 5656
|
||||||
|
targetPort: 5656
|
||||||
|
serviceMonitor:
|
||||||
|
main:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: unpackerr
|
||||||
|
app.kubernetes.io/instance: unpackerr
|
||||||
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
||||||
|
endpoints:
|
||||||
|
- port: metrics
|
||||||
|
interval: 1m
|
||||||
|
scrapeTimeout: 30s
|
||||||
|
path: /metrics
|
||||||
persistence:
|
persistence:
|
||||||
storage:
|
storage:
|
||||||
existingClaim: unpackerr-nfs-storage
|
existingClaim: unpackerr-nfs-storage
|
||||||
|
|||||||
Reference in New Issue
Block a user