Compare commits
20 Commits
b016941833
...
2c11e4cec0
| Author | SHA1 | Date | |
|---|---|---|---|
| 2c11e4cec0 | |||
| b95c9e7c69 | |||
| 05c28d0d46 | |||
| 09aeee2bd9 | |||
| d709989558 | |||
| 93d1e579d3 | |||
| 92bcd0ac34 | |||
| c1d08326f3 | |||
| f9015ad561 | |||
| 14d79a2cd0 | |||
| da13987ce8 | |||
| 36aab3d935 | |||
| f50e8c10f7 | |||
| 3b3642faeb | |||
| 8a009bc117 | |||
| 868f96e390 | |||
| 638fc960af | |||
| 1f77bd5176 | |||
| ffd350afd0 | |||
| 093208c3e4 |
46
apps/gitea/gitea-shared-volume.yaml
Normal file
46
apps/gitea/gitea-shared-volume.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
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
|
||||||
@@ -4,6 +4,8 @@ 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
|
||||||
|
|||||||
@@ -2,15 +2,27 @@
|
|||||||
apiVersion: postgresql.cnpg.io/v1
|
apiVersion: postgresql.cnpg.io/v1
|
||||||
kind: Cluster
|
kind: Cluster
|
||||||
metadata:
|
metadata:
|
||||||
name: gitea-postgresql-cluster
|
name: gitea-postgresql-cluster-lvmhdd
|
||||||
namespace: gitea
|
namespace: gitea
|
||||||
spec:
|
spec:
|
||||||
instances: 1
|
instances: 1
|
||||||
|
|
||||||
storage:
|
imageName: ghcr.io/cloudnative-pg/postgresql:17.4
|
||||||
size: 10Gi
|
|
||||||
storageClass: mayastor-single-hdd
|
|
||||||
|
|
||||||
|
storage:
|
||||||
|
pvcTemplate:
|
||||||
|
storageClassName: hdd-lvmpv
|
||||||
|
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:
|
||||||
volumeSnapshot:
|
name: backup-migration
|
||||||
className: csi-mayastor-snapshotclass
|
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ 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
|
||||||
|
|||||||
@@ -45,26 +45,28 @@ spec:
|
|||||||
primary:
|
primary:
|
||||||
persistence:
|
persistence:
|
||||||
enabled: true
|
enabled: true
|
||||||
storageClass: mayastor-single-hdd
|
existingClaim: gitea-valkey-primary-lvmhdd-0
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 0
|
cpu: 0
|
||||||
|
|
||||||
persistence:
|
persistence:
|
||||||
enabled: true
|
enabled: true
|
||||||
storageClass: mayastor-single-hdd
|
# We'll create PV and PVC manually
|
||||||
|
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-app
|
name: gitea-postgresql-cluster-lvmhdd-app
|
||||||
key: password
|
key: password
|
||||||
config:
|
config:
|
||||||
database:
|
database:
|
||||||
DB_TYPE: postgres
|
DB_TYPE: postgres
|
||||||
HOST: gitea-postgresql-cluster-rw:5432
|
HOST: gitea-postgresql-cluster-lvmhdd-rw:5432
|
||||||
NAME: app
|
NAME: app
|
||||||
USER: app
|
USER: app
|
||||||
indexer:
|
indexer:
|
||||||
|
|||||||
46
apps/gitea/valkey-volume.yaml
Normal file
46
apps/gitea/valkey-volume.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
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
|
||||||
46
apps/immich/immich-library.yaml
Normal file
46
apps/immich/immich-library.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
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
|
||||||
@@ -2,8 +2,10 @@ apiVersion: kustomize.config.k8s.io/v1beta1
|
|||||||
kind: Kustomization
|
kind: Kustomization
|
||||||
resources:
|
resources:
|
||||||
- namespace.yaml
|
- namespace.yaml
|
||||||
- volume.yaml
|
- valkey-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
|
||||||
|
|||||||
@@ -2,21 +2,31 @@
|
|||||||
apiVersion: postgresql.cnpg.io/v1
|
apiVersion: postgresql.cnpg.io/v1
|
||||||
kind: Cluster
|
kind: Cluster
|
||||||
metadata:
|
metadata:
|
||||||
name: immich-db
|
name: immich-db-lvmhdd
|
||||||
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:
|
||||||
size: 10Gi
|
pvcTemplate:
|
||||||
storageClass: mayastor-single-hdd
|
storageClassName: hdd-lvmpv
|
||||||
|
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:
|
||||||
initdb:
|
recovery:
|
||||||
# Defaults of immich chart
|
backup:
|
||||||
database: immich
|
name: backup-migration
|
||||||
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
|
||||||
|
|||||||
33
apps/immich/postgres-volume.yaml
Normal file
33
apps/immich/postgres-volume.yaml
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
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
|
||||||
@@ -2,28 +2,35 @@
|
|||||||
apiVersion: source.toolkit.fluxcd.io/v1
|
apiVersion: source.toolkit.fluxcd.io/v1
|
||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
metadata:
|
metadata:
|
||||||
name: bitnami
|
name: valkey
|
||||||
namespace: immich
|
namespace: immich
|
||||||
spec:
|
spec:
|
||||||
interval: 24h
|
interval: 24h
|
||||||
type: "oci"
|
url: https://valkey.io/valkey-helm/
|
||||||
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: redis
|
name: valkey
|
||||||
namespace: immich
|
namespace: immich
|
||||||
spec:
|
spec:
|
||||||
interval: 30m
|
interval: 30m
|
||||||
chart:
|
chart:
|
||||||
spec:
|
spec:
|
||||||
chart: redis
|
chart: valkey
|
||||||
version: 24.1.3
|
version: 0.9.3
|
||||||
sourceRef:
|
sourceRef:
|
||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: bitnami
|
name: valkey
|
||||||
values:
|
values:
|
||||||
global:
|
dataStorage:
|
||||||
defaultStorageClass: mayastor-single-hdd
|
enabled: true
|
||||||
architecture: standalone
|
persistentVolumeClaimName: immich-valkey
|
||||||
|
|
||||||
|
auth:
|
||||||
|
enabled: true
|
||||||
|
usersExistingSecret: redis
|
||||||
|
aclUsers:
|
||||||
|
default:
|
||||||
|
passwordKey: redis-password
|
||||||
|
permissions: "~* &* +@all"
|
||||||
|
|||||||
@@ -27,14 +27,14 @@ spec:
|
|||||||
config:
|
config:
|
||||||
vecotrExtension: vectorchord
|
vecotrExtension: vectorchord
|
||||||
postgres:
|
postgres:
|
||||||
host: immich-db-rw
|
host: immich-db-lvmhdd-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: redis-master
|
host: valkey
|
||||||
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
|
claimName: library-lvmhdd
|
||||||
|
|
||||||
machineLearning:
|
machineLearning:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
46
apps/immich/valkey-volume.yaml
Normal file
46
apps/immich/valkey-volume.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
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
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
metadata:
|
|
||||||
name: library
|
|
||||||
namespace: immich
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
- ReadWriteOnce
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: 150Gi
|
|
||||||
storageClassName: mayastor-single-hdd
|
|
||||||
@@ -2,7 +2,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1
|
|||||||
kind: Kustomization
|
kind: Kustomization
|
||||||
resources:
|
resources:
|
||||||
- gitea
|
- gitea
|
||||||
- registry
|
|
||||||
- renovate
|
- renovate
|
||||||
- librechat
|
- librechat
|
||||||
- frigate
|
- frigate
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: models
|
- name: models
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: llama-models
|
claimName: llama-models-lvmhdd
|
||||||
- name: kfd
|
- name: kfd
|
||||||
hostPath:
|
hostPath:
|
||||||
path: /dev/kfd
|
path: /dev/kfd
|
||||||
|
|||||||
@@ -1,13 +1,46 @@
|
|||||||
---
|
---
|
||||||
apiVersion: v1
|
apiVersion: local.openebs.io/v1alpha1
|
||||||
kind: PersistentVolumeClaim
|
kind: LVMVolume
|
||||||
metadata:
|
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
|
||||||
|
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
|
||||||
|
apiVersion: v1
|
||||||
|
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: mayastor-single-ssd
|
storageClassName: hdd-lvmpv
|
||||||
|
volumeName: llama-models-lvmhdd
|
||||||
|
|||||||
@@ -1,40 +0,0 @@
|
|||||||
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
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
---
|
|
||||||
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
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
---
|
|
||||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
||||||
kind: Kustomization
|
|
||||||
resources:
|
|
||||||
- namespace.yaml
|
|
||||||
- volume.yaml
|
|
||||||
- deployment.yaml
|
|
||||||
- ingress.yaml
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Namespace
|
|
||||||
metadata:
|
|
||||||
name: registry
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
metadata:
|
|
||||||
name: registry-data
|
|
||||||
namespace: registry
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
- ReadWriteOnce
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: 50Gi
|
|
||||||
storageClassName: mayastor-single-hdd
|
|
||||||
@@ -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.4.0-full
|
image: renovate/renovate:43.31.1-full
|
||||||
envFrom:
|
envFrom:
|
||||||
- secretRef:
|
- secretRef:
|
||||||
name: renovate-gitea-token
|
name: renovate-gitea-token
|
||||||
|
|||||||
46
infra/configs/openbao-volume.yaml
Normal file
46
infra/configs/openbao-volume.yaml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
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
|
||||||
@@ -60,21 +60,27 @@ spec:
|
|||||||
|
|
||||||
service_registration "kubernetes" {}
|
service_registration "kubernetes" {}
|
||||||
replicas: 1
|
replicas: 1
|
||||||
# Mount TLS cert to container
|
# Disable chart's data storage setting and add data volume manually
|
||||||
|
dataStorage:
|
||||||
|
enabled: false
|
||||||
volumes:
|
volumes:
|
||||||
|
# Mount TLS cert to container
|
||||||
- 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:
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ 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
|
||||||
@@ -24,3 +23,6 @@ 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
|
||||||
|
|||||||
Reference in New Issue
Block a user