#OraOperator goes Production

Kuassi Mensah
3 min readJul 6, 2023
OraOperator

I am very pleased to announce that the long overdue production release (v 1.0.0) of the Oracle Database Operator for Kubernetes (a.k.a. OraOperator) has been released.

What’s In It?

In this release, OraOperator supports containerized databases, database services deployed on the Oracle Cloud Infrastructure (OCI), and on-premises databases.

Containerized Databases

The Oracle database images (custom-built or from the container registry) are deployed within the Kubernetes cluster alongside OraOperator. These databases can be deployed in any Kubernetes cluster where the operator runs including OKE, 3rd party Kubernetes clusters, on-premises Kubernetes (Oracle Linux), and so on.

Let’s sum up the lifecycle operations supported for each kind.

Single Instance Databases (a.k.a. SIDB)

The Single Instance DB controller supports the following Oracle database editions: Standard Edition (SE), Enterprise Edition (EE), eXpress Edition (XE), and DB23c Free.

The supported lifecycle operations include: provisioning a new database instance, provisioning a new pre-built database instance, cloning a database, patching a database (in-place/out-of-place), deleting a database, and updating the database init parameters.
The SIDB controller furnishes additional features such as REST enabling a database, running multiple replicas of a database, setting up a database with LoadBalancer, installing APEX, enabling TCPS connections, and getting the connect string to the CDB.
For more details, please refer to the SIDB Readme (under the …/doc/sidb folder).

Sharded Databases

An Oracle Sharding database is made of Shards. Containerized Shards are deployed over several Kubernetes pods.

The Sharding Database controller supports the following lifecycle operations: deploy the Shard topology (i.e., the Sharding infrastructure) using various options (check out the …/doc/sharding/Readme.md for more details), Add a Shard, Delete a Shard, Clone a Shard.

Data Guard (Preview)

In this release, a new Data Guard controller is introduced as a preview.

This controller allows creating a Standby Database for a Single Instance database (see the prerequisites in …/doc/sidb), adding databases in the Data Guard configuration, and deleting a database configured for Data Guard.
Additional operations include connecting to the Primary, performing a Switchover, and patching the Primary and the Standby databases.

OCI-Only Databases

The operator manages also the lifecycle of Cloud database services deployed in the Oracle Cloud Infrastructure (OCI), outside the OKE Kubernetes cluster. Unlike containerized databases, these Cloud database services are only available/deployable in Oracle Cloud.

Autonomous Database (Shared, Dedicated)

Autonomous Databases are the flagship Oracle Cloud database services and come in two flavors: shared infrastructure (a.k.a. ADB-S) and dedicated infrastructure (a.k.a. ADB-D). ADB refers to both flavors. The infrastructure is known as the Autonomous Container Database (ACD).

The Autonomous Database controller supports the following lifecycle operations: provisioning an Autonomous Database (ADB), binding the operator to an existing ADB, scaling Up/Down the OCPU core count or the storage, managing the database ADMIN password, downloading ADB instance credentials (i.e., wallets), Starting/Stopping/Terminating an ADB, and deleting anADB from the resources (CRDs) known by the operator.

Base DB (formerly DBCS)

The Oracle Base Database Cloud Service allows deploying single-node and two-node database systems on virtual machines. See more details about the supported database editions and versions, here.

The BaseDB controller supports the following lifecycle operations: provision a BaseDB, binding to an existing BaseDB, scaling UP/DOWN the shape of an existing BaseDB, scaling UP the storage of an existing Base DB, deploying a two-nodes RAC, updating the license type, and terminating an existing BaseDB.

On-Premises Databases

Multitenant Databases (Exadata, PDBs)

A multitenant controller enables managing the lifecycle of pluggable databases (a.k.a. PDBs) associated with a Container database (a.k.a. CDB). The Oracle REST Data Service is required for reaching the PDBs.

The controller supports the creation of a new PDB, cloning a PDB, modifying the state of a PDB, unplugging a PDB from a CDB, plugging an unplugged PDB into a CDB, and deleting a PDB.

Pre-installed on OKE

On OCI, OraOperator is pre-installed and ready to use as an Add-on to OKE Console deployment. In future releases, a button will automatically provision Cloud database services (i.e., the Autonomous Databases and BaseDB).

Resources

Livelab: Oracle Database Operator for Kubernetes + DevOps.

Get help either by submitting a GitHub issue and/or filing an Oracle Support service request against the Oracle Database Operator for Kubernetes (product ID: 14423).

Visit our website for the latest news about Oracle Databases, Containers, and Kubernetes.

Follow @kmensah and #OraOperator for notifications, questions, and discussions.

Thanks for reading.

--

--

Kuassi Mensah

Director of Product Management for Java access to Oracle DB: Microservices, Serverless Functions, Reactive, Hadoop, Spark, Java EE, JVM-based languages.