First commit
This commit is contained in:
1
manifest/05-postgres/.gitignore
vendored
Normal file
1
manifest/05-postgres/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
secret.yml
|
||||
9
manifest/05-postgres/backup.yml
Normal file
9
manifest/05-postgres/backup.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
apiVersion: postgresql.cnpg.io/v1
|
||||
kind: ScheduledBackup
|
||||
metadata:
|
||||
name: daily-backup
|
||||
spec:
|
||||
schedule: "0 * * * * *"
|
||||
backupOwnerReference: self
|
||||
cluster:
|
||||
name: cnpg-cluster
|
||||
45
manifest/05-postgres/cnpg.yml
Normal file
45
manifest/05-postgres/cnpg.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
apiVersion: postgresql.cnpg.io/v1
|
||||
kind: Cluster
|
||||
metadata:
|
||||
name: cnpg-cluster
|
||||
spec:
|
||||
instances: 3
|
||||
bootstrap:
|
||||
initdb:
|
||||
database: app
|
||||
owner: app
|
||||
secret:
|
||||
name: cnpg-secret
|
||||
storage:
|
||||
pvcTemplate:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
storageClassName: cnpg-storage
|
||||
affinity:
|
||||
enablePodAntiAffinity: true
|
||||
topologyKey: kubernetes.io/hostname
|
||||
podAntiAffinityType: required
|
||||
backup:
|
||||
retentionPolicy: "7d"
|
||||
barmanObjectStore:
|
||||
destinationPath: "s3://backups/"
|
||||
endpointURL: "https://minio-api.skrd.fun"
|
||||
s3Credentials:
|
||||
accessKeyId:
|
||||
name: aws-creds
|
||||
key: ACCESS_KEY
|
||||
secretAccessKey:
|
||||
name: aws-creds
|
||||
key: SECRET_KEY
|
||||
managed:
|
||||
services:
|
||||
additional:
|
||||
- selectorType: rw
|
||||
serviceTemplate:
|
||||
metadata:
|
||||
name: "cnpg-cluster-open"
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
10
manifest/05-postgres/operator.yml
Normal file
10
manifest/05-postgres/operator.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
apiVersion: helm.cattle.io/v1
|
||||
kind: HelmChart
|
||||
metadata:
|
||||
name: postgres
|
||||
namespace: kube-system
|
||||
spec:
|
||||
repo: https://cloudnative-pg.github.io/charts
|
||||
chart: cloudnative-pg
|
||||
targetNamespace: cnpg-system
|
||||
createNamespace: true
|
||||
17
manifest/05-postgres/secret.yml.example
Normal file
17
manifest/05-postgres/secret.yml.example
Normal file
@@ -0,0 +1,17 @@
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: cnpg-secret
|
||||
stringData:
|
||||
username: EXAMPLE
|
||||
password: EXAMPLE
|
||||
type: kubernetes.io/basic-auth
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: aws-creds
|
||||
type: Opaque
|
||||
stringData:
|
||||
ACCESS_KEY: EXAMPLE
|
||||
SECRET_KEY: EXAMPLE
|
||||
11
manifest/05-postgres/settings.yml
Normal file
11
manifest/05-postgres/settings.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
apiVersion: storage.k8s.io/v1
|
||||
kind: StorageClass
|
||||
metadata:
|
||||
name: cnpg-storage
|
||||
provisioner: driver.longhorn.io
|
||||
allowVolumeExpansion: true
|
||||
parameters:
|
||||
numberOfReplicas: "1"
|
||||
dataLocality: "strict-local"
|
||||
staleReplicaTimeout: "2880"
|
||||
---
|
||||
Reference in New Issue
Block a user