You are running Oracle on VMware and are not 100% sure that you are compliant with the Oracle licensing rules? This article is for you! As I have been confronted several times with Oracle License reviews with VMware installations, I decided to write this article in order to provide answers to the most frequent questions I have received from customers.

Introduction

Licensing is not an easy topic to address and this difficulty is not specific to Oracle. Additionally, this difficulty increases with the number of different software editors and the related software policy you have to manage as a License Manager, IT manager or CTO. In this article, I will focus on Oracle licensing and more specifically on a very frequent use case: Oracle Database installed on a VMware ESX infrastructure. Indeed, there is really few information about this topic in Oracle’s documentation and a simple mistake in your setup can easily cost you up to a million dollars. Lots of the information provided in this article originates from the Oracle Software Investment Guide. However, the very first element to read is the Terms and Conditions specified in your Oracle contracts.

 

Oracle on VMware: supported, but not certified

Before diving into the Oracle licensing questions, the very first thing you have to know about any Oracle product, not only the Oracle Database, is that there is no Oracle product certified on a VMware architecture. However, all Oracle products are supported on VMware infrastructure. What does this mean, supported, but not certified? Oracle does not guarantee the proper working of these products on VMware architecture, but will support you in case of incidents not related to the VMware infrastructure. In cases where the VMware could be involved, the Oracle support may ask you to reproduce the incident on a certified environment. Below, you will find an extract of the Oracle Support Doc ID 249212.1.:

Oracle Support will assist customers running Oracle products on VMware in the following manner: Oracle will only provide support for issues that either are known to occur on the native OS, or can be demonstrated not to be as a result of running on VMware. If a problem is a known Oracle issue, Oracle support will recommend the appropriate solution on the native OS.  If that solution does not work in the VMware virtualized environment, the customer will be referred to VMware for support.   When the customer can demonstrate that the Oracle solution
does not work when running on the native OS, Oracle will resume support, including logging a bug with Oracle Development for investigation if required.If the problem is determined not to be a known Oracle issue, we will refer the customer to VMware for support.   When the customer can demonstrate that the issue occurs when running on the native OS, Oracle will resume support, including logging a bug with Oracle Development for investigation if required. 1

1 My Oracle Support (2014), Support Position for Oracle Products Running on VMWare Virtualized Environments

Crash course on Oracle licensing terminology

Since explaining the subtleties of Oracle licensing without sharing some insight about the Oracle licensing terminology is very difficult, I will give you some explanation about the most common and basic Oracle licensing terms.
Oracle products are freely available for download on the Oracle website. However, before using it, you need to agree with the Oracle Technology Network (OTN) Developer License Terms. You can find an extract of the LICENSE RIGHTS Chapter below:

We grant you a nonexclusive, nontransferable limited license to use the programs only for the purpose of developing, testing, prototyping and demonstrating your application, and not for any other purpose. If you use the application you develop under this license for any internal data processing or for any commercial or production purposes, or you want to use the programs for any purpose other than as permitted under this agreement, you must obtain a production release version of the program by contacting us or an Oracle reseller to obtain the appropriate license. You acknowledge that we may not produce a production release version of the program and any development efforts undertaken by you are at your own risk. We may audit your use of the programs1.

1 Oracle (2014), Oracle Technology Network Developer License Terms

 

A license according to Oracle definition is “the non-exclusive and limited right to use Oracle software under the agreed terms and conditions”. The overarching license rights are described in the Oracle Master Agreement(OMA) and the rights regarding specific products and services are described in the Ordering Document. Specifically, the OMA is the agreement that details the standard rights granted, ownership, restrictions, warranties, disclaimers, confidentialities, etc. The Ordering Document describes the specific products, types of licenses, number of users, level of support, and discounts (if applicable) a customer has ordered and will receive.

In order to quantify and measure the way customers are using Oracle software, Oracle has introduced the notion of License Metric. According to Oracle the “License Metric determines how the usage is being measured, when Oracle licenses its software to a customer” . For the technology related products (i.e. Oracle Database, Application Server products, Business Intelligence Technology products, Identity Management Products, etc.) Oracle uses two metrics:
a. Processor

b. NUP (Named User Plus)

