1 Commits

Author SHA1 Message Date
b016941833 Update renovate/renovate Docker tag to v43.29.2 2026-02-21 00:00:54 +00:00
26 changed files with 145 additions and 379 deletions

View File

@@ -1,46 +0,0 @@
---
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: gitea-shared-storage-lvmhdd
namespace: openebs
spec:
capacity: 10Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: gitea-shared-storage-lvmhdd
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: gitea-shared-storage-lvmhdd
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: gitea-shared-storage-lvmhdd
namespace: gitea
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: hdd-lvmpv
volumeName: gitea-shared-storage-lvmhdd

View File

@@ -4,8 +4,6 @@ resources:
- namespace.yaml - namespace.yaml
- postgres-volume.yaml - postgres-volume.yaml
- postgres-cluster.yaml - postgres-cluster.yaml
- gitea-shared-volume.yaml
- valkey-volume.yaml
- release.yaml - release.yaml
- secret.yaml - secret.yaml
- backups.yaml - backups.yaml

View File

@@ -2,27 +2,15 @@
apiVersion: postgresql.cnpg.io/v1 apiVersion: postgresql.cnpg.io/v1
kind: Cluster kind: Cluster
metadata: metadata:
name: gitea-postgresql-cluster-lvmhdd name: gitea-postgresql-cluster
namespace: gitea namespace: gitea
spec: spec:
instances: 1 instances: 1
imageName: ghcr.io/cloudnative-pg/postgresql:17.4
storage: storage:
pvcTemplate: size: 10Gi
storageClassName: hdd-lvmpv storageClass: mayastor-single-hdd
resources:
requests:
storage: 20Gi
volumeName: gitea-postgresql-cluster-lvmhdd-1
# Just to avoid bootstrapping the instance agian
# I migrated data manually using pv_migrate because this feature is broken
# when source and target volumes are in different storage classes
# CNPG just sets dataSource to the PVC and expects the underlying storage
# to handle the migration, but it doesn't work here
bootstrap:
recovery:
backup: backup:
name: backup-migration volumeSnapshot:
className: csi-mayastor-snapshotclass

View File

@@ -27,7 +27,6 @@ spec:
volumeMode: Filesystem volumeMode: Filesystem
csi: csi:
driver: local.csi.openebs.io driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: gitea-postgresql-cluster-lvmhdd-1 volumeHandle: gitea-postgresql-cluster-lvmhdd-1
--- ---
# PVCs are dynamically created by the Postgres operator # PVCs are dynamically created by the Postgres operator

View File

@@ -45,28 +45,26 @@ spec:
primary: primary:
persistence: persistence:
enabled: true enabled: true
existingClaim: gitea-valkey-primary-lvmhdd-0 storageClass: mayastor-single-hdd
resources: resources:
requests: requests:
cpu: 0 cpu: 0
persistence: persistence:
enabled: true enabled: true
# We'll create PV and PVC manually storageClass: mayastor-single-hdd
create: false
claimName: gitea-shared-storage-lvmhdd
gitea: gitea:
additionalConfigFromEnvs: additionalConfigFromEnvs:
- name: GITEA__DATABASE__PASSWD - name: GITEA__DATABASE__PASSWD
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: gitea-postgresql-cluster-lvmhdd-app name: gitea-postgresql-cluster-app
key: password key: password
config: config:
database: database:
DB_TYPE: postgres DB_TYPE: postgres
HOST: gitea-postgresql-cluster-lvmhdd-rw:5432 HOST: gitea-postgresql-cluster-rw:5432
NAME: app NAME: app
USER: app USER: app
indexer: indexer:

View File

@@ -1,46 +0,0 @@
---
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: gitea-valkey-primary-lvmhdd-0
namespace: openebs
spec:
capacity: 1Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: gitea-valkey-primary-lvmhdd-0
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: gitea-valkey-primary-lvmhdd-0
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: gitea-valkey-primary-lvmhdd-0
namespace: gitea
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: hdd-lvmpv
volumeName: gitea-valkey-primary-lvmhdd-0

View File

@@ -1,46 +0,0 @@
---
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: immich-library-lvmhdd
namespace: openebs
spec:
capacity: 150Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: immich-library-lvmhdd
spec:
capacity:
storage: 150Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: immich-library-lvmhdd
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: library-lvmhdd
namespace: immich
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 150Gi
storageClassName: hdd-lvmpv
volumeName: immich-library-lvmhdd

View File

@@ -2,10 +2,8 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
resources: resources:
- namespace.yaml - namespace.yaml
- valkey-volume.yaml - volume.yaml
- redis.yaml - redis.yaml
- postgres-password.yaml - postgres-password.yaml
- postgres-volume.yaml
- postgres-cluster.yaml - postgres-cluster.yaml
- immich-library.yaml
- release.yaml - release.yaml

View File

