Please follow the below best practices for the corresponding modules. Not all practices should be followed for both default and max.
VMSS Best Practice |
Applicable AVM Module |
Applicable for Default |
Applicable for Max |
Deploy VMSS with Flex Orchestration mode |
Terraform, Bicep |
Yes |
Yes |
Configure VMSS autoscale to custom and configure scaling metrics |
Terraform, Bicep |
No |
Yes |
Configure Predictive autoscale and atleast for forecast only |
Terraform, Bicep |
No |
Yes |
Deploy VMSS across availaibility zones with VMSS flex |
Terraform, Bicep |
Yes |
Yes |
Disable Force strictly even balance across zones to avoid scale in and out fail attempts |
Terraform, Bicep |
Yes |
Yes |
Enable VMSS application health monitoring |
Terraform, Bicep |
Yes if condition shared over Email is met. |
Yes if condition shared over Email is met. |
Enable Automatic Repair Policy |
Terraform, Bicep |
Requires health monitoring to be enabled. |
Requires health monitoring to be enabled. |
Set Patch orchestration options to Azure-orchestrated |
Terraform, Bicep |
Yes |
Yes |
Upgrade VMSS Image versions scheduled to be deprecated or already retired |
Terraform, Bicep |
|
|
Configure Allocation Policy Spreading Algorithm to max spreading |
Terraform, Bicep |
Yes |
Yes |