# VM Deployment Quickstart ## Prerequisites - Azure CLI installed and configured - Terraform >= 1.0 - SSH key pair - Azure subscription ## Quick Deployment ### 1. Configure Variables ```bash # Copy example file cp terraform/terraform.tfvars.vm.example terraform/terraform.tfvars.vm # Edit with your values export SSH_PUBLIC_KEY=$(cat ~/.ssh/id_rsa.pub) cat > terraform/terraform.tfvars.vm < # Check Besu container docker ps docker logs besu-validator-0 ``` ### 4. Test RPC Endpoint ```bash # Test RPC endpoint curl -X POST -H "Content-Type: application/json" \ --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \ http://:8545 ``` ## Multi-Region Deployment ```bash # Update terraform.tfvars.vm vm_regions = ["eastus", "westus", "westeurope"] # Apply terraform apply -var-file=terraform.tfvars.vm ``` ## VM Scale Sets ```bash # Update terraform.tfvars.vm use_vmss = true # Apply terraform apply -var-file=terraform.tfvars.vm ``` ## Management ### Monitor VMs ```bash ./scripts/vm-deployment/monitor-vm.sh ``` ### Update Configuration ```bash ./scripts/vm-deployment/update-vm-config.sh validator config/validators/besu-config.toml ``` ### Backup Data ```bash ./scripts/vm-deployment/backup-vm.sh ``` ### Restore Data ```bash ./scripts/vm-deployment/restore-vm.sh ``` ## Troubleshooting See [VM Deployment Guide](VM_DEPLOYMENT.md) for detailed troubleshooting. ## Next Steps - Configure monitoring - Setup backups - Configure alerts - Deploy contracts - Test network