Oracle licensing on Sun Solaris explained Author: Adrian Cristache
Virtualization solutions on Sun are classified as soft or hard partitioning solutions, meaning that some Sun technologies can be used as a technology to license the sub capacity of a server. But not all of them. What Sun technologies are considered soft partitioning and what technologies are considered hard partitioning? And how do you need to configure these technologies to make sure that you are eligible for hard partitioning or sub capacity licensing? This whitepaper aims to provide an overview of the ins and outs you should be aware off.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
2
Contents Introduction ........................................................................................................................................ 3
Sun technologies: hard or soft partitioning ......................................................................................... 4
Dynamic System Domains ................................................................................................................. 5
Solaris Zones ..................................................................................................................................... 6
Solaris LDOMs and Oracle VM Server for SPARC ............................................................................. 9
How to license Oracle VM on Oracle’s Engineered Systems (Oracle Trusted Partitions) and how to license Oracle VM on other hardware (non-Oracle Engineered Systems)? ...................................... 10
Oracle licensing position .................................................................................................................. 13
PROs and CONs ......................................................................................................................... 14
Conclusion ....................................................................................................................................... 15
Glossary of terms: Sun Solaris licensing concepts ........................................................................... 16
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
3
Introduction
More and more end users are planning on or have already moved to a cloud computing environment. Each
cloud computing environment comes with its specific restrictions and/or different ways of counting the
required number of Oracle licenses. As of January 23rd, 2017 (followed by an update one year later, on
January 23rd, 2018), Oracle Corporation changed its licensing policies for the so called “Authorized C loud
Environments”.
As per Oracle’s Server 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.
The acquisition of Sun Microsystems by Oracle Corporation was completed on January 27, 2010. Oracle,
previously only a software vendor, owns now both hardware and software product lines from Sun (e.g.
SPARC Enterprise and Java). Before starting to deploy your Oracle Programs on systems where
“virtualization” is being used, it is important to understand what Oracle’s position is and how the “segmenting”
can be categorized: soft or hard partitioning.
Virtualization solutions on Sun are classified as soft or hard partitioning solutions, meaning that some Sun
technologies can be used as a technology to license the sub capacity of a server. But not all of them. What
Sun technologies are considered soft partitioning and what technologies are considered hard partitioning?
And how do you need to configure these technologies to make sure that you are eligible for hard partitioning
or sub capacity licensing? This whitepaper aims to provide an overview of the ins and outs you should be
aware of.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
4
Sun technologies: hard or soft partitioning
There are two main types of partitioning available:
Soft partitioning
Soft partitioning segments the operating system using OS resource managers. The operating system limits
the number of CPUs where an Oracle database is running by creating areas where CPU resources are
allocated to applications within the same operating system. This is a flexible way of managing data
processing resources since the CPU capacity can be changed fairly easily, as additional resources are
needed.
Sun Solaris 9 Resource Containers are classified as Soft Partitioning and as such not permitted as a means
to determine or limit the number of software licenses required for any given server or cluster of servers.
Hard partitioning
Hard partitioning physically segments 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.
The following technologies are classified as hard partitioning and as such permitted as a means to determine
or limit the number of software licenses required for any given server or cluster of servers.
• Physical Domains (also known as PDomains, Dynamic Domains, or Dynamic System Domains);
• Solaris Zones (also known as Solaris Containers, capped Zones/Containers only);
• Solaris LDOMs and Oracle VM Server for SPARC.
But how do they work and what do you need to do to configure these technologies correctly?
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
5
Dynamic System Domains
Dynamic System Domains (DSD) allows a system administrator to logically divide a single system rack into
one or more independent systems, each running its own copy of the Solaris operating environment.
There are specific OS commands to be run on the target server to understand if DSD partitioning is used
and if the partitioning was done properly:
+ /usr/sbin/psrinfo -vp – This command shows the number of physical processors assigned to the
machine.
+ /usr/sbin/zoneadm list -cp – This shows both the global zone and the Solaris zone which acts as a single
system.
Dynamic System Domains are limited to high end servers like the Enterprise M Series servers and some
mid-range servers such as Sun Fire E series and Sun Fire 3800 or higher servers.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
6
Solaris Zones
Oracle Solaris Zones resource management is flexible and can be configured in many different ways to meet
the many requirements of customer applications and infrastructure. To meet the requirements of hard
partitions, three Oracle Solaris Zone resource management methods are valid:
• Use of the dedicated-cpu setting in zonecfg
• Use of the capped-cpu setting in zonecfg
• Use of a resource pool with a fixed set of assigned hardware threads and adding one or more Oracle
Solaris Zones to that resource pool.
The capped-cpu property of zonecfg defines the number of hardware threads (also known as CPUs or virtual
processors) which a given zone must not exceed.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
7
Use zonecfg to set this value for a zone as follows (note in this case the zone has already been created):
root:~# zonecfg -z capped-zone
zonecfg:capped-zone> add capped-cpu
zonecfg:capped-zone:capped-cpu> set ncpus=3
zonecfg:capped-zone:capped-cpu> end
zonecfg:capped-zone> verify
zonecfg:capped-zone> commit
zonecfg:capped-zone> exit
To check or validate the number of capped-cpus specified to the zone use the following:
root:~# zonecfg -z capped-zone info capped-cpu
capped-cpu:
[ncpus: 3.00]
Note that the upper limit of capped-cpus (actually hardware threads) is shown by the ncpus value, in this
case it is three CPUs (hardware threads). Also note that the ncpus value for a capped-cpu does not have to
be an integer and may include a fraction of a CPU. Following the method above there will be created an
Oracle Solaris Zone which is eligible to license only the sub-capacity of a server.
The final method to create an approved hard partition is to create a resource pool with a set number of CPUs
and add one or more zones to that resource pool. This has one advantage over the previous two methods
– multiple zones can effectively share a set of CPUs in a hard partition.
Perform the following commands to create a valid hard partition based on resource pools.
Enable resource pools:
root:~# pooladm –e
Create a processor set (pset) with the number of desired CPUs (hardware threads), in this case 16:
root:~# poolcfg -dc 'create pset orapset'
root:~# poolcfg -dc 'modify pset orapset (uint pset.max=16)'
root:~# poolcfg -dc 'modify pset orapset (uint pset.min=16)'
Create a pool to contain this pset, and associate the pset with it:
root:~# poolcfg -dc 'create pool orapool'
root:~# poolcfg -dc 'associate pool orapool (pset orapset)‘
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
8
2. Update the server resource pool settings with this configuration:
root:~# pooladm -s
3. Finally associate any zones with this resource pool hard partition (in this example two zones, orazone1
and orazone2 which have previously been created):
root:~# zonecfg -z orazone1 set pool=orapool
root:~# zonecfg -z orazone2 set pool=orapool
Note that in this example pset.max and pset.min were set to the same value, it is permissible to have different
values (i.e. a range). In the case of having a range the pset.max value would be used to calculate the number
of CPUs (hardware threads) for licensing purposes.
To check or validate the resource pool settings do the following:
For each zone that is a hard partition examine the pool association of the zone, in the output below it is
orapool:
root:~# zonecfg -z orazone1 info pool
pool: orapool
Next, examine the poolcfg information of the orapool setting for pset, in this example it is orapset. By
examining the orapset you’ll find out that pset.max is set to 16, this is the number of CPUs (or hardware
threads) that must be counted for licensing purposes:
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
9
Solaris LDOMs and Oracle VM Server for SPARC
Oracle VM (OVM) Server may be used as hard partitioning technology only as described in the following
documents:
• Oracle VM Server for x86, only if specific cores are allocated per this document.
• Oracle VM Server for SPARC, only if specific cores are allocated per this document.
According to the official documentation provided by Oracle, OVM may be used as hard partitioning which
means that it can also be considered soft partitioning if the hardware setup is not being made in accordance
with Oracle’s practices.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
10
How to license Oracle VM on Oracle’s Engineered Systems (Oracle Trusted Partitions) and how to license Oracle VM on other hardware (non-Oracle Engineered Systems)?
The below section will provide an overview on how to license the Oracle software programs if and when
Oracle VM is being used in conjunction with Oracle Engineered Systems or other hardware (non-Oracle
Engineered Systems).
Oracle Engineered Systems (Trusted Partition)
The below table provides an overview of the so called “approved” Oracle Engineered Systems:
Approved list of Oracle Engineered Systems eligible for Trusted Partitions
Oracle permits the use of Oracle VM Server (OVM) as a means to limit the number of Oracle Processor
licenses required, i.e., to license a sub-capacity of total physical cores on these environments, as long as a
number of conditions are met, including:
• You need to count two (2) virtual CPUs (vCPU) as equivalent to a physical core. Licenses must be
procured in increments of 2 physical cores.
• You are required to license the highest number of vCPUs running at any given time (highwater
mark), however they are not required to license more than the total number of physical cores in the
machine.
• You are required to enable Hyper-threading for processors when using Trusted Partitions.
• You are required to maintain a minimum for all other engineered systems of two (2) physical cores.
• You need to monitor the assigned cores to the virtual machines with Oracle Enterprise Manager
12.1.0.2 and run this either in a connected or a disconnected mode:
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
11
1) Connected mode: In Connected mode, Enterprise Manager will be connected to My Oracle
Support. Enterprise Manager would report on usage locally and also upload to My Oracle Support (requires
a current Oracle support contract and valid CSI number).
2) Disconnected mode: In disconnected mode, there is no Internet connectivity. Enterprise
Manager would run locally, and customers are required to run collections quarterly and maintain a backup
of the report. Such reports must be maintained for at least two (2) years, and reports must be provided to
Oracle upon request.
For more details regarding OVM partitioning, please check the policy.
OVM on non-Engineered Systems
Oracle VM Server for x86 can be considered hard partitioning (only the allocated cores will be considered
for licensing) only if the vCPUs are bound to a specific number of cores – which in the end will represent the
number of licensable Oracle cores.
Before setting up the OVM environment, a command needs to be run to understand what are the hardware
capabilities of the server.
Get a summary of the server hardware
On an Oracle VM Server, you can run the xm info command to print out the basic CPU configuration of the
server hardware. Look for the lines below in the output for details on your system’s CPUs.
The xenpm command prints out the thread/core/socket topology on a given server:
# xenpm get-cpu-topology
Get the CPU topology for vCPU bindings to physical CPUs:
The xm vcpu-list command shows a summary of which virtual CPUs are running on which physical CPUs.
# xm vcpu-list
The CPU affinity needs to be set to a specific number/range of physical cores in order for hard partitioning
to be considered. If it is set to any CPU the entire server will require to be licensed.
Oracle VM Server for SPARC refers to using CPU whole cores as constraints when setting up the LDOM’s.
Beginning with the Oracle VM Server for SPARC 2.0 release, hard partitioning is enforced by using CPU
whole core configurations and specifying the maximum number of cores that can be assigned to the domain.
To conform to the Oracle hard partition licensing requirement, you must use at least Oracle VM Server for
SPARC 2.0 release and must use CPU whole cores as follows:
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
12
• If a domain runs applications using Oracle hard partition licensing, that domain must be configured
with CPU whole cores, and the CPU cap (maximum number of CPU cores) must be set for the
domain. The CPU cap must be the number of CPU cores that is specified by the Oracle software
license.
• Live migration of guest domains with whole cores and a CPU cap does not conform to the terms of
the hard partition licensing. When live migration is used in an Oracle VM server pool, hard partition
licensing is not applicable. You must determine the number of guest domains running the Oracle
Software and then license the same number of physical servers (starting with the largest servers
based on the CPU core count) up to the total number of the physical servers in the pool.
For example, if you have a server pool with 32 servers and 20 guest domains running Oracle software within
the server pool, you must license the 20 largest physical servers in the pool. If you are running 50 guest
domains with Oracle Software in a pool of 32 physical servers, you need to license only the 32 physical
servers in the pool.
• Live migration of other guest domains with non-Oracle software within the server pool is not relevant
to Oracle software hard partitioning or has no impact to how Oracle software license is calculated.
• Trusted Partitions allow subset licensing without limitation on live migration, but only available on
the approved Oracle Engineered Systems listed on Oracle licensing policies for partitioned
environments.
To conform to the Oracle licensing policy requirements, you must set the CPU cap by using the following
command:
ldm set-domain max-cores=max-number-of-cpu-cores domain
So, there are 2 constrains that should be set when deciding to move to Oracle VM Server for SPARC:
• Using CPU whole cores
• Setting the max-cores to the number of cores you want to assign
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
13
Oracle licensing position
In order to comply with Oracle licensing practices, the following steps should be followed in order to have a
correct hard partitioning set-up:
1. Identify the containers that are running Oracle software in the zoneadm output command
2. Find the container’s resource pool in the pooladm command output
Not capped use the default resource pool, which is every available core on the system
Capped will have a processor set, map back to processor pool
3. Find the processor set that the container’s resource pool is using in the pooladm output command
Verify if the zone is properly capped by using the zonecfg -z “ZoneName” info command, only if the
zone was configured using the zone config utility.
4. Identify the cpus assigned to the container’s processor set.
5. Map the processor set’s cpus back to the physical processor from the prtdiag command
Only count cores once.
Note: Two containers may share the same core.
6. Apply core factor to the count of the total cores (for every container running Oracle).
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
14
PROs and CONs
PROs:
• Hard partitioning solution approved by Oracle as a mean to limit the number of processors;
• Containers can be created to limit the number of CPUs or cores that are available to an
application such as Oracle;
• Oracle offers support for using this virtualization solution;
• Solaris features can be used to limit software licensing costs when a processor based metric is
used. It also demonstrates the use of those features;
• The approved methods include the ability to limit a Solaris zone to a specific quantity of CPUs, or
the ability to limit a set of Solaris zones to a specific quantity of shared CPUs;
• Can be used as a second layer of virtualization when used with Logical Domains;
• Solaris containers can be configured in resource pools so that you can group multiple zones to
use the same HW resources.
CONs:
• If not all the virtualization conditions are met, Oracle can also classify Oracle Solaris Containers as
soft partitioning and the entire server will require to be licensed.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
15
Conclusion
Considering that cloud gains notoriety against traditional on premise deployment and the fact that the most
used virtualization technologies in the market are still the ones categorized as soft partitioning, Oracle Solaris
virtualization is a good option to go with.
One of the reasons is that Oracle provides support in configuring such environments to comply with the hard
partitioning requirements. Secondly, it offers a large range of configurations (using DSD, OVM or LDOM,
Solaris Zones) to suite the need of the infrastructure experts.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
16
Glossary of terms: Sun Solaris licensing concepts
A Solaris Container is the combination of system resource controls and the boundary separation
provided by zones. Zones act as completely isolated virtual servers within a single operating system
instance. By consolidating multiple sets of application services onto one system and by placing each into
isolated virtual server containers, system administrators can reduce cost and provide most of the same
protections of separate machines on a single machine.
Processor sets – A collection of one or more CPUs that are dedicated or assigned to a particular
resource pool.
Resource pool – The logical entity that owns a subset of system resources such as CPUs. This entity can
be attached to a zone, thus creating a Container
Virtual CPU – A logical representation of a physical processor or core to a virtual machine
Zones – A partitioning technology that provides isolated virtual servers can be bound to a specified
Resource Pool (set of processors) upon creation or can also be assigned a capped or dedicated CPU.
Multiple zones can be bound to the same resource pool
Container – A combination of system resource controls and boundary separation provided by zones using
the operating system's resource management facility.
Container = Solaris Resource Pool + Zone
“capped” = number of processors for a zone have been limited.
©2017 B-lay BV. All rights reserved.
ORACLE LICENSING ON SUN SOLARIS EXPLAINED
About the author - Adrian Cristache, Technical Specialist "Dream as if you'll live forever. Live as if you'll die today."- James Dean
Adrian is one of B-lay's Senior Technical Analysts. In his previous role as Senior Technical Analyst in Oracle's License Management Services department, Adrian was involved in more than 1000 customer engagements. He is now using his Software Asset and License Management experience and knowledge to provide valuable licensing advice, helping end users to maximize the efficiency of their software entitlements. Adrian holds a master degree in IT - Database development for business support - from the Academy of Economic Studies of Bucharest.
Contact Adrian: [email protected]
We share our knowledge, so you can focus on the facts! Do you want to know more about different related license management topics, we have a selection of white papers available through www.b-lay.com. If you are in need of extra expertise and a structured approach, feel free to contact B-lay. We will help you make software compliance an exciting opportunity to improve your business!
About B-lay B-lay is a specialist in software license management and provides services around software compliance, software audits, software asset management tools and insight in software spend. Our services offer organizations worldwide insight into the risks associated with software licenses, help prevent license compliance issues and help create considerable cost savings by optimizing their licensing position. B-lay was founded in 2008 and has offices in the Netherlands, Romania and the US.
B-lay BV | Maliebaan 79 | 3581 CG Utrecht | The Netherlands | [email protected] | www.b-lay.com | +31 88 0233 700