Files
Sankofa/docs/proxmox/guides/QUICK_START.md
defiQUG a8106e24ee Remove obsolete audit and deployment documentation files
- Deleted outdated files related to repository audit and deployment status, including AUDIT_COMPLETE.md, AUDIT_FIXES_APPLIED.md, FINAL_DEPLOYMENT_STATUS.md, and others.
- Cleaned up documentation to streamline the repository and improve clarity for future maintenance.
- Updated README and other relevant documentation to reflect the removal of these files.
2025-12-12 19:42:31 -08:00

4.1 KiB

Proxmox Deployment - Quick Start Guide

Last Updated: 2024-12-19

Overview

This guide provides a quick path to deploy the Crossplane Proxmox provider and configure all components.

Prerequisites

  • Kubernetes cluster (kubectl configured)
  • Go 1.21+ (for building provider)
  • Cloudflare account (for DNS and tunnels)
  • Proxmox API credentials
  • Network access to Proxmox instances

Quick Deployment

# Run the quick deployment script
./scripts/quick-deploy.sh

This interactive script guides you through all deployment steps.

Option 2: Manual Step-by-Step

1. Test Connectivity

# Test Proxmox connectivity
./scripts/test-proxmox-connectivity.sh

# With credentials
export PROXMOX_TOKEN='user@realm!token-id=token-secret'
./scripts/test-proxmox-connectivity.sh

2. Configure DNS

# Set Cloudflare credentials
export CLOUDFLARE_ZONE_ID="your-zone-id"
export CLOUDFLARE_API_TOKEN="your-api-token"

# Create DNS records
./scripts/setup-dns-records.sh

3. Deploy Provider

# Build and deploy Crossplane provider
./scripts/deploy-crossplane-provider.sh

# Or skip build if already built
BUILD_PROVIDER=false ./scripts/deploy-crossplane-provider.sh

4. Create Credentials Secret

# Interactive secret creation
./scripts/create-proxmox-secret.sh

5. Apply ProviderConfig

# Apply provider configuration
kubectl apply -f crossplane-provider-proxmox/examples/provider-config.yaml

# Verify
./scripts/verify-provider-deployment.sh

6. Deploy Test VMs

# Deploy test VMs to both instances
./scripts/deploy-test-vms.sh

7. Setup Monitoring

# Configure Prometheus and Grafana
./scripts/setup-monitoring.sh

Verification

Check Provider Status

# Verify provider is running
kubectl get pods -n crossplane-system

# Check provider logs
kubectl logs -n crossplane-system -l app=crossplane-provider-proxmox

# Verify ProviderConfig
kubectl get providerconfig proxmox-provider-config

Check VM Status

# List all VMs
kubectl get proxmoxvm

# Get VM details
kubectl describe proxmoxvm <vm-name>

# Check VM status
kubectl get proxmoxvm <vm-name> -o yaml

Test Connectivity

# Test Proxmox API access
curl -k -H "Authorization: PVEAPIToken <token>" \
  https://ml110-01.sankofa.nexus:8006/api2/json/version

curl -k -H "Authorization: PVEAPIToken <token>" \
  https://r630-01.sankofa.nexus:8006/api2/json/version

Troubleshooting

Provider Not Starting

# Check provider logs
kubectl logs -n crossplane-system -l app=crossplane-provider-proxmox

# Check CRDs
kubectl get crd | grep proxmox

# Verify ProviderConfig
kubectl describe providerconfig proxmox-provider-config

VM Creation Failing

# Check VM resource status
kubectl describe proxmoxvm <vm-name>

# Check provider logs for errors
kubectl logs -n crossplane-system -l app=crossplane-provider-proxmox | grep -i error

# Verify credentials secret
kubectl get secret proxmox-credentials -n crossplane-system -o yaml

DNS Not Resolving

# Test DNS resolution
dig ml110-01.sankofa.nexus
dig r630-01.sankofa.nexus

# Check /etc/hosts if using local resolution
cat /etc/hosts | grep sankofa.nexus

Common Commands

# View all Proxmox resources
kubectl get proxmoxvm,proxmoxvmscaleset,providerconfig

# Delete a VM
kubectl delete proxmoxvm <vm-name>

# Update ProviderConfig
kubectl apply -f crossplane-provider-proxmox/examples/provider-config.yaml

# Restart provider
kubectl rollout restart deployment/crossplane-provider-proxmox -n crossplane-system

Next Steps

  1. Deploy Production VMs: Create VM manifests for production workloads
  2. Configure Monitoring: Set up alerts and dashboards
  3. Set Up Backups: Configure automated VM backups
  4. Security Hardening: Review and implement security best practices