@@ -2,31 +2,21 @@
apiVersion: postgresql.cnpg.io/v1 apiVersion: postgresql.cnpg.io/v1
kind: Cluster kind: Cluster
metadata: metadata:
name: immich-db-lvmhdd name: immich-db
namespace: immich namespace: immich
spec: spec:
# TODO: Configure renovate to handle imageName
imageName: ghcr.io/tensorchord/cloudnative-vectorchord:14-0.4.3 imageName: ghcr.io/tensorchord/cloudnative-vectorchord:14-0.4.3
instances: 1 instances: 1
storage: storage:
pvcTemplate: size: 10Gi
storageClassName: hdd-lvmpv storageClass: mayastor-single-hdd
resources:
requests:
storage: 10Gi
volumeName: immich-db-lvmhdd-1
# Just to avoid bootstrapping the instance again
# I migrated data manually using pv_migrate because this feature is broken
# when source and target volumes are in different storage classes
# CNPG just sets dataSource to the PVC and expects the underlying storage
# to handle the migration, but it doesn't work here
bootstrap: bootstrap:
recovery: initdb:
backup: # Defaults of immich chart
name: backup-migration database: immich
owner: immich
# We need to create custom role because default one does not allow to set up # We need to create custom role because default one does not allow to set up
# vectorchord extension # vectorchord extension

View File

@@ -1,33 +0,0 @@
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: immich-db-lvmhdd-1
namespace: openebs
spec:
capacity: 10Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: immich-db-lvmhdd-1
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: immich-db-lvmhdd-1
---
# PVCs are dynamically created by the Postgres operator

View File

@@ -2,35 +2,28 @@
apiVersion: source.toolkit.fluxcd.io/v1 apiVersion: source.toolkit.fluxcd.io/v1
kind: HelmRepository kind: HelmRepository
metadata: metadata:
name: valkey name: bitnami
namespace: immich namespace: immich
spec: spec:
interval: 24h interval: 24h
url: https://valkey.io/valkey-helm/ type: "oci"
url: oci://registry-1.docker.io/bitnamicharts/
--- ---
apiVersion: helm.toolkit.fluxcd.io/v2 apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease kind: HelmRelease
metadata: metadata:
name: valkey name: redis
namespace: immich namespace: immich
spec: spec:
interval: 30m interval: 30m
chart: chart:
spec: spec:
chart: valkey chart: redis
version: 0.9.3 version: 24.1.3
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: valkey name: bitnami
values: values:
dataStorage: global:
enabled: true defaultStorageClass: mayastor-single-hdd
persistentVolumeClaimName: immich-valkey architecture: standalone
auth:
enabled: true
usersExistingSecret: redis
aclUsers:
default:
passwordKey: redis-password
permissions: "~* &* +@all"

View File

@@ -27,14 +27,14 @@ spec:
config: config:
vecotrExtension: vectorchord vecotrExtension: vectorchord
postgres: postgres:
host: immich-db-lvmhdd-rw host: immich-db-rw
existingSecret: existingSecret:
enabled: true enabled: true
secretName: immich-db-immich secretName: immich-db-immich
usernameKey: username usernameKey: username
passwordKey: password passwordKey: password
redis: redis:
host: valkey host: redis-master
existingSecret: existingSecret:
enabled: true enabled: true
secretName: redis secretName: redis
@@ -47,7 +47,7 @@ spec:
volumes: volumes:
- name: uploads - name: uploads
persistentVolumeClaim: persistentVolumeClaim:
claimName: library-lvmhdd claimName: library
machineLearning: machineLearning:
enabled: true enabled: true

View File

@@ -1,46 +0,0 @@
---
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: immich-valkey
namespace: openebs
spec:
capacity: 1Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: immich-valkey
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: immich-valkey
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: immich-valkey
namespace: immich
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: hdd-lvmpv
volumeName: immich-valkey

13
apps/immich/volume.yaml Normal file
View File

@@ -0,0 +1,13 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: library
namespace: immich
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 150Gi
storageClassName: mayastor-single-hdd

View File

@@ -2,6 +2,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
resources: resources:
- gitea - gitea
- registry
- renovate - renovate
- librechat - librechat
- frigate - frigate

View File

@@ -41,7 +41,7 @@ spec:
volumes: volumes:
- name: models - name: models
persistentVolumeClaim: persistentVolumeClaim:
claimName: llama-models-lvmhdd claimName: llama-models
- name: kfd - name: kfd
hostPath: hostPath:
path: /dev/kfd path: /dev/kfd

View File

@@ -1,46 +1,13 @@
--- ---
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: llama-models-lvmhdd
namespace: openebs
spec:
capacity: 200Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1 apiVersion: v1
metadata:
name: llama-models-lvmhdd
spec:
capacity:
storage: 200Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: llama-models-lvmhdd
---
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
apiVersion: v1
metadata: metadata:
name: llama-models-lvmhdd
namespace: llama namespace: llama
name: llama-models
spec: spec:
accessModes: accessModes:
- ReadWriteOnce - ReadWriteOnce
resources: resources:
requests: requests:
storage: 200Gi storage: 200Gi
storageClassName: hdd-lvmpv storageClassName: mayastor-single-ssd
volumeName: llama-models-lvmhdd

