# Environment Configuration Template # Copy this file to .env and update with your actual values # ================================ # HETZNER CONFIGURATION # ================================ # Hetzner Cloud API Token (get from Hetzner Cloud Console) HCLOUD_TOKEN=your_hcloud_token_here # Hetzner Robot API credentials (for dedicated servers) ROBOT_API_USER=your_robot_username ROBOT_API_PASSWORD=your_robot_password # ================================ # SSH CONFIGURATION # ================================ # SSH public key content (paste the full key) SSH_PUBLIC_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7... your-email@domain.com" # Path to SSH private key SSH_PRIVATE_KEY_PATH=~/.ssh/hetzner_key # SSH key name in Hetzner Cloud SSH_KEY_NAME=ai-infrastructure # ================================ # DOMAIN CONFIGURATION # ================================ # Domain for API endpoint (optional, can use IP) API_DOMAIN=api.yourdomain.com # Domain for monitoring dashboard (optional) MONITORING_DOMAIN=monitoring.yourdomain.com # ================================ # ENVIRONMENT SETTINGS # ================================ # Deployment environment (dev, staging, production) ENVIRONMENT=production # Project name for resource tagging PROJECT_NAME=ai-infrastructure # Cost center for billing tracking COST_CENTER=engineering # ================================ # SECURITY CONFIGURATION # ================================ # Grafana admin password (change this!) GRAFANA_ADMIN_PASSWORD=change_this_secure_password # Ansible Vault password (change this!) ANSIBLE_VAULT_PASSWORD=change_this_vault_password # Allowed IP ranges for SSH access (comma-separated CIDR blocks) # Use 0.0.0.0/0 for testing only, restrict in production ALLOWED_SSH_CIDRS=203.0.113.0/24,198.51.100.0/24 # ================================ # GITLAB CI/CD CONFIGURATION # ================================ # GitLab personal access token (for CI/CD) GITLAB_TOKEN=your_gitlab_token_here # GitLab project URL for ansible-pull ANSIBLE_REPO_URL=https://gitlab.com/yourorg/ai-infrastructure.git # GitLab deploy token (for repository access) GITLAB_DEPLOY_TOKEN=your_deploy_token # ================================ # AUTO-SCALING CONFIGURATION # ================================ # Minimum number of GEX44 servers MIN_GEX44_COUNT=1 # Maximum number of GEX44 servers MAX_GEX44_COUNT=5 # GPU utilization threshold for scaling up (0.0-1.0) SCALE_UP_THRESHOLD=0.8 # GPU utilization threshold for scaling down (0.0-1.0) SCALE_DOWN_THRESHOLD=0.3 # ================================ # MODEL CONFIGURATION # ================================ # Default model to deploy DEFAULT_MODEL=mixtral-8x7b # Models to download and cache MODELS_TO_DOWNLOAD=mixtral-8x7b,llama2-70b,codellama-34b # HuggingFace token (for private models, optional) HUGGINGFACE_TOKEN=your_hf_token # ================================ # MONITORING CONFIGURATION # ================================ # Prometheus data retention period PROMETHEUS_RETENTION=30d # Grafana data retention period GRAFANA_RETENTION=90d # Alert email address ALERT_EMAIL=alerts@yourdomain.com # Slack webhook URL for alerts (optional) SLACK_WEBHOOK_URL=https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX # ================================ # BACKUP CONFIGURATION # ================================ # Enable automated backups BACKUP_ENABLED=true # Backup retention period (days) BACKUP_RETENTION_DAYS=7 # Backup storage location (S3 bucket, etc.) BACKUP_STORAGE_URL=s3://your-backup-bucket/ai-infrastructure # ================================ # PERFORMANCE TUNING # ================================ # Load balancer server type LOAD_BALANCER_TYPE=cx31 # API Gateway server type API_GATEWAY_TYPE=cx31 # Monitoring server type MONITORING_TYPE=cx21 # Additional storage size (GB) ADDITIONAL_STORAGE_SIZE=500 # ================================ # DEVELOPMENT/TESTING # ================================ # API URL for testing (set automatically in CI/CD) API_URL=https://api.yourdomain.com # Enable development tools DEV_TOOLS_ENABLED=false # Skip SSL verification for testing SKIP_SSL_VERIFY=false # ================================ # COST TRACKING # ================================ # Currency for cost reporting COST_CURRENCY=EUR # Cost tracking tags COST_TAGS=project:ai-infrastructure,team:engineering,environment:production # Budget alert threshold (monthly EUR) BUDGET_ALERT_THRESHOLD=1000 # ================================ # ADVANCED CONFIGURATION # ================================ # Enable cloud load balancer (alternative to HAProxy) ENABLE_CLOUD_LB=false # Enable floating IP for HA ENABLE_FLOATING_IP=false # Enable advanced monitoring ENABLE_ADVANCED_MONITORING=true # Network zone NETWORK_ZONE=eu-central # Private network CIDR PRIVATE_NETWORK_CIDR=10.0.0.0/16 # GEX44 subnet GEX44_SUBNET=10.0.1.0/24 # Cloud subnet CLOUD_SUBNET=10.0.2.0/24 # ================================ # TERRAFORM BACKEND # ================================ # Terraform state backend type (gitlab, s3, local) TF_BACKEND_TYPE=gitlab # S3 backend configuration (if using S3) TF_STATE_BUCKET=your-terraform-state-bucket TF_STATE_REGION=eu-central-1 # GitLab backend configuration (if using GitLab) TF_GITLAB_PROJECT_ID=12345 # ================================ # LOGGING CONFIGURATION # ================================ # Log level (DEBUG, INFO, WARNING, ERROR) LOG_LEVEL=INFO # Centralized logging (optional) LOG_AGGREGATION_URL=https://logs.yourdomain.com # Log retention period (days) LOG_RETENTION_DAYS=30