The Processor License Metric is based on the number of processor cores in the Enterprise Edition or Sockets in the Standard Edition and the Standard Edition One, in the server where the Database or Middleware product is installed and/or running. This metric is used where users are uncountable (i.e. website) or when the number of users changes frequently. It is important to notice that all processors have to be licensed even if one of them is deactivated in the BIOS. In the case of the Enterprise Edition, customers have to count the number of cores multiplied by the core factor in order to determine the number of Oracle processor cores. The core factor determines the coefficient used depending on the processor type. This core factor is defined in the core factor table provided by Oracle at the following address: http://www.oracle.com/us/corporate/contracts/processor-core-factor-table-070634.pdf

Vendor and Processor

Core Processor Licensing Factor

Sun and Fujitsu UltraSPARC T1 processor (1.0 or 1.2 GHz) Only named servers including:

Sun Fire T1000 Server, SPARC Enterprise T1000 Server*, with 6 or 8-core 1.0 GHz UltraSPARC T1 processor

Sun Fire T2000 Server, SPARC Enterprise T2000 Server*, with 4, 6, or 8-core 1.0 GHz, or 8 core 1.2 GHz UltraSPARC T1 processor

0.25

Sun Netra T2000, 1.0 or 1.2 GHz UltraSPARC T1 processor

0.25

S PARC T3 processor

0.25

Sun and Fujitsu UltraSPARC T1 1.4 GHz

Only named servers including:

Sun Fire T2000 Server and SPARC Enterprise T2000 Server*, with 8-core,

1.4 GHz UltraSPARC T1 processor

0.5

A MD Opteron Models 13XX, 23XX, 24XX, 32XX, 41XX, 42XX, 43XX,

61XX, 62XX, 63XX, 83XX, 84XX or earlier Multicore chips

0.5

Intel Xeon Series 56XX, Series 65XX, Series 75XX, Series E7-28XX, E7-28XX v2, Series E7-48XX, E7-48XX v2, Series E7-88XX, E7-88XX v2, Series E5-24XX, Series E5-26XX, E5-26XX v2, Series E5-46XX, E5-46XX v2, Series E5-16XX, Series E3-12XX or earlier Multicore chips

0.5

Intel Itanium Series 93XX or earlier Multicore chips (For servers purchased prior to Dec 1st, 2010)

0.5

Intel or AMD Desktop, Laptop/Notebook, or Netbook Multicore chips

0.5

Sun UltraSPARC T2+

0.5

SPARC64 VII+

0.5

SPARC64 X, SPARC64 X+

0.5

SPARC T4 processor

0.5

SPARC T5

0.5

SPARC M5

0.5

SPARC M6

0.5

Sun and Fujitsu SPARC64 VI, VII

0.75

Sun UltraSPARC IV, IV+, or earlier Multicore chips

0.75

Sun UltraSPARC T2

0.75

HP PA-RISC

0.75

IBM POWER5+ or earlier Multicore chips

0.75

All Single Core Chips

1.0

Intel Itanium Series 93XX (For servers purchased on or after Dec 1st, 2010)

Intel Itanium Series 95XX

1.0

IBM POWER6

1.0

IBM POWER7, IBM POWER7+

1.0

IBM POWER8

1.0

IBM System z (z10 and earlier)

1.0

All Other Multicore chips

1.0

* SPARC Enterprise T1000 and SPARC Enterprise T2000 Servers may be sold and branded

by Oracle, Sun Microsystems, Fujitsu or Fujitsu Siemens

