cluster

Infrastructure files for Nordgedanken and Midnightthoughts.
git clone git://archive.git.mtrnord.blog/MTRNord/cluster.git
Log | Files | Refs | README

commit 1d555426a4528be8182a598cfd1360d9a1774ac1
parent 65d5118155e2d18dce16bdde77c1c0b420f71a47
Author: MTRNord <mtrnord1@gmail.com>
Date:   Sun,  2 Apr 2023 14:47:04 +0200

Add missing media-repo files

Diffstat:
MREADME.md | 2+-
Aapps/base/media-repo/ingress.yaml | 73+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mapps/base/media-repo/kustomization.yaml | 3+++
Aapps/base/media-repo/media-middleware.yaml | 29+++++++++++++++++++++++++++++
Aapps/base/media-repo/podmonitor.yaml | 19+++++++++++++++++++
Mapps/base/media-repo/release.yaml | 19+++++++++++++++++++
Mapps/production/media-repo-values.yaml | 1+
7 files changed, 145 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md @@ -145,7 +145,7 @@ infra-controllers main@sha1:21ebd912 False True Applied revision - [x] Certmanager - [ ] External DNS - [ ] Matrix - - [ ] Media Repo + - [x] Media Repo - [ ] Move DB to DB Cluster - [ ] Synapse - [ ] Move DB to DB Cluster diff --git a/apps/base/media-repo/ingress.yaml b/apps/base/media-repo/ingress.yaml @@ -0,0 +1,72 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + traefik.ingress.kubernetes.io/router.middlewares: default-redirect-media-midnightthoughts@kubernetescrd,default-hsts@kubernetescrd,default-compress@kubernetescrd,default-redirect-https@kubernetescrd,default-body-limit@kubernetescrd + namespace: matrix + name: matrix-media-repo-midnightthoughts +spec: + ingressClassName: traefik + rules: + - host: matrix.midnightthoughts.space + http: + paths: + - backend: + service: + name: matrix-media-repo + port: + number: 80 + path: /_matrix/media + pathType: ImplementationSpecific + - host: midnightthoughts.space + http: + paths: + - backend: + service: + name: matrix-media-repo + port: + number: 80 + path: /_matrix/media + pathType: ImplementationSpecific + tls: + - hosts: + - matrix.midnightthoughts.space + - midnightthoughts.space + secretName: midnightthoughts-tls-secret +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + traefik.ingress.kubernetes.io/router.middlewares: default-redirect-media-art-midnightthoughts@kubernetescrd,default-compress@kubernetescrd,default-hsts@kubernetescrd,default-redirect-https@kubernetescrd,default-body-limit@kubernetescrd + namespace: matrix + name: matrix-media-repo-art-midnightthoughts +spec: + ingressClassName: traefik + rules: + - host: matrix.art.midnightthoughts.space + http: + paths: + - backend: + service: + name: matrix-media-repo + port: + number: 80 + path: /_matrix/media + pathType: ImplementationSpecific + - host: art.midnightthoughts.space + http: + paths: + - backend: + service: + name: matrix-media-repo + port: + number: 80 + path: /_matrix/media + pathType: ImplementationSpecific + tls: + - hosts: + - matrix.art.midnightthoughts.space + - art.midnightthoughts.space + secretName: art.midnightthoughts-tls-secret +\ No newline at end of file diff --git a/apps/base/media-repo/kustomization.yaml b/apps/base/media-repo/kustomization.yaml @@ -4,3 +4,6 @@ namespace: matrix resources: - ../matrix-helm - release.yaml + - media-middleware.yaml + - ingress.yaml + - podmonitor.yaml diff --git a/apps/base/media-repo/media-middleware.yaml b/apps/base/media-repo/media-middleware.yaml @@ -0,0 +1,28 @@ +--- +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: redirect-media-midnightthoughts + namespace: matrix +spec: + headers: + customRequestHeaders: + Host: "midnightthoughts.space" +--- +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: redirect-media-art-midnightthoughts + namespace: matrix +spec: + headers: + customRequestHeaders: + Host: "art.midnightthoughts.space" +--- +apiVersion: traefik.containo.us/v1alpha1 +kind: Middleware +metadata: + name: body-limit +spec: + buffering: + maxRequestBodyBytes: 2000000000 +\ No newline at end of file diff --git a/apps/base/media-repo/podmonitor.yaml b/apps/base/media-repo/podmonitor.yaml @@ -0,0 +1,19 @@ +--- +apiVersion: monitoring.coreos.com/v1 +kind: PodMonitor +metadata: + name: matrix-media-repo + labels: + instance: midnightthoughts + namespace: matrix +spec: + namespaceSelector: + matchNames: + - "matrix" + podMetricsEndpoints: + - interval: 5s + path: /metrics + port: monitoring + selector: + matchLabels: + app.kubernetes.io/name: matrix-media-repo diff --git a/apps/base/media-repo/release.yaml b/apps/base/media-repo/release.yaml @@ -1,3 +1,22 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: local-data-matrix-media-repo-postgresql-1 + namespace: matrix + labels: + app: postgresql + release: matrix-media-repo + role: master +spec: + accessModes: + - ReadWriteOnce + volumeMode: Filesystem + resources: + requests: + storage: 16Gi + storageClassName: nfs-client +--- apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: diff --git a/apps/production/media-repo-values.yaml b/apps/production/media-repo-values.yaml @@ -1,3 +1,4 @@ +--- apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: