Moving applications to a public IaaS or PaaS cloud may simplify your hardware management, but it opens new issues around software licensing. Some of your contracts may not address cloud computing specifically because a vendor's licensing model may predate cloud. While Amazon Web Services (AWS) and other cloud vendors offer cloud-specific software licenses, they introduce their own complications. Here are five things to keep in mind as you assess how your cloud migration plans can affect your software licensing.
1. What licensing model does your software vendor use? Sometimes it seems there are as many software licensing models as software vendors. Some vendors' license models are based on the number of named users, while others prefer to charge based on the number of concurrent users. Other providers use the server processor or number of cores for determining fees.
User-based licensing may readily apply to running applications in a public cloud, assuming there are no other clauses in your contract that restrict use in the cloud. Processor- or core-based licensing can be more problematic because Infrastructure as a Service (IaaS) vendors sell instances using custom ratings for CPU power. AWS, for example, uses the Elastic Compute Cloud, or EC2, Compute Unit, equivalent to a 1.0 GHz to 1.2 GHz 2007 Opteron or 2007 Xeon processor. Google Compute Engine specifies a number of virtual cores in each instance type using Google Compute Engine Unit (GCEU). The power of a single logical core on a Sandy Bridge (Intel Core) processor is 2.75 GCEUs. If you have CPU-based licenses, they may not easily map to cloud-provider CPU units.
Older software licenses may not include explicit statements about public cloud computing, especially if they are routinely renewed without modification.
2. How will you ensure compliance with software licenses? The complexity of software licensing has led to a mature market for license management tools, and larger organizations may already have these in place. If so, consider how and if these tools will operate with cloud-based resources. Automated discovery tools that work well with on-premises servers may not discover cloud-based instances. Configuration changes to the license management software or implementing a virtual private network that includes cloud-based servers may address this problem.
Consider how you will avoid overuse of licensed software if you do not have a software license management application. For example, if you have a stored virtual machine image with software licensed by number of CPUs, how will you avoid running too many instances? One option is to configure the machine instance to check for other running instances and shut down if another is active. Alternatively, you could incorporate a check in your monitoring scripts to determine if the number of instances running the licensed software exceeds your capacity and to shut down servers as needed.
3. Does your software license include a clause about cloud computing? Older software licenses may not include explicit statements about public cloud computing, especially if they are routinely renewed without modification. If a contract does not explicitly grant the licensee a right, the vendor might retain that right. Legal counsel should review any questions about contracts and rights, and address any concerns with the vendor.
4. Do cloud computing procedures and practices violate your license? Software licenses may have restrictions on the number of backup copies you maintain. Since cloud providers replicate data to improve availability, there may be cases in which the number of backup copies exceeds the number allowed. Or, there may be export restrictions on software. If software is replicated across national boundaries, it may introduce unanticipated issues as well.
5. Is a pay-as-you-go, cloud-based license an option for you? Software vendors can benefit by partnering with IaaS providers to offer their software in the cloud. The AWS marketplace allows customers to purchase licensed software on a pay-as-you-go basis. Available products include databases, business intelligence tools, security applications, content management and customer relationship management applications. Like conventional software licensing, there is no single model for setting fees. Many of the products in the AWS marketplace are priced on an hourly basis, while others are billed monthly or by user.
If you have an existing contract with a software vendor that also offers products in a cloud marketplace, you may be able to renegotiate or transfer your existing license to a cloud-based model.
Remember that moving your licensed software to the cloud introduces a third party to your relationship with your software vendor. Cloud providers may have stipulations in their contracts that may affect your licensing practices. A cloud provider may stipulate that you assume all responsibility for any violation of software licenses. Regardless, it is prudent to consult with legal counsel on both your software licenses and your cloud provider agreements.
About the author:
Dan Sullivan, M.Sc., is an author, systems architect and consultant with more than 20 years of IT experience. He has had engagements in advanced analytics, systems architecture, database design, enterprise security and business intelligence. He has worked in a broad range of industries, including financial services, manufacturing, pharmaceuticals, software development, government, retail and education. Dan has written extensively about topics that range from data warehousing, cloud computing and advanced analytics to security management, collaboration and text mining.