As organizations embrace multicloud strategies, Oracle Database@Google Cloud provides a seamless way to run Oracle databases alongside Google Cloud services.

Oracle Zero Downtime Migration (ZDM) is a recommended solution for migrating databases to Oracle Database@Google Cloud. Customers can choose either physical or logical migration methods based on their requirements.

For ZDM logical online migrations, Oracle GoldenGate(GG) enables real-time data replication between source and target databases, minimizing downtime during migration. This requires Oracle GoldenGate to be deployed in a Docker container on a virtual machine (VM).

In this blog, we’ll walk through the steps to deploy Oracle GoldenGate in Docker for a ZDM logical migration to Oracle Database@Google Cloud.

Prerequisites

It is important to have the required roles for creating a VM in Google Cloud.

You should also have an Oracle Account for login to Oracle Container Registry.

I have assumed that you have either deployed Oracle Database@Google Cloud instance or you have decided which region and VPC will be used for the deployment.

I have divided the blog as below sections.

Step 1 – Provision a VM

Step 2 – Deploying GG Docker

Step 1 – Provision a VM

We need a VM with in the same region as our Oracle Database@Google Cloud which we can use as a the host for GlodenGate Docker.

For ease of configuration , I would also recommend to provision VM in same VPC as our Oracle Database@Google Cloud.

I will use Oracle Linux 9 as the OS for my VM . You can use any supported OS for Oracle GoldenGate docker.

Navigate to VM Instances from the main menu of Google Cloud.

Select Create Instance on VM instances page to get started.

Provide below details on Machine configuration page.

Name – Name of the VM instance

Region – Select same region as your Oracle Database@Google Cloud.

Zone – You can leave it to the default.

Select Machine type and leave everything to default on the Machine configuration page.

On the Operating system and storage page , select Change to modify the Image and size.

I have made below changes. Please make selections based on your requirement.

On Networking page , I have selected same VPC as our Oracle Database@Google Cloud and also selected a subnet under the VPC.

I haven’t made any changes in any other sections .

Select Create to proceed with VM creation.

Our VM will be available in few minutes.

Step 2 – Deploying GG Docker

We now have a VM which we can use as host for GG docker.

2.1 Accept Oracle License agreement.

Login to Oracle Container registry using your Oracle Account credentials and select the respective container repository and accept the license agreement.

At the time of writing this blog , I have used goldengate-oracle-multicloud-migrations repository.

Please check the documentation about the licensing terms and reach out to Oracle Sales or Support for any clarity on Oracle GoldenGate Licensing for Database migration.

2.2 Create an Auth Token.

We need an Auth Token for login to Oracle Container Registry using docker/podman CLI.

Please follow documentation to generate an Auth Token.

2.3 Install and verify podman

# sudo dnf install podman
# sudo podman --version

Below is sample output.

2.4 Login to Oracle Container Registry

#sudo podman login container-registry.oracle.com

You will be asked to provide your Oracle Account username and the Auth Token (from 2.2).

Below is sample output.

2.5 Run the Docker image

# sudo podman run -d -p 443:443 -e OGG_ADMIN=oggadmin -e OGG_ADMIN_PWD=<password_of_your_choice> container-registry.oracle.com/goldengate/goldengate-oracle-multicloud-migrations:latest --name ogg26

where :

-d – runs the container in the background

-p 443:443 – The host port to map to the Oracle GoldenGate Service Manager port 443.

-e OGG_ADMIN – The name of the administrative account to create.

-e OGG_ADMIN_PWD- The password for the administrative account.

–name – assigns a container name.

container-registry.oracle.com/goldengate/goldengate-oracle-multicloud-migrations:latest – This is the repository name with tag . You can get this from the Oracle container registry website (look for pull command).

Above command will also perform the pull image as part the command.

Ensure that you replace <password_of_your_choice> with a password for oggadmin which should meet below requirements.

Password should contain at least: one lowercase [a..z] character, one uppercase [A..Z] character, one digit [0..9], and one special character [- ! @ % & * . # _]. Length should be between 8..30 characters.

Below is a successful output.

2.7 Check the docker status

sudo podman ps

Below is sample output.

We have now successfully deployed Oracle GoldenGate docker on VM .

Please follow the steps in one of the below ZDM documentation(choose based on your target) for further configuration required for ZDM logical online migration.

Logical Online Migration to ADB-S on Oracle Database@Google Cloud.

Logical Online Migration to ExaDB-D on Oracle Database@Google Cloud.

Tips :

Please note that you should decide size of GG VM depending on your requirement . Please refer documentation for help.

Leave a Reply

Discover more from Lessons from my journey with databases

Subscribe now to keep reading and get access to the full archive.

Continue reading