Let’s take a simple example in order to demonstrate the calculation method.  An Oracle customer runs several Oracle Enterprise Edition Databases on one server equipped with two sockets. Each socket is equipped with an Intel XEON X7560 8 cores processor. The usual Intel core factor is 0.5 (c.f. core factor table). The customer has to license 2 sockets x 8 cores x 0.5 core factor = 8 Oracle processors. If this customer is running the same databases on a Standard Edition or a Standard Edition One, he has to license two Oracle processors since two sockets are occupied.
The NUP Metric is based on users and non-human operated devices accessing the database. This metric is usually used when users can be counted. Customers using this metrics have to license either the number of NUP accessing the Oracle software or the minimum NUP – whichever NUP is higher. The calculation rule for the minimum NUP customers have to license is 25 NUP per Oracle Processor for the Enterprise Edition and 5 NUP for the Standard Edition and the Standard Edition One. Please note that the number of NUP for the Standard Edition and the Standard Edition One is only 5, since the minima in the Standard Edition and the Standard Edition One is not related to the number of processor license.
Let’s come back to the example in the processor section: For the same architecture, the minimum Named User Plus this customer has to license according to the minima rules would be 8 Oracle Processor  x 25 = 200 NUP on an Oracle Enterprise Edition and 5 on an Oracle Standard Edition and Standard Edition One.
The same rules described above regarding the Enterprise Edition apply for the Enterprise Edition Options.

Differences between the different Oracle Database Editions

The main differences between the different Oracle Database Editions are:

  • Oracle Database Enterprise Edition has no license restrictions. This is the only edition that allows licensing Database options (e.g. Partitioning, OLAP, Data Mining, Spatial, Enterprise Management Pack, etc.). In addition, Oracle Database Enterprise includes an additional set of features that are not present in other editions (e.g. Data Guard, Transportable Tablespace, Materialized View Query Rewrite, Cross-Platform Backup, Flashback Table, Database, Transaction Query, etc.). In addition this edition is the only one allowed to be monitored by Grid Control or Cloud Control.
  • Oracle Database Standard Edition can only be licensed on servers that have a maximum capacity of 4 sockets. This edition encompasses Real Application Cluster, however, the addition of sockets into the cluster nodes cannot be superior to 4. The maximum number of CPUs defined is meant for the entire Real Application Cluster infrastructure; it is not a per node maximum.
  • Oracle Database Standard Edition One may only be licensed on servers that have a maximum capacity of 2 sockets. Unlike the Standard Edition, the Standard Edition One does not include Real Application Cluster. In addition, unlike the Standard Edition and the Enterprise Edition, the Standard Edition One does not include Automatic Workload Management.
  • Oracle Database Express Edition (XE) can be installed on any size of host machine with any number of CPUs (one database per machine), but XE will store up to 11GB of user data, uses up to 1GB of memory and one CPU on the host machine. Many features integrated in other edition are not present in the Express Edition.

An exhaustive list of differences is provided on the following URL: http://www.oracle.com/us/products/database/enterprise-edition/comparisons/index.html

Hard and soft server partitioning

According to Oracle’s definition (cf. Oracle Partitioning Policy): “Partitioning occurs when the CPUs on a server are separated into individual sections where each section acts as a separate system. Sometimes this is called “segmenting.” There are several hardware and software virtualization technologies available that deliver partitioning capabilities, with varying degree of resource allocation flexibility.”
A partitioning strategy is more and more frequently used by customers. The underlying technologies and products aim to achieve several goals such as:

  • Workload balancing by allocating more or less CPU power to specific systems
  • Architecture consolidation by running multiple and different operating systems or multiple versions of the same operating system on the same physical server in order to optimize the resource usage
  • The deployment of economic models such as “Pay-As-You-Grow” and “Capacity on Demand”

Oracle distinguishes two main types of partitioning:

1. Soft partitioning

Soft partitioning is defined by Oracle as a flexible way to segment the operating system using OS resource managers, since the CPU capacity allocated to the operating system running an Oracle database can be changed fairly easily. Examples of such partitioning types include (non-exhaustive list): Solaris 9 Resource Containers, AIX workload Manager, Oracle VM, and VMware.
The key message regarding soft partitioning is: “soft partitioning is not permitted as a means to determine or limit the number of software licenses required for any given server.”
In other terms, customers using such soft partitioning technologies have to license the totality of cores or sockets of the physical systems.

2. Hard partitioning

