Uncategorized

Oracle Docker Licensing Requirements

Oracle licensing in Docker and containers involves the following key points:

  • Hosts or Nodes Licensing: Once an Oracle Program is pulled into a Docker container on a host or Kubernetes node, the entire host or node must be licensed for the number of processors it has.
  • Physical and Virtual Hosts: All processors need licenses for physical hosts. The Oracle Partitioning Policy Document guidelines apply to virtual hosts.
  • Container Resource Allocation: Oracle does not recognize container technologies as a hard partitioning method for licensing purposes.

Oracle Docker Licensing – Requirements for Oracle Programs in Containers and Kubernetes Clusters

Oracle Docker Licensing - Requirements for Oracle Programs in Containers and Kubernetes Clusters

Oracle Programs may run in containers, such as Docker containers, that use Linux kernel and container technologies. These containers may run on physical or virtual hosts, including Kubernetes nodes in Kubernetes clusters.

The Oracle partitioning policy document defines the licensing requirements for hosts or Kubernetes nodes that may run Oracle Programs in such containers. Note that this policy does not apply to Solaris Containers, Solaris Zones, or Windows Containers.

Once a container image containing Oracle Programs has been pulled to a host or Kubernetes node, whether a virtual or physical machine, the host or node must be licensed for its number of processors.

The number of processors on the host or node for physical machines equals the number of processors that must be licensed. The number of processors on the host or node must adhere to the Oracle Partitioning Policy Document guidelines for virtual machines.

A Step-by-Step Guide for Configuring Hosts to Run Oracle Programs in Containers

oracle docker container licensing

Running Oracle Programs in containerized environments requires a thorough understanding of licensing requirements to ensure compliance. Oracle has outlined specific guidelines for configuring physical and virtual hosts running Oracle Programs in containers. Here’s how to navigate this process step by step:


Step 1: Identify Images Containing Oracle Programs

  • Purpose: The first step is determining which container images contain Oracle binaries. This is critical for managing each host’s licensing obligations.
  • Why It Matters: Every image containing Oracle Programs introduces licensing requirements for the host where it is used. Keeping a clear inventory of these images helps avoid unnecessary licensing costs.

Example: If you create multiple container images with Oracle Database binaries, ensure that only authorized hosts can access them.


Step 2: Understand Licensing Requirements for Hosts

  • Physical Hosts:
    • All processors on a physical host must be licensed if an Oracle Program image is pulled onto it.
    • Example: A host with eight processors must license all eight, regardless of how much of the host’s capacity the container uses.
  • Virtual Hosts:
    • Licensing is determined by the Oracle Partitioning Policy, which specifies how many virtual processors need to be licensed.
    • Example: In a virtualized environment with 2 VMs, you must license the processors assigned to the VM running the Oracle Program.

Tip: Control which hosts pull Oracle images to reduce licensing obligations.


Step 3: Configure Container File Systems

  • Unique File Systems: Container file systems are specific to the container runtime and cannot be shared between hosts.
  • Licensing Impact:
    • A host pulling an image with Oracle Programs into its container file system creates a licensing obligation only for that host.
    • Other hosts accessing the same storage server are unaffected unless they pull the Oracle image.

For example, if a shared storage server hosts Oracle images, licensing is only required for the hosts that actively pull and run those images.


Step 4: Allocate Resources with Awareness of Licensing Policies

  • Resource Allocation: Container technologies allow assigning specific CPU or RAM resources to containers. However:
    • Oracle’s Stance: Under the Oracle Partitioning Policy, Oracle does not consider these resource allocation features to be “hard partitioning” technologies.
    • Implication: Licensing must still cover all processors on the host, regardless of the subset used by the container.

Example: Assigning 2 out of 8 CPUs to a container does not reduce the licensing requirement for the remaining CPUs on the host.


Step 5: Monitor and Manage Image Pull Operations

  • Each Pull = Installation: Every pull of an image containing Oracle Programs is treated as an installation, creating a licensing obligation for the host.
  • Control Access: Limit the number of hosts that can pull Oracle images to minimize licensing costs.

Example: If five hosts pull the same Oracle Database image, all five must be licensed, even if the image is stored on shared storage.

FAQs

What are containers, and how are they used with Oracle Programs?

What are containers, and how are they used with Oracle Programs?

Containers are a lightweight virtualization technology used to package and distribute software applications. With containers, users can deploy applications more quickly and easily than traditional virtual machines. Oracle Programs may run in containers like Docker on physical or virtual hosts, including Kubernetes nodes in Kubernetes clusters.

Who is responsible for managing the licensing requirements for Oracle Programs in containers?

Customers are responsible for identifying which images contain binaries with Oracle Programs and managing the licensing requirements for each host that has pulled an image containing Oracle Programs.

What are the licensing requirements for each host that has pulled an image containing Oracle Programs?

Users can inspect the container image to determine whether it contains Oracle Programs. Oracle recommends that customers carefully manage the number of hosts pulling images containing Oracle Programs.

What are the licensing requirements for each host that has pulled an image containing Oracle Programs?

Every host that has pulled an image containing Oracle Programs must have the appropriate licenses to run them. If a host is physical, licenses for the Oracle Programs are required for all processors on that physical host. If the host is virtual, the Oracle Partitioning Policy determines the number of processors that require a license for the Oracle Programs.

Can I use container resource allocation to limit Oracle licensing requirements?

No. Container technologies allow users to assign a subset of host resources, such as RAM or CPU, to the container. However, Oracle does not recognize these technologies as hard partitioning technologies, as defined in the Oracle Partitioning Policy document. Users should not expect these container technology features to limit Oracle licensing requirements.

Do you want to know more about our Oracle License Management Services?

Please enable JavaScript in your browser to complete this form.
Author
  • Fredrik Filipsson brings two decades of Oracle license management experience, including a nine-year tenure at Oracle and 11 years in Oracle license consulting. His expertise extends across leading IT corporations like IBM, enriching his profile with a broad spectrum of software and cloud projects. Filipsson's proficiency encompasses IBM, SAP, Microsoft, and Salesforce platforms, alongside significant involvement in Microsoft Copilot and AI initiatives, improving organizational efficiency.

    View all posts