Software vendors (such as Microsoft, Oracle and IBM) commonly license products on a physical host or CPU core basis in virtual environments. For most organizations these software licenses are a major cost within these environments. Enterprises often try to manage, contain, or control these costs by licensing entire clusters and attempting to segregate specific license types to these dedicated clusters.
But these strategies don’t work if you only need a subset of hosts to run the software, or if you have multiple licensed products in the same environment. And if technologies like VMware vSphere Distributed Resource Scheduler (DRS) are enabled to manage spikes in infrastructure resource usage, you can quickly fall out of compliance due to licensed virtual machines (VMs) moving around. On the other hand, if movements are overly-restricted to maintain license control, the load balancers may not be able to do their jobs, and there could be performance issues. Other related questions or scenarios commonly arise, such as:
In order to avoid having to wall-off specific physical hardware or clusters, software-based control mechanisms are required. If the logic for software license containment can be combined with resource optimization, then VM placement decisions that honor both constraints can be made simultaneously. The outcome would be to concentrate the workloads and licenses of a certain type to the fewest number of hosts possible, without creating resource contention, and then containing them to those hosts moving forward. Of course, this can be tricky to do, as it would require consideration of any other requirements or constraints that are present, including multiple overlapping license types which may exist in a single environment.
See how Densify can provide recommendations to optimize your VM placement strategy and help you meaningfully reduce license costs:Get a demo of software license cost optimization
There are three components to gaining software-defined control over licenses in virtual infrastructure.
The first aspect is determining optimal resource allocations at the VM level. You can pack more VMs onto fewer hosts if they are provisioned with the correct amount of resources to meet policy for the specific class of workloads (e.g. business-critical vs. dev/test). This is an optional step, but if performed before optimizing VM placement, it gives you the highest density of VMs per host and therefore the greatest potential savings
The next step is to optimize the VM placements across the hosts you are going to license for the software. This is the act of placing VMs intelligently from both a resource requirement and software license type perspective, while maintaining a safety margin to meet policy requirements and cyclical changes in workload behavior. The below example illustrates how the workload patterns of your VMs can be optimally combined to safely drive density while maintaining SLA.
By extending this concept across multiple VMs and hosts, it is possible to optimize workload density while at the same time optimizing the ability for workloads to get the resources they need when they need them. This is very important for many licensed software components, such as databases and middleware, and accounting for their patterns of behavior is key to successful license optimization.
The final requirement is the ability to ensure the VMs stay within the prescribed boundaries, and to monitor and manage over time to ensure continued SLA achievement. By programming affinity rules in load balancers such as DRS, compliance can be maintained as operation conditions change, and movement of software licenses to other hosts will be avoided, preventing increases in licensing obligations. And monitoring the licensed hosts against the resource policy threshold requirements (performance thresholds, HA strategies, etc) will allow you to continuously maintain your SLAs while minimizing license costs.
The traditional method for licensing software in VMware environments is to license clusters completely, to allow a limited amount of workload movement while still having some limits. This results in a random mixture of different software packages on each host in the cluster:
|Cost of Suboptimal VM Environment|
|256 Windows Server 2016 Datacenter Licenses (32 cores per host, 8 hosts)||$98,560|
|224 Microsoft SQL Server Standard Licenses Licenses (32 cores per host, 7 hosts)||$832,608|
By analyzing the workload characteristics of the VMs, it is possible to come up with a more intelligent VM placement strategy, that contains certain software within a subset of the cluster, while still allowing VM movement within these boundaries:
|Cost of Optimized VM Environment|
|128 Windows Server 2016 Datacenter Licenses (32 cores per host, 4 hosts)||$49,280|
|64 Microsoft SQL Server Standard Licenses Licenses (32 cores per host, 2 hosts)||$237,888|
First, the ability to cut license obligation and costs becomes a big opportunity as you near an event such as a renewal or contract negotiation, when it is possible to adjust quantities and in turn payments. Given the opportunity to engage particular software vendors, the following savings have been observed using this approach:
The beauty of these savings being driven by VM placement is that it can be almost instant once placements have been actioned. And with some software packages, the savings on maintenance alone can be significant. Here are some real-world examples of the savings that can be achieved:
|Organization||Type of License||Total Savings|
|Fortune 50 Bank||Microsoft Windows Server Datacenter||$2M|
|Fortune 50 Bank||Microsoft SQL Server||>$20M|
|Fortune 25 Bank||Oracle Database||$23M|
|Global Insurer||IBM WebSphere||$2M|
|Large Healthcare||Microsoft Windows Server Datacenter||$1M|
What kind of license cost savings could your organization expect with Densify? Request a no-pressure 1:1 demo and let one of our technical experts walk you through potential benefits based on the software you license:Get a demo of software license cost optimization