From 1738876009b55d4106bec2c0f50122f8b0a32396 Mon Sep 17 00:00:00 2001 From: Nathan Rashleigh Date: Wed, 9 Apr 2025 23:34:35 +1000 Subject: [PATCH] memestream --- .gitignore | 2 +- memestream/memestream.client.yaml | 4 +- memestream/memestream.ingress.yaml | 55 +++++++------- memestream/memestream.minio.yaml | 115 +++++++++++++++++++++++++++++ memestream/memestream.yaml | 60 +++++---------- mnml/mnml.ingress.yaml | 2 +- 6 files changed, 167 insertions(+), 71 deletions(-) create mode 100644 memestream/memestream.minio.yaml diff --git a/.gitignore b/.gitignore index 658c0c2..5bda649 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ pvs/ *.sql *.tar.gz -mnml/mnml.secret.yaml +*.secret.yaml diff --git a/memestream/memestream.client.yaml b/memestream/memestream.client.yaml index f1a3fe3..c0a0d5f 100644 --- a/memestream/memestream.client.yaml +++ b/memestream/memestream.client.yaml @@ -8,6 +8,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: memestream-client + namespace: memestream spec: replicas: 1 selector: @@ -20,7 +21,7 @@ spec: spec: containers: - name: memestream-client - image: registry.strix.systems/memestream-client + image: registry.ntwl.xyz/memestream-client imagePullPolicy: Always ports: - containerPort: 8080 @@ -37,6 +38,7 @@ apiVersion: v1 kind: Service metadata: name: memestream-client + namespace: memestream spec: selector: app: memestream-client diff --git a/memestream/memestream.ingress.yaml b/memestream/memestream.ingress.yaml index 1aff13e..f117668 100644 --- a/memestream/memestream.ingress.yaml +++ b/memestream/memestream.ingress.yaml @@ -1,29 +1,22 @@ +--- + apiVersion: networking.k8s.io/v1 kind: Ingress metadata: - name: memestream-client + name: memestream + namespace: memestream annotations: cert-manager.io/cluster-issuer: "letsencrypt-prod" spec: ingressClassName: haproxy tls: - hosts: - - memestream.strix.systems - - search.memestream.strix.systems - memestream.ntwl.xyz - search.memestream.ntwl.xyz - secretName: memestream-strix-systems-tls + - storage.memestream.ntwl.xyz + - minio.memestream.ntwl.xyz + secretName: memestream-ntwl-xyz-tls rules: - - host: search.memestream.strix.systems - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: memestream-meili - port: - number: 7700 - host: search.memestream.ntwl.xyz http: paths: @@ -34,16 +27,6 @@ spec: name: memestream-meili port: number: 7700 - - host: memestream.strix.systems - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: memestream-client - port: - number: 8080 - host: memestream.ntwl.xyz http: paths: @@ -53,4 +36,26 @@ spec: service: name: memestream-client port: - number: 8080 \ No newline at end of file + number: 8080 + + - host: storage.memestream.ntwl.xyz + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: memestream-minio-service + port: + number: 9000 + + - host: minio.memestream.ntwl.xyz + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: memestream-minio-service + port: + number: 9090 \ No newline at end of file diff --git a/memestream/memestream.minio.yaml b/memestream/memestream.minio.yaml new file mode 100644 index 0000000..8d093e6 --- /dev/null +++ b/memestream/memestream.minio.yaml @@ -0,0 +1,115 @@ +# ----------------------------------------------------------------------- +# VOLUMES +# ----------------------------------------------------------------------- + +--- + +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: memestream-minio-pvc + namespace: memestream +spec: + storageClass: fast + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 20Gi + +--- + +# ----------------------------------------------------------------------- +# DEPLOYMENTS +# ----------------------------------------------------------------------- + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: memestream-minio + namespace: memestream +spec: + replicas: 1 + selector: + matchLabels: + app: minio + template: + metadata: + labels: + app: minio + + spec: + containers: + - name: minio + image: docker.io/minio/minio:latest + command: ['minio'] + args: ['server', '/data'] + env: + - name: MINIO_PROMETHEUS_AUTH_TYPE + value: public + - name: MINIO_CONSOLE_ADDRESS + value: :9090 + - name: MINIO_ROOT_USER + valueFrom: + secretKeyRef: + name: minio + key: MINIO_ROOT_USER + - name: MINIO_ROOT_PASSWORD + valueFrom: + secretKeyRef: + name: minio + key: MINIO_ROOT_PASSWORD + resources: + limits: + memory: "1Gi" + ports: + - name: console + containerPort: 9090 + protocol: TCP + - name: api + containerPort: 9000 + protocol: TCP + livenessProbe: + httpGet: + path: /minio/health/live + port: 9000 + initialDelaySeconds: 120 + periodSeconds: 20 + readinessProbe: + httpGet: + path: /minio/health/ready + port: 9000 + initialDelaySeconds: 10 + periodSeconds: 20 + successThreshold: 2 + volumeMounts: + - mountPath: /data + name: memestream-minio-storage + + volumes: + - name: memestream-minio-storage + persistentVolumeClaim: + claimName: memestream-minio-pvc + + +--- + +apiVersion: v1 +kind: Service +metadata: + name: memestream-minio + namespace: memestream + labels: + app: minio +spec: + ports: + - name: api + port: 9000 + protocol: TCP + targetPort: 9000 + - name: console + port: 9090 + protocol: TCP + targetPort: 9090 + selector: + app: minio diff --git a/memestream/memestream.yaml b/memestream/memestream.yaml index 6b46ab6..fd7cc74 100644 --- a/memestream/memestream.yaml +++ b/memestream/memestream.yaml @@ -1,26 +1,13 @@ -# ----------------------------------------------------------------------- -# VOLUMES -# ----------------------------------------------------------------------- - --- apiVersion: v1 -kind: PersistentVolume +kind: Namespace metadata: - name: memestream-postgres-pv -spec: - storageClassName: "" - capacity: - storage: 2Gi - accessModes: - - ReadWriteOnce - persistentVolumeReclaimPolicy: Retain - claimRef: - namespace: default - name: memestream-postgres-pvc - hostPath: - path: "/var/lib/rancher/k3s/storage/memestream-postgres-pv" - type: DirectoryOrCreate + name: memestream + +# ----------------------------------------------------------------------- +# VOLUMES +# ----------------------------------------------------------------------- --- @@ -28,8 +15,9 @@ kind: PersistentVolumeClaim apiVersion: v1 metadata: name: memestream-postgres-pvc + namespace: memestream spec: - volumeName: memestream-postgres-pv + storageClassName: fast accessModes: - ReadWriteOnce resources: @@ -38,32 +26,13 @@ spec: --- -apiVersion: v1 -kind: PersistentVolume -metadata: - name: memestream-meili-pv -spec: - storageClassName: "" - capacity: - storage: 5Gi - accessModes: - - ReadWriteOnce - persistentVolumeReclaimPolicy: Retain - claimRef: - namespace: default - name: memestream-meili-pvc - hostPath: - path: "/var/lib/rancher/k3s/storage/memestream-meili-pv" - type: DirectoryOrCreate - ---- - kind: PersistentVolumeClaim apiVersion: v1 metadata: name: memestream-meili-pvc + namespace: memestream spec: - volumeName: memestream-meili-pv + storageClassName: fast accessModes: - ReadWriteOnce resources: @@ -80,6 +49,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: memestream-archiver + namespace: memestream spec: replicas: 1 selector: @@ -92,7 +62,7 @@ spec: spec: containers: - name: memestream-archiver - image: registry.strix.systems/memestream-archiver + image: registry.ntwl.xyz/memestream-archiver imagePullPolicy: Always envFrom: - secretRef: @@ -104,6 +74,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: memestream-postgres + namespace: memestream spec: replicas: 1 selector: @@ -150,6 +121,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: memestream-meili + namespace: memestream spec: replicas: 1 selector: @@ -195,6 +167,7 @@ apiVersion: v1 kind: Service metadata: name: memestream-postgres + namespace: memestream spec: selector: app: memestream-postgres @@ -207,8 +180,9 @@ apiVersion: v1 kind: Service metadata: name: memestream-meili + namespace: memestream spec: selector: app: memestream-meili ports: - - port: 7700 \ No newline at end of file + - port: 7700 diff --git a/mnml/mnml.ingress.yaml b/mnml/mnml.ingress.yaml index b176dba..d369891 100644 --- a/mnml/mnml.ingress.yaml +++ b/mnml/mnml.ingress.yaml @@ -83,4 +83,4 @@ spec: service: name: mnml-ws port: - number: 40055 \ No newline at end of file + number: 40055