rm postgres-operator (4th competing postgres?)

This commit is contained in:
2025-04-20 18:06:46 +03:00
parent 61f7d724b5
commit 0447abecdc
6 changed files with 7 additions and 87 deletions

View File

@@ -2,17 +2,17 @@
apiVersion: argoproj.io/v1alpha1 apiVersion: argoproj.io/v1alpha1
kind: Application kind: Application
metadata: metadata:
name: postgres-clusters name: pgweb
namespace: argocd namespace: argocd
spec: spec:
project: k-space.ee project: k-space.ee
source: source:
repoURL: 'git@git.k-space.ee:k-space/kube.git' repoURL: 'git@git.k-space.ee:k-space/kube.git'
path: postgres-clusters path: pgweb
targetRevision: HEAD targetRevision: HEAD
destination: destination:
server: 'https://kubernetes.default.svc' server: 'https://kubernetes.default.svc'
namespace: postgres-clusters namespace: pgweb
syncPolicy: syncPolicy:
automated: automated:
prune: true prune: true

View File

@@ -3,7 +3,7 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: pgweb name: pgweb
namespace: postgres-clusters namespace: pgweb
spec: spec:
replicas: 1 replicas: 1
selector: selector:
@@ -26,7 +26,7 @@ apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: pgweb name: pgweb
namespace: postgres-clusters namespace: pgweb
spec: spec:
selector: selector:
app: pgweb app: pgweb
@@ -49,12 +49,12 @@ apiVersion: networking.k8s.io/v1
kind: Ingress kind: Ingress
metadata: metadata:
name: pgweb name: pgweb
namespace: postgres-clusters namespace: pgweb
annotations: annotations:
kubernetes.io/ingress.class: traefik kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/router.entrypoints: websecure traefik.ingress.kubernetes.io/router.entrypoints: websecure
external-dns.alpha.kubernetes.io/target: traefik.k-space.ee external-dns.alpha.kubernetes.io/target: traefik.k-space.ee
traefik.ingress.kubernetes.io/router.middlewares: postgres-clusters-pgweb@kubernetescrd traefik.ingress.kubernetes.io/router.middlewares: pgweb-pgweb@kubernetescrd
spec: spec:
rules: rules:
- host: pgweb.k-space.ee - host: pgweb.k-space.ee

View File

@@ -1,13 +0,0 @@
# Postgres clusters
This is for shared Postgres clusters managed by the Codemowers' sample: [postgres-database-operator](https://github.com/codemowers/operatorlib/tree/main/samples/postgres-database-operator), which is deployed via [ArgoCD](https://argocd.k-space.ee/applications/argocd/postgres-database-operator)
All instances run in a dedicated namespace. Clusters managed by operator-bundle. For more details check https://cloudnative-pg.io/.
Admin access available via [pgweb.k-space.ee](https://pgweb.k-space.ee/).
Deploying manually without ArgoCD:
```
kubectl create namespace postgres-clusters
kubectl apply -n postgres-clusters -f application.yaml
```

View File

@@ -1,23 +0,0 @@
---
apiVersion: codemowers.cloud/v1beta1
kind: PostgresDatabaseClass
metadata:
name: dedicated
annotations:
kubernetes.io/description: "Dedicated Postgres cluster"
spec:
reclaimPolicy: Retain
replicas: 3
storageClass: postgres
podSpec:
containers:
- name: postgres
image: mirror.gcr.io/library/postgres:13.11@sha256:0f18de936266e03891e186db616e530e0e4365ef5fb300d4bb27318538b80604
imagePullPolicy: IfNotPresent
nodeSelector:
dedicated: storage
tolerations:
- effect: NoSchedule
key: dedicated
operator: Equal
value: storage

View File

@@ -1,24 +0,0 @@
---
apiVersion: codemowers.cloud/v1beta1
kind: PostgresDatabaseClass
metadata:
name: shared
annotations:
kubernetes.io/description: "Shared Postgres cluster"
spec:
reclaimPolicy: Retain
shared: true
replicas: 3
storageClass: postgres
podSpec:
containers:
- name: postgres
image: mirror.gcr.io/library/postgres:13.11@sha256:0f18de936266e03891e186db616e530e0e4365ef5fb300d4bb27318538b80604
imagePullPolicy: IfNotPresent
nodeSelector:
dedicated: storage
tolerations:
- effect: NoSchedule
key: dedicated
operator: Equal
value: storage

View File

@@ -1,20 +0,0 @@
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: postgres
annotations:
kubernetes.io/description: |
Storage class for Postgres, Postgis and similar applications that
implement high availability in application layer.
This storage class uses XFS, has no block level redundancy and
has block device level caching disabled.
provisioner: csi.proxmox.sinextra.dev
reclaimPolicy: Retain
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
parameters:
csi.storage.k8s.io/fstype: xfs
storage: ks-pvs
cache: none
ssd: "true"