Note:
- This tutorial requires access to Oracle Cloud. To sign up for a free account, see Get started with Oracle Cloud Infrastructure Free Tier.
- It uses example values for Oracle Cloud Infrastructure credentials, tenancy, and compartments. When completing your lab, substitute these values with ones specific to your cloud environment.
Scale CPU Resources on Oracle Exadata Database Service on Cloud@Customer
Introduction
To optimize consumption on Oracle Exadata Database Service on Cloud@Customer you want to scale your CPU resources to match the actual performance requirements at any given time of your Oracle Database workloads. Oracle Exadata Database Service on Cloud@Customer provides you several tools for scaling, which you can choose from based on your specific requirements.
Objectives
-
Scale CPU resources allocated to a VM cluster on Oracle Exadata Database Service on Cloud@Customer. The following methods will be covered:
- Method 1: Scale CPU resources manually from the OCI Console.
- Method 2: Scale CPU resources with Oracle Cloud Infrastructure Command Line Interface (OCI CLI).
- Method 3: Scale CPU resources with the
dbaascli
command in disconnected mode.
Note: The following methods are working for VM clusters using both ECPU and OCPU resources. OCPU and ECPU are the standard billing metric for Oracle Exadata Database Service on Cloud@Customer. An OCPU is based on the number of cores per hour allocated for the VM clusters running on the database servers. ECPU is a virtual CPU with a given ratio to the allocated core, which has replaced the previously used OCPU metric, starting with the X11M generation for the Oracle Database service on Oracle Exadata Database Service on Cloud@Customer.
Prerequisites
-
Access to an OCI tenancy with an Oracle Exadata Database Service on Cloud@Customer infrastructure.
-
A user created in the tenancy, in a group with a policy that grants the desired permissions.
-
A running VM cluster on the Oracle Exadata Database Service on Cloud@Customer.
-
For OCI CLI, you need:
-
A supported version of Python environment installed on a supported Operating System with access to the OCI tenancy. For more information, see Supported Python Versions and Operating Systems.
-
A keypair used for signing API requests, with the public key uploaded to Oracle.
-
Method 1: Scale CPU Resources Manually from the OCI Console
The most straightforward way to scale the CPU resources allocated to a VM cluster is to do it on the OCI Console. This is sufficient for one-time operations, which are not reoccurring on a frequent basis and where automation is not required.
-
Log in to the OCI Console and open the navigation menu.
-
Under Oracle Database, click Oracle Exadata Database Service on Cloud@Customer.
-
Select Region and Compartment that contains the VM cluster for which you want to scale the CPU resources.
-
Click Exadata VM Clusters.
-
Click the name of the VM cluster for which you want to scale the CPU resources.
-
Click Scale VM Resources.
-
In Scale VM Cluster, specify the OCPU (ECPU for X11M) count value per VM and click Save Changes.
You can see the total number of OCPUs/ECPUs allocated to the VM cluster on the right-hand side. The minimum increment for OCPU is one and for ECPU is four.
Note: When you set the number of OCPUs (ECPUs for X11M) to zero, will shut down the VM cluster and eliminate any billing for that VM cluster, but the hypervisor will still reserve the minimum 2 OCPUs (8 ECPUs for X11M) for each VM. These reserved OCPUs (ECPUs for X11M) cannot be allocated to any other VMs, even though the VM to which they are allocated is shut down. The Control Plane does not account for reserved OCPUs (ECPUs for X11M) when showing maximum available OCPU (ECPU for X11M), so you should account for these reserved OCPUs (ECPUs for X11M) when performing any subsequent scaling operations to ensure the operation can acquire enough OCPUs (ECPUs for X11M) to successfully complete the operation.
Method 2: Scale CPU Resources with OCI CLI
The OCI CLI is a small-footprint tool that you can use on its own or with the console to complete OCI tasks. The OCI CLI provides the same core functionality as the console, plus additional commands. Some of these, such as the ability to run scripts, extend the console functionality.
The OCI CLI is built on the OCI SDK for Python and runs on Mac, Windows, or Linux. The Python code makes calls to OCI APIs to provide the functionality implemented for the various services including Oracle Exadata Database Service on Cloud@Customer. These calls are REST APIs that use HTTPS requests and responses.
-
Download OCI CLI for your operating system from here: OCI CLI GitHub repository.
-
Follow the installation instructions for your operating system mentioned here: Installing the CLI.
-
Run the following command to verify your installation.
$ oci --version
-
Set up a configuration using the setup dialog that contains the required credentials for working with OCI.
$ oci setup config
-
Verify your configuration file. For example:
[DEFAULT] user=ocid1.user.oc1..<unique_ID> fingerprint=<your_fingerprint> key_file=~/.oci/oci_api_key.pem tenancy=ocid1.tenancy.oc1..<unique_ID> # Some comment region=us-ashburn-1
-
You can check your connectivity by running the following command, which will show the namespace of your tenancy.
$ oci os ns get
-
Run the following command to list your available compartments.
$ oci iam compartment list
-
Run the following command to list your available VM clusters in a compartment.
$ oci db vm-cluster list –-compartment-id <Compartment OCID>
-
Scale the CPU resources under the VM cluster.
$ oci db vm-cluster update –-vm-cluster-id <VM Cluster OCID> –-cpu-core-count <number of OCPUs>
-
Run the following command to check the successful scaling of the VM cluster.
$ oci db vm-cluster get --vm-cluster-id <VM Cluster OCID>
Note:
OCI CLI is well suited to automate certain tasks, that we must execute with a certain regularity. We can automate and schedule the execution of these tasks utilizing the scheduling features of the operating system like cron on Linux and Mac, and Task Scheduler on Windows or third-party tools.
OCI CLI offers an interactive feature, which can help you discover the different commands and the required parameters and can also help you in typing out those commands. You can enter the interactive mode using the following command
$ oci -i
Method 3: Scale CPU Resources with the dbaascli
Command in Disconnected Mode
You can use the dbaascli
utility to perform various database lifecycle and administration operations on Oracle Exadata Database Service on Cloud@Customer including scaling the CPU resources under your VM cluster when your Oracle Exadata Database Service on Cloud@Customer is in disconnected mode.
To use the utility, you must be connected to an Oracle Exadata Database Service on Cloud@Customer virtual machine, and you need root access to be able to run all the dbaascli
administration commands.
Note: The command is designed not to work in connected mode and will time out after 600 seconds (10 minutes). It should only be used in disconnected mode.
-
Run the following command to scale your CPU core count.
#dbaascli cpuscale update --coreCount <coreCount> --message <message> Where: --coreCount specifies the number of CPUs that you want to scale up or down per VM in a cluster --message is optional, you can include a message for your reference
-
Run the following command to check the result of the operation, which will show the current or last scaling operation initiated by the
dbaascli
utility#dbaascli cpuscale get_status
Related Links
-
Oracle Cloud Infrastructure Command Line Interface (OCI CLI)
-
Oracle Cloud Infrastructure Command Line Interface Command Reference
-
Using the dbaascli Utility with Oracle Exadata Database Service on Cloud@Customer
Acknowledgments
-
Author - Zsolt Szokol (Exadata Cloud@Customer Specialist)
-
Contributor - Melanie Benham (Exadata Cloud@Customer Specialist Leader)
More Learning Resources
Explore other labs on docs.oracle.com/learn or access more free learning content on the Oracle Learning YouTube channel. Additionally, visit education.oracle.com/learning-explorer to become an Oracle Learning Explorer.
For product documentation, visit Oracle Help Center.
Scale CPU Resources on Oracle Exadata Database Service on Cloud@Customer
G29754-02
Copyright ©2025, Oracle and/or its affiliates.