Initial Phoenix Sankofa Cloud setup
- Complete project structure with Next.js frontend - GraphQL API backend with Apollo Server - Portal application with NextAuth - Crossplane Proxmox provider - GitOps configurations - CI/CD pipelines - Testing infrastructure (Vitest, Jest, Go tests) - Error handling and monitoring - Security hardening - UI component library - Documentation
This commit is contained in:
100
scripts/README.md
Normal file
100
scripts/README.md
Normal file
@@ -0,0 +1,100 @@
|
||||
# Installation Scripts
|
||||
|
||||
Automated installation scripts for deploying the hybrid cloud control plane.
|
||||
|
||||
## Structure
|
||||
|
||||
```
|
||||
scripts/
|
||||
├── bootstrap-cluster.sh # Kubernetes cluster bootstrap
|
||||
├── install-components.sh # Control plane components installation
|
||||
├── setup-proxmox-agents.sh # Proxmox site agent setup
|
||||
├── configure-cloudflare.sh # Cloudflare tunnel configuration
|
||||
├── validate.sh # Post-install validation
|
||||
└── ansible/ # Ansible playbooks
|
||||
├── site-playbook.yml # Multi-site deployment
|
||||
├── inventory.example # Inventory template
|
||||
└── roles/ # Ansible roles
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
### Quick Start
|
||||
|
||||
```bash
|
||||
# 1. Bootstrap Kubernetes cluster
|
||||
./bootstrap-cluster.sh
|
||||
|
||||
# 2. Install control plane components
|
||||
./install-components.sh
|
||||
|
||||
# 3. Setup Proxmox agents (run on each Proxmox node)
|
||||
./setup-proxmox-agents.sh --site us-east-1 --node pve1
|
||||
|
||||
# 4. Configure Cloudflare tunnels
|
||||
./configure-cloudflare.sh
|
||||
|
||||
# 5. Validate installation
|
||||
./validate.sh
|
||||
```
|
||||
|
||||
### Ansible Deployment
|
||||
|
||||
For multi-site deployments, use Ansible:
|
||||
|
||||
```bash
|
||||
cd ansible
|
||||
cp inventory.example inventory
|
||||
# Edit inventory with your hosts
|
||||
ansible-playbook -i inventory site-playbook.yml
|
||||
```
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Linux-based systems (Ubuntu 22.04+, RHEL 8+, Debian 11+)
|
||||
- Root or sudo access
|
||||
- Internet connectivity
|
||||
- Kubernetes cluster (for component installation)
|
||||
- Proxmox VE 8+ (for agent setup)
|
||||
- Cloudflare account (for tunnel configuration)
|
||||
|
||||
## Script Details
|
||||
|
||||
### bootstrap-cluster.sh
|
||||
Installs and configures Kubernetes cluster (RKE2 or k3s):
|
||||
- System preparation
|
||||
- Container runtime installation
|
||||
- Kubernetes installation
|
||||
- Network plugin configuration
|
||||
- Storage class setup
|
||||
|
||||
### install-components.sh
|
||||
Installs all control plane components:
|
||||
- ArgoCD
|
||||
- Rancher
|
||||
- Crossplane
|
||||
- Vault
|
||||
- Monitoring stack
|
||||
- Portal
|
||||
|
||||
### setup-proxmox-agents.sh
|
||||
Configures Proxmox nodes:
|
||||
- cloudflared installation
|
||||
- Prometheus exporter installation
|
||||
- Custom agent installation
|
||||
- Service configuration
|
||||
|
||||
### configure-cloudflare.sh
|
||||
Sets up Cloudflare tunnels:
|
||||
- Tunnel creation
|
||||
- Configuration deployment
|
||||
- Service startup
|
||||
- Health checks
|
||||
|
||||
### validate.sh
|
||||
Validates installation:
|
||||
- Component health checks
|
||||
- API connectivity tests
|
||||
- Resource availability
|
||||
- Network connectivity
|
||||
|
||||
Reference in New Issue
Block a user