Azure Local Load Testing Framework¶
Automated performance and load testing for Azure Local clusters — storage, network, database, and system stress — with standardised reporting.
Quick Start¶
# 1. Clone and configure
git clone https://github.com/AzureLocal/azurelocal-loadtools
Copy-Item config\variables.example.yml config\variables.yml
# Edit config\variables.yml with your cluster details
# 2. Run a storage benchmark
.\scripts\Start-FioTest.ps1 -RunId "fio-$(Get-Date -f yyyyMMddHHmm)" -Profile "sequential-read"
.\scripts\Collect-FioResults.ps1 -RunId "fio-$(Get-Date -f yyyyMMddHHmm)"
# 3. Generate a report
.\scripts\New-LoadReport.ps1 -RunId "fio-$(Get-Date -f yyyyMMddHHmm)" -Tool fio
Architecture at a Glance¶
The framework is organised into five layers:
All scripts consume ConfigManager-generated JSON (never the raw YAML). Results flow from target nodes via SSH/SCP or WinRM to JSON aggregates, then into AsciiDoc report templates. See the Architecture Overview for the full breakdown.
Tools¶
| Tool | Target OS | Category | Status | Profiles |
|---|---|---|---|---|
| fio | Linux | Storage I/O | 5 | |
| iPerf3 | Linux / Windows | Network | 3 | |
| HammerDB | Windows | Database | 2 | |
| stress-ng | Linux | CPU / Memory / I/O | 3 | |
| VMFleet | Windows (HCI) | VM fleet | — |
Navigation¶
| Section | Description |
|---|---|
| Getting Started | Prerequisites, installation, and first run |
| Architecture | Five-layer stack, tool selection, data flow |
| Tools | Per-tool installation, profiles, monitoring, reporting, troubleshooting |
| Operations | CI/CD pipelines, runner setup, troubleshooting |
| Reference | Cmdlet reference, variables, tool comparison |
| Roadmap | Milestone tracker and planned features |
Repository¶
- GitHub: AzureLocal/azurelocal-loadtools
- Issues: Report a bug or request a feature