Files
Sankofa/docs/VM_DEPLOYMENT_CHECKLIST.md
defiQUG 9daf1fd378 Apply Composer changes: comprehensive API updates, migrations, middleware, and infrastructure improvements
- Add comprehensive database migrations (001-024) for schema evolution
- Enhance API schema with expanded type definitions and resolvers
- Add new middleware: audit logging, rate limiting, MFA enforcement, security, tenant auth
- Implement new services: AI optimization, billing, blockchain, compliance, marketplace
- Add adapter layer for cloud integrations (Cloudflare, Kubernetes, Proxmox, storage)
- Update Crossplane provider with enhanced VM management capabilities
- Add comprehensive test suite for API endpoints and services
- Update frontend components with improved GraphQL subscriptions and real-time updates
- Enhance security configurations and headers (CSP, CORS, etc.)
- Update documentation and configuration files
- Add new CI/CD workflows and validation scripts
- Implement design system improvements and UI enhancements
2025-12-12 18:01:35 -08:00

2.8 KiB

VM Deployment Checklist

Pre-Deployment Checklist

1. Configuration Validation

  • Run validation script
    ./scripts/validate-and-optimize-vms.sh
    
  • Fix any errors reported
  • Review warnings (may be acceptable)

2. Quota Verification

  • Check tenant quota (if applicable)
    ./scripts/pre-deployment-quota-check.sh <vm-file>
    
  • Verify Proxmox resources
    ./scripts/check-proxmox-quota-ssh.sh
    
  • Ensure sufficient resources available

3. Image Verification

  • Verify image exists on Proxmox storage
  • Confirm image name matches specification
  • Check image is accessible on target node

4. Network Configuration

  • Verify network bridge exists
  • Check IP address availability
  • Confirm DNS configuration

5. Storage Verification

  • Verify storage pool exists
  • Check storage pool has sufficient space
  • Confirm storage pool supports VM disks

Deployment Steps

Step 1: Validate

./scripts/validate-and-optimize-vms.sh examples/production/phoenix/dns-primary.yaml

Step 2: Check Quota

./scripts/pre-deployment-quota-check.sh examples/production/phoenix/dns-primary.yaml

Step 3: Deploy

kubectl apply -f examples/production/phoenix/dns-primary.yaml

Step 4: Monitor

kubectl get proxmoxvm -w
kubectl describe proxmoxvm phoenix-dns-primary

Step 5: Verify

# Check VM status
kubectl get proxmoxvm phoenix-dns-primary

# Check VM details
kubectl describe proxmoxvm phoenix-dns-primary

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

Post-Deployment Verification

VM Status

  • VM is in "running" state
  • VM has assigned IP address
  • QEMU guest agent is active

Service Verification

  • Required services are running
  • Packages are installed
  • Configuration is correct

Connectivity

  • SSH access works
  • Network connectivity verified
  • DNS resolution works (if applicable)

Troubleshooting

Quota Check Fails

  1. Check current quota usage
  2. Reduce resource requirements
  3. Request quota increase
  4. Use different tenant

VM Creation Fails

  1. Check controller logs
  2. Verify Proxmox connectivity
  3. Check resource availability
  4. Verify image exists

Guest Agent Not Starting

  1. Check VM logs
  2. Verify package installation
  3. Check systemd status
  4. Review cloud-init logs

Quick Reference

Validation

./scripts/validate-and-optimize-vms.sh

Quota Check

./scripts/pre-deployment-quota-check.sh

Proxmox Resources

./scripts/check-proxmox-quota-ssh.sh

Deploy VM

kubectl apply -f <vm-file>

Check Status

kubectl get proxmoxvm -A

Last Updated: 2025-12-08