View File

@@ -0,0 +1,40 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: registry
namespace: registry
spec:
replicas: 1
selector:
matchLabels:
app: registry
template:
metadata:
labels:
app: registry
spec:
containers:
- name: registry
image: registry:3.0.0
ports:
- containerPort: 5000
volumeMounts:
- name: data
mountPath: /var/lib/registry
volumes:
- name: data
persistentVolumeClaim:
claimName: registry-data
---
apiVersion: v1
kind: Service
metadata:
name: registry-service
namespace: registry
spec:
selector:
app: registry
ports:
- protocol: TCP
port: 80
targetPort: 5000

View File

@@ -0,0 +1,26 @@
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
namespace: registry
name: registry
annotations:
cert-manager.io/cluster-issuer: letsencrypt
nginx.ingress.kubernetes.io/proxy-body-size: "0"
spec:
ingressClassName: nginx-ingress
rules:
- host: registry.lumpiasty.xyz
http:
paths:
- backend:
service:
name: registry-service
port:
number: 80
path: /
pathType: Prefix
tls:
- hosts:
- registry.lumpiasty.xyz
secretName: researcher-ingress

View File

@@ -0,0 +1,8 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- namespace.yaml
- volume.yaml
- deployment.yaml
- ingress.yaml

View File

@@ -0,0 +1,5 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: registry

13
apps/registry/volume.yaml Normal file
View File

@@ -0,0 +1,13 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: registry-data
namespace: registry
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 50Gi
storageClassName: mayastor-single-hdd

View File

@@ -15,7 +15,7 @@ spec:
- name: renovate - name: renovate
# Update this to the latest available and then enable Renovate on # Update this to the latest available and then enable Renovate on
# the manifest # the manifest
image: renovate/renovate:43.31.1-full image: renovate/renovate:43.29.2-full
envFrom: envFrom:
- secretRef: - secretRef:
name: renovate-gitea-token name: renovate-gitea-token

View File

@@ -1,46 +0,0 @@
---
apiVersion: local.openebs.io/v1alpha1
kind: LVMVolume
metadata:
labels:
kubernetes.io/nodename: anapistula-delrosalae
name: openbao-volume-lvmhdd
namespace: openebs
spec:
capacity: 1Gi
ownerNodeID: anapistula-delrosalae
shared: "yes"
thinProvision: "no"
vgPattern: ^openebs-hdd$
volGroup: openebs-hdd
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: openbao-volume-lvmhdd
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hdd-lvmpv
volumeMode: Filesystem
csi:
driver: local.csi.openebs.io
fsType: btrfs
volumeHandle: openbao-volume-lvmhdd
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: openbao-volume-lvmhdd
namespace: openbao
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: hdd-lvmpv
volumeName: openbao-volume-lvmhdd

View File

@@ -60,27 +60,21 @@ spec:
service_registration "kubernetes" {} service_registration "kubernetes" {}
replicas: 1 replicas: 1
# Disable chart's data storage setting and add data volume manually
dataStorage:
enabled: false
volumes:
# Mount TLS cert to container # Mount TLS cert to container
volumes:
- name: tls - name: tls
secret: secret:
secretName: openbao-lumpiasty-xyz secretName: openbao-lumpiasty-xyz
- name: data
persistentVolumeClaim:
claimName: openbao-volume-lvmhdd
volumeMounts: volumeMounts:
- name: tls - name: tls
mountPath: /tls mountPath: /tls
readOnly: true readOnly: true
- name: data
mountPath: /openbao/data
service: service:
enabled: true enabled: true
type: LoadBalancer type: LoadBalancer
ipFamilyPolicy: RequireDualStack ipFamilyPolicy: RequireDualStack
dataStorage:
storageClass: mayastor-single-hdd
csi: csi:
enabled: true enabled: true
injector: injector:

View File

@@ -9,6 +9,7 @@ resources:
- controllers/cert-manager-webhook-ovh.yaml - controllers/cert-manager-webhook-ovh.yaml
- controllers/openebs.yaml - controllers/openebs.yaml
- controllers/k8up.yaml - controllers/k8up.yaml
- controllers/openbao.yaml
- controllers/external-secrets.yaml - controllers/external-secrets.yaml
- controllers/vault-secrets-operator.yaml - controllers/vault-secrets-operator.yaml
- controllers/mongodb-operator.yaml - controllers/mongodb-operator.yaml
@@ -23,6 +24,3 @@ resources:
- configs/mayastor-snapshotclass.yaml - configs/mayastor-snapshotclass.yaml
- configs/openbao-cert.yaml - configs/openbao-cert.yaml
- configs/ovh-cert-manager-secret.yaml - configs/ovh-cert-manager-secret.yaml
- configs/openbao-volume.yaml
- controllers/openbao.yaml