- Resource Group:
lab-complete-rg - Location: West US 2
- Architecture: Jumpbox with public IP + 3 private VMs
- Jumpbox (Public):
4.155.27.12- Windows Server 2022 - DC (Private):
10.10.2.10- Windows Server 2022 (Domain Controller) - Client (Private):
10.10.2.4- Windows Server 2019 - Linux (Private):
10.10.2.5- Ubuntu 22.04
- RDP to Jumpbox:
4.155.27.12:3389- Username:
labadmin - Password:
MyStrongPassword123!
- Username:
- From Jumpbox, access other VMs:
- DC:
10.10.2.10:3389 - Client:
10.10.2.4:3389 - Linux:
10.10.2.5:22(SSH)
- DC:
manage_lab.sh- Main script to start/stop/check lab statusdeploy_lab_complete.sh- Deploy the complete lab infrastructuredestroy_lab.sh- Destroy the lab infrastructure
main.tf- Main infrastructure configurationvariables.tf- Variable definitionsoutputs.tf- Output valuesprovider.tf- Azure provider configuration
scripts/dc-setup.ps1- Domain Controller setup scriptscripts/join-domain.ps1- Client domain join script
CostManagement_Azure subscription 1_2025-10-23-1510.xlsx- Cost analysis file
- VMs Running: ~$60/month
- VMs Stopped: ~$20/month
- Savings: ~$40/month (67%) when stopped
# Check lab status
./manage_lab.sh status
# Start all VMs
./manage_lab.sh start
# Stop all VMs (save money)
./manage_lab.sh stop
# Start only jumpbox for quick access
./manage_lab.sh jumpbox-only
# View cost breakdown
./manage_lab.sh cost
- Only jumpbox exposed to internet
- All lab VMs protected behind private network
- Auto-shutdown at 6 PM daily
- JIT access can be enabled for jumpbox
- Test access to jumpbox
- Configure domain controller
- Join client machines to domain
- Set up your lab environment
- Use
./manage_lab.sh stopwhen done to save money