imfreedom/k8s-cluster

Setup trac-postgres using kustomize

2021-05-04, Gary Kramlich
f86ae140dc67
Parents 905cecc41635
Children 76397373adc7
Setup trac-postgres using kustomize
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/50-developer.pidgin.im/postgres/kustomization.yaml Tue May 04 04:24:55 2021 -0500
@@ -0,0 +1,13 @@
+---
+namespace: roost
+commonLabels:
+ app: trac
+ role: db
+resources:
+ - manifest.yaml
+secretGenerator:
+ - name: trac-postgres
+ envs:
+ - secrets/env
+ options:
+ disableNameSuffixHash: true
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/50-developer.pidgin.im/postgres/manifest.yaml Tue May 04 04:24:55 2021 -0500
@@ -0,0 +1,115 @@
+# developer.pidgin.im is a containerized version of the old trac site from the
+# nicobar host.
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: trac-postgres
+spec:
+ ports:
+ - port: 5432
+ protocol: TCP
+ selector:
+ app: trac
+ role: db
+---
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: trac-postgres
+spec:
+ podSelector:
+ matchLabels:
+ app: trac
+ role: db
+ ingress:
+ - from:
+ - podSelector:
+ matchExpressions:
+ - key: app
+ operator: In
+ values:
+ - trac
+ - key: role
+ operator: In
+ values:
+ - app
+ ports:
+ - port: 5432
+ protocol: TCP
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: trac-postgres
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: trac
+ role: db
+ strategy:
+ type: Recreate
+ template:
+ spec:
+ containers:
+ - name: postgres
+ image: postgres:11
+ imagePullPolicy: Always
+ env:
+ - name: POSTGRES_USER
+ valueFrom:
+ secretKeyRef:
+ name: trac-postgres
+ key: username
+ - name: POSTGRES_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: trac-postgres
+ key: password
+ - name: POSTGRES_DB
+ valueFrom:
+ secretKeyRef:
+ name: trac-postgres
+ key: db
+ resources:
+ limits:
+ cpu: 200m
+ memory: 256Mi
+ requests:
+ cpu: 100m
+ memory: 128Mi
+ ports:
+ - containerPort: 5432
+ volumeMounts:
+ - mountPath: /var/lib/postgresql/data
+ name: trac-postgres
+ readOnly: false
+ subPath: postgresql
+ volumes:
+ - name: trac-postgres
+ persistentVolumeClaim:
+ claimName: trac-db
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: trac-db
+spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 3Gi
+---
+apiVersion: gemini.fairwinds.com/v1beta1
+kind: SnapshotGroup
+metadata:
+ name: trac-db
+spec:
+ persistentVolumeClaim:
+ claimName: trac-db
+ schedule:
+ - every: day
+ keep: 0
+---