132 lines
2.7 KiB
Markdown
132 lines
2.7 KiB
Markdown
|
|
# Infrastructure Management Quick Start
|
||
|
|
|
||
|
|
Quick reference guide for managing infrastructure in Sankofa Phoenix.
|
||
|
|
|
||
|
|
## Quick Commands
|
||
|
|
|
||
|
|
### Proxmox Management
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Check cluster health
|
||
|
|
cd infrastructure/proxmox
|
||
|
|
./scripts/cluster-health.sh --site us-east-1
|
||
|
|
|
||
|
|
# Setup Proxmox site
|
||
|
|
cd ../../scripts
|
||
|
|
./setup-proxmox-agents.sh --site us-east-1 --node pve1
|
||
|
|
```
|
||
|
|
|
||
|
|
### Omada Management
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Setup Omada Controller
|
||
|
|
cd infrastructure/omada
|
||
|
|
export OMADA_CONTROLLER=omada.sankofa.nexus
|
||
|
|
export OMADA_PASSWORD=your-password
|
||
|
|
./scripts/setup-controller.sh
|
||
|
|
|
||
|
|
# Discover access points
|
||
|
|
./scripts/discover-aps.sh --site us-east-1
|
||
|
|
```
|
||
|
|
|
||
|
|
### Infrastructure Discovery
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Discover all infrastructure for a site
|
||
|
|
cd infrastructure/inventory
|
||
|
|
export SITE=us-east-1
|
||
|
|
./discovery/discover-all.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
### Using the Omada API Client
|
||
|
|
|
||
|
|
```python
|
||
|
|
from infrastructure.omada.api.omada_client import OmadaController
|
||
|
|
|
||
|
|
# Initialize and authenticate
|
||
|
|
controller = OmadaController(
|
||
|
|
host="omada.sankofa.nexus",
|
||
|
|
username="admin",
|
||
|
|
password="secure-password"
|
||
|
|
)
|
||
|
|
controller.login()
|
||
|
|
|
||
|
|
# Get sites and access points
|
||
|
|
sites = controller.get_sites()
|
||
|
|
aps = controller.get_access_points(sites[0]["id"])
|
||
|
|
|
||
|
|
controller.logout()
|
||
|
|
```
|
||
|
|
|
||
|
|
## Configuration
|
||
|
|
|
||
|
|
### Environment Variables
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Proxmox
|
||
|
|
export PROXMOX_API_URL=https://pve1.sankofa.nexus:8006
|
||
|
|
export PROXMOX_API_TOKEN=root@pam!token-name=abc123
|
||
|
|
|
||
|
|
# Omada
|
||
|
|
export OMADA_CONTROLLER=omada.sankofa.nexus
|
||
|
|
export OMADA_ADMIN=admin
|
||
|
|
export OMADA_PASSWORD=secure-password
|
||
|
|
|
||
|
|
# Site
|
||
|
|
export SITE=us-east-1
|
||
|
|
```
|
||
|
|
|
||
|
|
## Integration Points
|
||
|
|
|
||
|
|
### Crossplane Provider
|
||
|
|
|
||
|
|
The Proxmox Crossplane provider is located at:
|
||
|
|
- `crossplane-provider-proxmox/`
|
||
|
|
|
||
|
|
Use Kubernetes manifests to manage Proxmox resources:
|
||
|
|
|
||
|
|
```yaml
|
||
|
|
apiVersion: proxmox.sankofa.nexus/v1alpha1
|
||
|
|
kind: ProxmoxVM
|
||
|
|
metadata:
|
||
|
|
name: web-server-01
|
||
|
|
spec:
|
||
|
|
forProvider:
|
||
|
|
node: pve1
|
||
|
|
name: web-server-01
|
||
|
|
cpu: 4
|
||
|
|
memory: 8Gi
|
||
|
|
disk: 100Gi
|
||
|
|
site: us-east-1
|
||
|
|
```
|
||
|
|
|
||
|
|
### GitOps
|
||
|
|
|
||
|
|
Infrastructure definitions are in:
|
||
|
|
- `gitops/infrastructure/`
|
||
|
|
|
||
|
|
### Portal Integration
|
||
|
|
|
||
|
|
The Portal UI provides infrastructure management at:
|
||
|
|
- `/infrastructure` - Infrastructure overview
|
||
|
|
- `/infrastructure/proxmox` - Proxmox management
|
||
|
|
- `/infrastructure/omada` - Omada management
|
||
|
|
|
||
|
|
## Next Steps
|
||
|
|
|
||
|
|
1. **Configure Sites**: Set up site-specific configurations
|
||
|
|
2. **Deploy Monitoring**: Install Prometheus exporters
|
||
|
|
3. **Setup Inventory**: Initialize inventory database
|
||
|
|
4. **Configure Alerts**: Set up alerting rules
|
||
|
|
5. **Integrate with Portal**: Connect infrastructure management to Portal UI
|
||
|
|
|
||
|
|
## Related Documentation
|
||
|
|
|
||
|
|
- [Infrastructure Management README](./README.md)
|
||
|
|
- [Proxmox Management](./proxmox/README.md)
|
||
|
|
- [Omada Management](./omada/README.md)
|
||
|
|
- [Network Management](./network/README.md)
|
||
|
|
- [Monitoring](./monitoring/README.md)
|
||
|
|
- [Inventory](./inventory/README.md)
|
||
|
|
|