Phase 1 creates an isolated Kubernetes namespace and deploys a simple HTTP application that can later be backed up and restored.
- A working Kubernetes cluster, such as AWS EKS or an existing local cluster
kubectlconfigured for the target cluster
Apply the base manifests:
kubectl apply -k deploy/baseCheck that the namespace, pods, and service were created:
kubectl get ns disaster-recovery-demo
kubectl get pods -n disaster-recovery-demo
kubectl get svc -n disaster-recovery-demoForward the service to your local machine:
kubectl port-forward svc/disaster-demo -n disaster-recovery-demo 8080:80In a second terminal, call the application:
curl localhost:8080Expected response:
disaster-demo version v1
- Namespace:
disaster-recovery-demo - Deployment:
disaster-demo - Service:
disaster-demo - Replicas:
2 - Service type:
ClusterIP
Live validation was completed against an EKS cluster on April 28, 2026.
- Confirmed the cluster was reachable with
kubectl get nodesandkubectl get ns. - Applied the Phase 1 application manifests with
kubectl apply -k deploy/base. - Verified the
disaster-recovery-demoPods and Service. - Port-forwarded
svc/disaster-demoand confirmed the app returneddisaster-demo version v1. - Installed Velero with the AWS plugin and S3 backup storage.
- Created
disaster-backupfor namespacedisaster-recovery-demo. - Confirmed the backup completed successfully with 0 errors and 0 warnings.
- Simulated failure by deleting namespace
disaster-recovery-demo. - Restored the namespace from
disaster-backup. - Verified Pods and Service were recreated.
- Port-forwarded the restored Service and confirmed the app returned
disaster-demo version v1.
- Cluster running
- Velero installed
- Backup created
- Namespace deleted
- Restore created
- Pods restored
- Application recovered
Raw command output for each screenshot is also stored in docs/evidence/*.txt.
Velero backed up 23 Kubernetes resources from disaster-recovery-demo into S3. After namespace deletion, Velero restored 10 resources, including the namespace, Deployment, Pods, Service, and ServiceAccount. The restored application became healthy and returned the expected response through the restored Service.
Backup duration reported by Velero: 2 seconds.
Restore duration reported by Velero: 2 seconds.
Final verdict: SUCCESS. Full recovery from namespace deletion was proven and verified.