🚀 NEW: Quick Start Guide - Deploy in 15-30 minutes Choose your path: OpenShift (15 min) | RHEL with TPA (20 min) | Local CRC (30 min)
📚 Complete Documentation Index - Navigate all documentation by topic, deployment type, or audience
This repository provides a complete solution for deploying Ansible Automation Platform (AAP) with EnterpriseDB PostgreSQL in a multi-datacenter Active/Passive configuration. The architecture achieves near-HA with automatic failover within datacenters and orchestrated failover across datacenters.
Key Features:
- ✅ Multi-datacenter HA/DR - Active-Passive across two datacenters
- ✅ Automatic failover - In-datacenter failover <1 minute
- ✅ PostgreSQL replication - Physical streaming + WAL archiving
- ✅ AAP orchestration - Automated scaling during failover
- ✅ Comprehensive testing - Automated DR testing framework
- ✅ Production-ready - Security, monitoring, backup strategies
Target RTO/RPO:
- In-datacenter failover: RTO (Recovery Time Objective) <1 minute, RPO (Recovery Point Objective) <5 seconds
- Cross-datacenter failover: RTO <5 minutes, RPO <5 seconds
Before getting started, ensure you have:
- Platform: OpenShift 4.12+ OR RHEL 8+ with root access
- Database: EnterpriseDB subscription for EDB Postgres Advanced Server
- Storage: S3-compatible storage for WAL archiving and backups
- Network: Network connectivity between datacenters (for replication)
- Tools:
ocorkubectlCLI tools installed
📋 See detailed requirements in the Quick Start Guide
- 🚀 Quick Start Guide - Deploy in 15-30 minutes
- 📚 Documentation Index - Complete documentation organized by topic
- 🏗️ Architecture Details - Comprehensive architecture documentation
- OpenShift Deployment - Operator-based deployment
- RHEL with TPA - Automated deployment with Trusted Postgres Architect
- Database Deploy (Kustomize) - GitOps-friendly manifests
- AAP Deploy (Kustomize) - AAP operator deployment
- Operations Runbook - Day-to-day operational procedures
- Scripts Reference - All automation scripts documented
- DR Testing Guide - Complete DR testing framework
- Troubleshooting - Common issues and solutions
- Contributing Guide - How to contribute to this project
- License - Apache 2.0 License
📁 Click to expand repository structure
EDB_Testing/
├── aap-deploy/ # AAP deployment manifests
│ ├── openshift/ # OpenShift manifests
│ └── edb-bootstrap/ # Database initialization
├── db-deploy/ # PostgreSQL deployment manifests
│ ├── operator/ # CloudNativePG operator
│ ├── sample-cluster/ # Base cluster manifests
│ └── cross-cluster/ # DC1→DC2 replication
├── docs/ # Comprehensive documentation
│ ├── INDEX.md # Documentation index
│ ├── quick-start-guide.md # 15-30 min deployment guide
│ ├── architecture.md # Architecture details
│ └── ... # Additional guides
├── scripts/ # Operational automation scripts
│ ├── lib/ # Shared libraries (logging, scaling)
│ ├── scale-aap-*.sh # AAP scaling scripts
│ ├── dr-*.sh # DR orchestration
│ └── validate-*.sh # Validation scripts
├── openshift/ # OpenShift-specific resources
│ └── dr-testing/ # DR testing CronJob
└── .github/ # CI/CD workflows
└── workflows/ # GitHub Actions
See complete structure in the documentation index.