Hard partitioning is defined by Oracle as “a way to physically segment a server, by taking a single large server and separating it into distinct smaller systems. Each separated system acts as a physically independent, self-contained server, typically with its own CPUs, operating system, separate boot area, memory, input/output subsystem and network resources.”
Oracle approved hard partitioning technologies as listed in this section of the policy document. They are permitted as a means to limit the number of software licenses required for any given server or a cluster of servers. Approved hard partitioning technologies include: Dynamic System Domains (DSD) — enabled by Dynamic Reconfiguration (DR), Solaris Zones (also known as Solaris Containers, capped Zones/Containers only), LPAR (adds DLPAR with AIX 5.2), Micro-Partitions (capped partitions only),vPar, nPar, Integrity Virtual Machine (capped partitions only), Secure Resource Partitions (capped partitions only), Fujitsu’s PPAR.

Oracle VM Server can be used as a hard partitioning technology if customer bind vCPUs to physical CPU threads or cores as explained in the following paper: http://www.oracle.com/technetwork/server-storage/vm/ovm-hardpart-168217.pdf

Licensing of VMware on Oracle

As described in the soft partitioning chapter, VMware is considered by Oracle as a soft partitioning technology.
Some white papers provided by VMware such as the one named “Understanding Oracle Certification, Support and Licensing for VMware Environments”  state that it is possible to partially license cluster using DRS Host Affinity.
This document has never been approved by Oracle and you won’t find anything about such statements in the Oracle documentation, the Oracle licensing terms, or in the Oracle support. Oracle does not allow to partially license an ESX cluster using DRS technology. Up to VMware 5.0, customers running a virtual machine with Oracle installed had to fully license the physical hosts composing the VMware cluster. Since VMware 5.1, if only one Virtual Machine is running Oracle managed within a vCenter Server Instance, you have to fully license all the physical hosts managed by this vCenter Server instance and not only the cluster instances. This decision has probably been taken by Oracle due to the new features coming with VMware vSphere 5.1, particularly one named vSphere vMotion: This new feature leverages the advantages of vMotion (zero-downtime migration) without the need for shared storage configurations. Indeed, this new vMotion capability applies to the entire network.
In addition, in order to license only the vCenter Server Instance (or the cluster up to VMware 5.0) where Oracle products are running, you have to dedicate a separate physical storage to this vCenter (or cluster up to VMware 5.0). Virtual storage separations such as Vplex technology or dedicated LUN are not considered as a physical separation.
Regarding Oracle Standard Edition, it can be licensed if each individual physical server on the vCenter Server instance does not exceed the maximum capacity of 4 sockets. Oracle Standard Edition One can also be licensed if the maximum capacity of each individual physical server in the vCenter Server Instance does not exceed 2 sockets.

Practical case

In the example illustrated in Figure 1Figure 1: Customer VMware 5.1 architecture a customer has a VMware infrastructure of version 5.1 with two servers in a cluster and a third separated server. All servers are managed by the same Vcenter Server Instance.

  • The servers in the cluster are equipped with two Intel Xeon with 8 cores each. The third server is equipped with one Intel Xeon with 4 cores.
  • Each server on the cluster hosts two Virtual Machines. 8 cores are allocated to each Virtual Machine. The third server has only one Virtual Machine with 4 dedicated cores.
  • Oracle Database Enterprise Edition is installed on one Virtual Machine on the cluster (VM1). This VM can only run on server1. The database is used by 300 users.

In this example, the following restrictions apply:

  • VMware is counted as soft partitioning and therefore any dedication or restriction of the Oracle programs using it is considered as soft partitioning and hence you will still need to license the whole environment.

  • Since no physical server has more than two sockets, Oracle Standard Edition or the Enterprise Edition One can be licensed.

  • Oracle will only provide support for issues that either are known to occur on the native OS or can be proven not to be a result of running on VMware.

The customer will have to purchase:

  • 450 (36 cores x 0.5 core factor x 25) Named User Plus in Enterprise Edition in order to respect the minima rules.

  • Alternatively, the customer can acquire 18 (36 cores X 0.5 Intel core factor) Oracle Processor of Oracle Enterprise Edition.

Architecture solutions

Taking into consideration the facts described in the preceding section, what are the possible solutions in order to be compliant with Oracle licensing terms and conditions? Below, you can find a non-exhaustive list of solutions. I voluntary decided to mostly focus on Oracle propositions:

