Skip to content

Commit

Permalink
Guide Review Meeting Edits 1
Browse files Browse the repository at this point in the history
  • Loading branch information
jkitchens32 committed Aug 31, 2023
1 parent 3451d60 commit d2ccf93
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 32 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,13 @@ Implementing EDB Postgres for Kubernetes with Veeam Kasten requires the followin
- EDB Postgres for Kubernetes external backup adapter configured per your system requirements
- Veeam Kasten K10 installed on your system

!!! Note
The following steps will walk through a sample deployment from start to finish. You may already have some of these steps implemented in your environment, and if so you can skip that particular step.
The **Add the Backup Decorator Annotations to the Cluster** section is the important section for the Kasten addon integration.

## Install the Operator

If you already have the EDB operator installed on Kubernetes you may skip this step.
1. Install the EDB Postgres for Kubernetes operator.

```bash
kubectl apply -f https://get.enterprisedb.io/cnp/postgresql-operator-1.20.2.yaml
Expand All @@ -28,14 +31,36 @@ Running this command will create the operator namespace where the controller wil

## Create an EDB Cluster, Client and Add Data

If, in your environment, you already have an EDB cluster configured you may skip this step.

1. Initiate the below lines of code in your Kubernetes environment.
1. Initiate the below lines of code in your Kubernetes environment to create a specific namespace and apply your .yaml file.

```bash
kubctl create ns edb
kubectl apply -f cluster-example.yaml -n edb
```

###Example **cluster-example.yaml** file:

```bash
# Example of PostgreSQL cluster
apiVersion: postgresql.k8s.enterprisedb.io/v1
kind: Cluster
metadata:
name: cluster-example
annotations:
"k8s.enterprisedb.io/addons": '["kasten"]'
spec:
instances: 3
# Example of rolling update strategy:
# - unsupervised: automated update of the primary once all
# replicas have been upgraded (default)
# - supervised: requires manual supervision to perform
# the switchover of the primary
primaryUpdateStrategy: unsupervised
# Require 1Gi of space
storage:
size: 1Gi
```

2. Wait until the cluster is completely ready.

```bash
Expand All @@ -44,7 +69,7 @@ NAME AGE INSTANCES READY STATUS PRIMARY
cluster-example 19m 3 3 Cluster in healthy state cluster-example-1
```

3. Install the cnp plugin, if you have already installed this you may skip this.
3. Install the cnp plugin.

```bash
curl -sSfL \
Expand All @@ -61,29 +86,6 @@ kubectl cnp certificate cluster-app \
-n edb
```

**cluster-example.yaml** Example:

```bash
# Example of PostgreSQL cluster
apiVersion: postgresql.k8s.enterprisedb.io/v1
kind: Cluster
metadata:
name: cluster-example
annotations:
"k8s.enterprisedb.io/addons": '["kasten"]'
spec:
instances: 3
# Example of rolling update strategy:
# - unsupervised: automated update of the primary once all
# replicas have been upgraded (default)
# - supervised: requires manual supervision to perform
# the switchover of the primary
primaryUpdateStrategy: unsupervised
# Require 1Gi of space
storage:
size: 1Gi
```

5. Create the client.

```bash
Expand Down Expand Up @@ -143,7 +145,7 @@ spec:
defaultMode: 0600
```

6. Add some data.
6. Add some data into the cluster to test the backup and restore, the following is sample data that was used for this example.

```bash
kubectl exec -it deploy/cert-test -- bash
Expand Down Expand Up @@ -257,7 +259,9 @@ actions:
```
## Create a Backup Policy with the EDB hooks
1. Create a policy for the EDB namespace, you will need to set up a location profile for the export and kanister actions.
1. Launch your Kasten K10 interface.
2. Create a policy for the EDB namespace, you will need to set up a location profile for the export and kanister actions.
Add the hooks example:
![Kasten Backup Policy with EDB Hooks](Images/KastenBackupPolicywithHooks.png)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ When you have configured your Kubernetes environment per the `Configuring` secti

## Launch a Backup

1. Use Veeam Kasten K10 launch a backup that creates two restore points, a local and a remote.
1. Launch your Kasten K10 interface.

2. Use Veeam Kasten K10 launch a backup that creates two restore points, a local and a remote.

!!! Note
The Veeam backup process is explained below:
Expand All @@ -20,7 +22,7 @@ When you have configured your Kubernetes environment per the `Configuring` secti
7. The replica leaves the backup mode.
8. The backup is then over and is consistent for a restore.

2. Delete the namespace `EDB`.
3. To get ready for a Kasten K10 to complete a restore, this example deleted the namespace `EDB`.

```bash
kubectl delete ns edb
Expand Down

0 comments on commit d2ccf93

Please sign in to comment.