Resource policy examples
Dynamic consolidation
Dynamic consolidation is a resource policy that automatically places tagged virtual machines on the minimum number of compute nodes. It helps optimize resource usage and reduce operational costs while ensuring high performance and compliance with licensing requirements.
This policy relies on VM tags and the optional segregation setting to group virtual machines on the same set of compute nodes:
- Without segregation: Tagged VMs are consolidated on the smallest possible set of nodes without considering performance isolation. This setup maximizes resource utilization and minimizes the number of active nodes.
- With segregation: Tagged VMs are consolidated on separate nodes, isolated from other VMs, to prevent performance interference (noisy neighbors). This approach is useful for workloads that are sensitive to resource contention, such as databases.
If multiple tags are specified, all VMs with any of those tags are consolidated on the same set of nodes, further reducing the number of active hosts.
When configuring dynamic consolidation, follow these best practices:
- Use segregation only when workloads are sensitive to noisy neighbors, as it may reduce resource efficiency.
- Consolidate VMs with similar workloads or licensing requirements to maximize the benefits of dynamic consolidation.
- Regularly review VM tags to ensure that the policy is applied to the appropriate workloads.
Example 1: Dynamic consolidation for Windows VMs without segregation
Goal: Minimize the number of physical hosts running Windows VMs to optimize licensing costs.
Expected result: Windows VMs are consolidated onto the fewest possible nodes, reducing licensing costs without considering performance isolation.
Configuration:
- Tags: windows
- Segregate tagged VMs: Disabled
Example 2: Consolidating Oracle VMs with segregation
Goal: Ensure Oracle databases are isolated from noisy neighbors while still minimizing the number of physical hosts they run on.
Expected result: Oracle VMs are consolidated onto a dedicated set of nodes, ensuring that neighboring workloads do not affect database performance.
Configuration:
- Tags: oracle
- Segregate tagged VMs: Enabled
Dynamic distribution
Dynamic distribution is a resource policy that continuously analyzes and redistributes virtual machines across compute nodes to maintain a balanced workload. The policy operates based on watermarks, deviation settings, and resource balancing between used and provisioned resources.
- Watermarks
-
The algorithm evaluates the median cluster load over a defined period and determines whether redistribution is needed based on two thresholds:
- Low watermark: If the load is below this threshold, the cluster is considered underutilized, but no redistribution occurs. This prevents unnecessary optimizations when workloads are already evenly distributed.
- High watermark: If the load exceeds this threshold, the cluster is considered overloaded, but no redistribution occurs. This ensures that migrations are not triggered when resources are already constrained, preventing unnecessary overhead.
- Deviation
- The deviation setting controls how aggressively the algorithm redistributes VMs. A higher deviation makes the policy more permissive, allowing larger load imbalances before migrations occur. A lower deviation results in more frequent migrations to maintain a strictly even distribution.
- Balancing used vs. provisioned resources
-
Dynamic distribution allows administrators to prioritize:
- Used resources (actual vCPU and RAM consumption by VMs)
- Provisioned resources (allocated based on VM flavors)
- A mix of both, with adjustable weight to determine the balance between the two
When configuring dynamic consolidation, follow these best practices:
- Avoid setting the high watermark above 80% if RAM is overcommitted. This allows enough time for redistribution to prevent resource contention.
- Avoid setting the high and low watermarks too close (for example, low: 40%, high: 50%) to prevent excessive recommendations and unnecessary migrations.
- Avoid setting the deviation too high. Start with a 20% deviation and monitor optimization results to find the optimal balance for your cluster.
Example 1: Aggressive dynamic distribution to prevent resource contention
Goal: Ensure that all nodes have enough free CPU and RAM by actively redistributing VMs based on real-time usage.
Expected result: Frequent VM migrations to maintain available resources and prevent contention.
| Setting | Value |
|---|---|
| High watermark | 95% |
| Low watermark | 20% |
| Deviation | 10% |
| Account for used resources | Yes |
| Account for provisioned resources | No |
Example 2: Permissive dynamic distribution to prevent resource contention and node underutilization
Goal: Achieve balanced CPU and RAM usage across nodes while minimizing migration frequency.
Expected result: Moderate VM migrations to maintain balanced utilization without excessive movement.
| Setting | Value |
|---|---|
| High watermark | 95% |
| Low watermark | 20% |
| Deviation | 30% |
| Account for used resources | Yes |
| Account for provisioned resources | Yes |
| Provisioned resource weight | 30% |
Example 3: Aggressive dynamic distribution to prevent node underutilization
Goal: Quickly react when certain nodes are mostly empty while others remain highly utilized.
Expected result: Frequent VM migrations to ensure nodes are evenly occupied and ready for new VM deployments.
| Setting | Value |
|---|---|
| High watermark | 95% |
| Low watermark | 20% |
| Deviation | 10% |
| Account for used resources | No |
| Account for provisioned resources | Yes |
| Provisioned resource weight | 100% |
Example 4: Permissive dynamic distribution to prevent node underutilization and resource contention
Goal: Evenly distribute provisioned resources while considering actual usage.
Expected result: Moderate VM migrations to maintain efficiency while preventing excessive load on individual nodes.
| Setting | Value |
|---|---|
| High watermark | 95% |
| Low watermark | 20% |
| Deviation | 10% |
| Account for used resources | Yes |
| Account for provisioned resources | Yes |
| Provisioned resource weight | 50% |