1. Dedicating and licensing a new VMware vCenter Server Instance to Oracle products with a separated physical storage for Oracle in order to limit the Oracle license footprint to this specific vCenter Server Instance. This solution can be interesting if your company strategy is to install VMware systematically as an “under layer” for each system. The cost of this solution mostly depends on the chosen storage system.

2. Consolidation on a physical host. It is indeed perfectly possible to run several Oracle products of different version on the same physical host. Of course, this solution is not the most flexible, but will cost you close to nothing in terms of license. However, it will be mandatory to migrate all your Oracle products running on Virtual Machine to a physical server and this can be time consuming and tedious. The price of this solution mainly depends on the chosen physical server.

3. Using a hard partitioning technology such as the one presented in the chapter “hard partitioning”. The price and time needed to migrate from VMware to another system varies greatly from one system to another depending on the chosen hard partitioning technology. For instance, Oracle VM (in hard partitioning mode) is capable of loading both VMware and Hyper-V Virtual Machines and converting them automatically to an Oracle VM. An Oracle VM with a one year support will cost you 599 dollars per server with a maximum of 2 CPUs or 1’199 dollars per server with any number of CPUs1. This solution also offers the advantage to rapidly deploy the application via the Oracle VM preconfigured templates.

4. Switching on an Oracle Appliance such as the Oracle Database Appliance (ODA): Indeed, this appliance can be installed in a bare metal or in a virtualized mode. One of the advantages of this technology is that you can license a minimum of 2 cores per node (a total of 4 cores) in a virtualized mode and you can activate up to 48 cores (with increment by 2)! Nowadays, finding a solution of two servers with only 4 overall cores, meaning two Oracle Processor Licenses, is nearly impossible. Unfortunately, one drawback is that you cannot license the Standard Edition on this box. A license revalorization is however frequently possible, which means you do not have to pay the full conversion price from the Standard Edition to the Enterprise Edition. Finally, Oracle Database Appliance will offer you a simple and highly available solution. The price of this appliance according to Oracle’s Engineered Systems price list is 60’000 dollars.2

2 Oracle (2014), Oracle Engineered System Price List

5. Using the Server Trusting Partitioning mode. Oracle provides a relatively new third server partitioning mode. It allows the use of Oracle VM Server (OVM) as a means to limit the number of Oracle Processor licenses required in order to license a sub-capacity of total physical cores without the drawback of OVM in hard partitioning mode. This server partitioning mode is named: Trusted partitioning. The usage conditions of trusted server partitioning are the following:

  1. Using an approved Engineered System (such as Exalogic Elastic Cloud, Exalytics In-Memory Machine, or Oracle Virtual Compute Appliance – OVCA)
  2. Using an Oracle Enterprise Manager 12.1.0.2 or higher (either in connected or disconnected mode) to monitor VMs participating in Oracle Trusted Partitions
Customers will get the following advantages when running OVCA with trusted partitioning:
  • You do not have to license the totality of cores: Only used physical cores have to be licensed.

  • On an OVCA, two Virtual CPUs (vCPU) are counted as equivalent to a physical core. For instance, licensing 4 Oracle processors enables you to use 8 physical cores and 16 vCPUs.

  • Licenses are procured in increments of 2 physical cores (1 Oracle Processor), which provide a high level of flexibility.

  • On an OVCA, you can run a Standard Edition, which is not possible on an ODA. Thanks to Oracle Virtualization, you can even run other RDBMS, such as Microsoft SQL Server on Windows, for instance.

  • Even if this appliance is an important investment in terms of capital expenditure, such a solution could drastically reduce your operational expenditures.

Conclusion

Running Oracle products on VMware offers flexibility advantages. However, if you do not have a deep knowledge of Oracle licensing rules, it can expose you to high financial risks. In addition, the probability of facing a license control is quite high: In French-speaking Switzerland alone, there are more than 20 Oracle LMS (License Management Services) audits each year.

The core message of this article is not to switch from VMware to another solution. However, if you have any uncertainty, you should ask an Oracle LMS or Oracle sales specialist before designing your Oracle architecture. Of course, dbi services can also help you maintaining your Oracle licenses either through our SLA or through periodic reviews.

You can find in the blog named Oracle Licensing (R)evolution the last experiences I encountered in terms of Oracle Licensing Audit.