-
Notifications
You must be signed in to change notification settings - Fork 3.3k
{Compute} Disk IOPS/MBPS Support for SI VMs #32717
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
🔄AzureCLI-FullTest
|
|
| rule | cmd_name | rule_message | suggest_message |
|---|---|---|---|
| vm create | cmd vm create added parameter disk_iops_read_write |
||
| vm create | cmd vm create added parameter disk_mbps_read_write |
|
Thank you for your contribution! We will review the pull request and get back to you soon. |
|
The git hooks are available for azure-cli and azure-cli-extensions repos. They could help you run required checks before creating the PR. Please sync the latest code with latest dev branch (for azure-cli) or main branch (for azure-cli-extensions). pip install azdev --upgrade
azdev setup -c <your azure-cli repo path> -r <your azure-cli-extensions repo path>
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR extends az vm create and az vmss create to support setting DiskIOPSReadWrite and DiskMBPSReadWrite on implicitly created UltraSSD (and Premium SSD v2 where applicable) data disks, and moves VM / VMSS template generation to Compute API version 2025-04-01.
Changes:
- Adds new live scenario tests (and recordings) for VM and VMSS UltraSSD data disk IOPS/MBPS, including invalid-IOPS negative tests.
- Wires new
disk_iops_read_write/disk_mbps_read_writearguments throughcreate_vmandcreate_vmssinto the template builder, which now stampsdiskIOPSReadWrite/diskMBPSReadWriteon all data disks when provided. - Hard-codes the VM and VMSS ARM template
apiVersionto2025-04-01in_template_builder.pyto use the new Compute API that exposes DiskIOPSReadWrite/DiskMBPSReadWrite on implicit data disks.
Reviewed changes
Copilot reviewed 6 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py |
Adds live scenario tests for vm create and vmss create with UltraSSD data disks, verifying that DiskSizeGB, DiskIOPSReadWrite, DiskMBpsReadWrite, and storage SKU are set correctly, plus invalid-IOPS negative coverage. |
src/azure-cli/azure/cli/command_modules/vm/tests/latest/recordings/test_vmss_create_ultrassd_data_disk_iops_mbps_invalid_iops.yaml |
Records the failing vmss create flow when UltraSSD IOPS is out of range, confirming the RP validation error for dataDisk.diskIOPSReadWrite. |
src/azure-cli/azure/cli/command_modules/vm/tests/latest/recordings/test_vmss_create_ultrassd_data_disk_iops_mbps.yaml |
Records the successful vmss create flow with UltraSSD data disk IOPS/MBPS, validating that the resulting VMSS model reflects the requested values. |
src/azure-cli/azure/cli/command_modules/vm/custom.py |
Extends create_vm and create_vmss signatures to accept disk_iops_read_write / disk_mbps_read_write and passes them through to build_vm_resource / build_vmss_resource. |
src/azure-cli/azure/cli/command_modules/vm/_template_builder.py |
Updates VM and VMSS template builders to accept the new disk IOPS/MBPS parameters, apply them to all data disks when present, and pins the Compute virtualMachines and virtualMachineScaleSets resource apiVersion to 2025-04-01. |
src/azure-cli/azure/cli/command_modules/vm/_params.py |
Adds --data-disk-iops / --data-disk-mbps wiring for vm create via disk_iops_read_write / disk_mbps_read_write, while keeping existing data_disk_iops / data_disk_mbps definitions shared between vm create and vmss create. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
fd65c1a to
b77904b
Compare
Related command
az vm createDescription
This PR adds support for setting DiskIOPSReadWrite and DiskMBPSReadWrite during implicit data disk creation for UltraSSD (and Premium SSD v2 where applicable) via Azure CLI create flows. The feature is requested in Disk IOPS/MBPS Support for SI VMs (#32487).
Testing Guide
History Notes
This checklist is used to make sure that common guidelines for a pull request are followed.
The PR title and description has followed the guideline in Submitting Pull Requests.
I adhere to the Command Guidelines.
I adhere to the Error Handling Guidelines.