Test restore
This commit is contained in:
parent
077a54079f
commit
04c6a55b1a
84
test/03-setup-restore.yaml
Normal file
84
test/03-setup-restore.yaml
Normal file
@ -0,0 +1,84 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: restore-demo
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
namespace: restore-demo
|
||||
name: demo-chap-secret
|
||||
type: "kubernetes.io/iscsi-chap"
|
||||
data:
|
||||
discovery.sendtargets.auth.username: ZGVtbw==
|
||||
discovery.sendtargets.auth.password: VHJtK1lZaXZvMUNZSGszcGFGVWMrcTdCMmdJPQo=
|
||||
node.session.auth.username: ZGVtbw==
|
||||
node.session.auth.password: VHJtK1lZaXZvMUNZSGszcGFGVWMrcTdCMmdJPQo=
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: restore-demo-pv
|
||||
namespace: restore-demo
|
||||
spec:
|
||||
storageClassName: manual
|
||||
capacity:
|
||||
storage: 50Mi
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
iscsi:
|
||||
targetPortal: 192.168.1.159
|
||||
iqn: iqn.2020-08.raid5:restore-demo
|
||||
lun: 1
|
||||
fsType: ext4
|
||||
readOnly: false
|
||||
chapAuthDiscovery: true
|
||||
chapAuthSession: true
|
||||
secretRef:
|
||||
name: demo-chap-secret
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: restore-demo-pvc
|
||||
namespace: restore-demo
|
||||
spec:
|
||||
storageClassName: manual
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 50Mi
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: secret-minio
|
||||
namespace: restore-demo
|
||||
data:
|
||||
RESTIC_PASSWORD: bHIyOXhtOTU=
|
||||
AWS_ACCESS_KEY_ID: OWFTSXZBSEVzWlNVMmkyTU9zVGxWSk1lL1NjPQ==
|
||||
AWS_SECRET_ACCESS_KEY: WVN5ck9ncVllcjBWNFNLdlVOcmx2OGhjTllhZGZuN2xaNjBIaXRlL3djWT0=
|
||||
---
|
||||
apiVersion: formol.desmojim.fr/v1alpha1
|
||||
kind: Repo
|
||||
metadata:
|
||||
name: repo-minio
|
||||
namespace: restore-demo
|
||||
spec:
|
||||
backend:
|
||||
s3:
|
||||
server: raid5.desmojim.fr:9000
|
||||
bucket: testbucket2
|
||||
repositorySecrets: secret-minio
|
||||
---
|
||||
apiVersion: formol.desmojim.fr/v1alpha1
|
||||
kind: Function
|
||||
metadata:
|
||||
name: restore-pg
|
||||
namespace: restore-demo
|
||||
spec:
|
||||
name: backup-pg
|
||||
image: desmo999r/formolcli:latest
|
||||
args: ["postgres", "restore", "--hostname", $(PGHOST), "--database", $(PGDATABASE), "--username", $(PGUSER), "--password", $(PGPASSWD), "--file", "/output/backup-pg.sql"]
|
||||
88
test/04-restore-deployment.yaml
Normal file
88
test/04-restore-deployment.yaml
Normal file
@ -0,0 +1,88 @@
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: nginx-deployment
|
||||
namespace: restore-demo
|
||||
labels:
|
||||
app: nginx
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx:1.14.2
|
||||
ports:
|
||||
- containerPort: 80
|
||||
volumeMounts:
|
||||
- name: demo-data
|
||||
mountPath: /data
|
||||
volumes:
|
||||
- name: demo-data
|
||||
persistentVolumeClaim:
|
||||
claimName: restore-demo-pvc
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: postgres-config-demo
|
||||
namespace: restore-demo
|
||||
labels:
|
||||
app: postgres
|
||||
data:
|
||||
POSTGRES_DB: demopostgres
|
||||
POSTGRES_USER: demopostgres
|
||||
POSTGRES_PASSWORD: password123!
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: postgres
|
||||
namespace: restore-demo
|
||||
labels:
|
||||
app: postgres
|
||||
spec:
|
||||
ports:
|
||||
- port: 5432
|
||||
name: postgres
|
||||
clusterIP: None
|
||||
selector:
|
||||
app: postgres
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: postgres-demo
|
||||
namespace: restore-demo
|
||||
spec:
|
||||
serviceName: "postgres"
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: postgres
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: postgres
|
||||
spec:
|
||||
containers:
|
||||
- name: postgres
|
||||
image: postgres:12
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: postgres-config-demo
|
||||
ports:
|
||||
- containerPort: 5432
|
||||
name: postgredb
|
||||
volumeMounts:
|
||||
- name: postgredb
|
||||
mountPath: /var/lib/postgresql/data
|
||||
volumes:
|
||||
- name: postgredb
|
||||
39
test/05-backupconf.yaml
Normal file
39
test/05-backupconf.yaml
Normal file
@ -0,0 +1,39 @@
|
||||
---
|
||||
apiVersion: formol.desmojim.fr/v1alpha1
|
||||
kind: BackupConfiguration
|
||||
metadata:
|
||||
name: backup-demo
|
||||
namespace: restore-demo
|
||||
spec:
|
||||
repository:
|
||||
name: repo-minio
|
||||
schedule: "1 * * * *"
|
||||
targets:
|
||||
- kind: Deployment
|
||||
apiVersion: v1
|
||||
name: nginx-deployment
|
||||
volumeMounts:
|
||||
- name: demo-data
|
||||
mountPath: /data
|
||||
paths:
|
||||
- /data
|
||||
- kind: Task
|
||||
name: backup-pg
|
||||
steps:
|
||||
- name: backup-pg
|
||||
namespace: demo
|
||||
env:
|
||||
- name: PGHOST
|
||||
value: postgres
|
||||
- name: PGDATABASE
|
||||
value: demopostgres
|
||||
- name: PGUSER
|
||||
value: demopostgres
|
||||
- name: PGPASSWD
|
||||
value: password123!
|
||||
keep:
|
||||
last: 5
|
||||
daily: 2
|
||||
weekly: 2
|
||||
monthly: 6
|
||||
yearly: 3
|
||||
10
test/06-restoresession.yaml
Normal file
10
test/06-restoresession.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
apiVersion: formol.desmojim.fr/v1alpha1
|
||||
kind: RestoreSession
|
||||
metadata:
|
||||
namespace: restore-demo
|
||||
name: restore-demo
|
||||
spec:
|
||||
backupSessionRef:
|
||||
namespace: demo
|
||||
name: backupsession-backup-demo-1612734804
|
||||
# name: backupsession-backup-demo-1612713316
|
||||
Loading…
Reference in New Issue
Block a user