Licensing Oracle software in AWS can be, let’s face it, half as efficient as licensing it on-premises. Why? In the cloud, if you can’t identify the underlying physical hosts that your Oracle workloads will be installed on, you can’t enumerate the number of physical cores, so you can’t use Oracle traditional on-premises licensing model; instead, you need to rely on Oracle’s extra-contractual cloud computing licensing policy1. As I’ll show, counting vCPUs, as opposed to physical cores, is more expensive for Oracle licensing; thankfully, there is a better alternative.
Â
Oracle supports running its products on several different vendors’ CPUs. Due to the different core factors for different CPUs and processors, I’m going to be proceeding with the assumption that all CPUs in this discussion are x86-based chips, which, according to the Oracle Processor Core Factor Table2, have a 0.5 core factor.
Â
Licensing Oracle Products In A Traditional On-Premises EnvironmentÂ
To properly license Oracle Database in an on-premises environment you need to total up all of the physical cores in the physical hosts that Oracle runs on, and then multiply that by the appropriate core factor from the Oracle Processor Core Factor Table, giving you the number of Oracle processor licenses that are required. For Named User Plus (NUP) licenses you do the same thing, but then you multiply the number of Oracle processor licenses by the NUP minimums per processor (25 for Oracle Database Enterprise Edition, unless you’ve negotiated a lower number); this will give you the minimum number of NUP licenses needed to license your environment.
Â
As you can see, the number of physical cores directly affects your Oracle software liability. There is no basis in the Oracle Master Agreement for licensing Oracle software on a vCPU basis; even in a virtualized environment such as vSphere, it is necessary to license entire physical hosts.
Â
Â
Licensing Oracle Products In An Oracle-Approved Cloud EnvironmentÂ
House of Brick has other blogs available to discuss cloud licensing, so I won’t go into much depth here. The gist of Oracle’s cloud licensing policy is that, for AWS and Azure, it grants customers the privilege of counting vCPUs and, if hyper-threading is enabled, dividing that number in half to arrive at the number of Oracle processor licenses required; if hyper-threading is disabled, you simply use the number of vCPUs as the number of Oracle processor licenses required.Â
Â
Â
Example Scenario Counting vCPUsÂ
Here is an example of deploying x2iezn.2xlarge instances, each with Oracle software installed, using Oracle’s cloud computing licensing policy (again, extra-contractual). Each of these x2iezn.2xlarge instances is provisioned with 8 vCPUs. You don’t know if these instances are on the same physical host, or if they’re running on 6 different physical hosts. Under a typical AWS deployment there is no ability to count how many physical cores Oracle is installed on, so counting the number of vCPUs and dividing by ½ (we’ll assume hyper-threading is enabled, which is the default behavior) will give us the number of Oracle processor licenses needed to license these EC2 instances.
In this case, with 6 instances that each have 8 vCPUs, we’d need 24 Oracle processor licenses ((6 * 8) / 2).Â
Â
Now, what if we could count exactly how many physical cores Oracle is installed on, just like in an on-premises datacenter? We can do that by leasing dedicated hosts from AWS.Â
Â
Example Scenario Demonstrating License Efficiency Â
In our example, we’re still going to be running 6 x2iezn.2xlarge instances, but we’re leasing an entire x2iezn host for our dedicated use, and all 6 of the x2iezn.2xlarge instances will fit on the single host3. In this case, we can enumerate all of the physical cores that Oracle will be installed on. The x2iezn dedicated host runs on Intel Xeon scalable processors4 and has 24 physical cores. Just as in an on-premises environment, we can now utilize the processor definition from Oracle’s License Definitions and Rules document5, which is referenced by the Oracle Master Agreement (OMA):Â
Â
Processor: shall be defined as all processors where the Oracle programs are installed and/or running.Â
With dedicated hosts, we also get back the contractual right to use the Oracle Processor Core Factor Table, which, for Intel Xeon CPUs, gives us a Core Processor Licensing Factor of 0.5.Â
In this case, with 24 physical cores and a 0.5 Core Processor Licensing Factor of 0.5, we’d need 12 Oracle processor licenses to license this dedicated physical host (24 * 0.5).Â
Same computing power, but ½ the number of Oracle processor licenses if we don’t have to license on a vCPU basis. Huge difference in Oracle licensing! In this scenario, that’s $570,000 USD (list price) of Oracle Database Enterprise Edition licenses (12 * $47,500), plus any other packs or features, that you don’t need to use if you deploy on AWS dedicated hosts, vs. on shared tenancy EC2 instances. Â
Â
Â
SummaryÂ
Sure, the cost of a dedicated instance, at least for x2iezn, is more expensive than using shared tenancy instances, but not by much. As of the date of this writing, a dedicated x2iezn host in the US N. Virginia region (3-year Compute Savings Plan) is $3,095.93 USD/month, while the price for 6 of the x2iezn.2xlarge instances in the same region (3-year Compute Savings Plan) is $2,814.60 USD/month; a difference of $281.33 USD/month. Contrast that price increase with the list price of a single processor license of Oracle Database Enterprise Edition, $47,500.00 USD, and the benefits of using AWS dedicated hosts should be plain.Â
Â
Now, this article is only considering the benefits of using AWS dedicated hosts from the perspective of Oracle licensing. There are other architectural considerations, such as wanting to spread your workloads out to eliminate/minimize single points of failure, that are certainly valid and absolutely should be discussed. However, software costs should also be factored into any architectural decisions, and hopefully you’ve now got another tool in your IT toolbox to use in designing cost efficient solutions.Â
Â
Oracle Licensing can be a sticky wicket. At House of Brick we have hundreds of clients who trust us for their Oracle Licensing issues, and nothing is more satisfying to us than helping clients save $$$ on their Oracle spend. If you currently use Oracle software in the cloud, or are planning to, we’d welcome an opportunity to help you optimize your architecture.Â
- https://www.oracle.com/assets/cloud-licensing-070579.pdf
↩︎ - https://www.oracle.com/assets/processor-core-factor-table-070634.pdf
↩︎ - https://aws.amazon.com/ec2/dedicated-hosts/pricing/
↩︎ - https://aws.amazon.com/ec2/instance-types/
↩︎ - https://www.oracle.com/us/corporate/pricing/olsadef-ire-v122304-070549.pdf ↩︎