Migrate to Oracle Autonomous Database Serverless

This section describes how to migrate your on-premise VMware database workloads to Oracle Autonomous Database Serverless, and application workloads to Oracle Cloud VMware Solution.

Architecture

This architecture shows a migration from on-premise VMware database and applications to Oracle Cloud Infrastructure.

The first step is to migrate your on-premises databases and applications running on VMware to Oracle Cloud VMware Solution using VMware tools such as HCX and vMotion. Oracle Cloud VMware Solution gives you a fully automated implementation of a VMware software-defined data center (SDDC) within your OCI tenancy, running on OCI bare metal instances.

Next, using Oracle Zero Downtime Migration, automate your database migration from Oracle Cloud VMware Solution to Oracle Autonomous Database Serverless to consolidate to a high-performance database platform.

Note:

Oracle Database licensing rules and support conditions must be observed when migrating databases from on-premises VMware to Oracle Cloud VMware Solution.

The following diagram illustrates this reference architecture.



migrate-vmware-autonomous-serverless-architecture.zip

This architecture supports the following components:

  • Region

    An Oracle Cloud Infrastructure region is a localized geographic area that contains one or more data centers, called availability domains. Regions are independent of other regions, and vast distances can separate them (across countries or even continents).

  • Virtual cloud network (VCN) and subnet

    A VCN is a customizable, software-defined network that you set up in an Oracle Cloud Infrastructure region. Like traditional data center networks, VCNs give you complete control over your network environment. A VCN can have multiple non-overlapping CIDR blocks that you can change after you create the VCN. You can segment a VCN into subnets, which can be scoped to a region or to an availability domain. Each subnet consists of a contiguous range of addresses that don't overlap with the other subnets in the VCN. You can change the size of a subnet after creation. A subnet can be public or private.

  • Oracle Autonomous Database Serverless

    Oracle Autonomous Database Serverless provides access to the latest autonomous database technology. With Autonomous Database you have a fully elastic database where Oracle autonomously operates all aspects of the database lifecycle from database placement to backup and updates.

  • Oracle Cloud VMware Solution Software-Defined Data Center (SDDC)

    Oracle and VMware have partnered to develop a VMware certified Software-Defined Data Center (SDDC) implementation for use within Oracle Cloud Infrastructure. This implementation, called the Oracle Cloud VMware Solution, uses Oracle Cloud Infrastructure to host a highly available VMware SDDC. It also allows seamless migration of all your on-premises VMware SDDC workloads to Oracle Cloud VMware Solution. Oracle Cloud VMware Solution contains the following VMware components:

    • VMware vSphere ESXi
    • VMware vSAN
    • VMware vCenter
    • VMware NSX-T
    • VMware HCX (optional)
  • Bare metal

    An Oracle Cloud VMware Solution Software-Defined Data Center (SDDC) contains bare metal servers hosting Oracle Cloud VMware Solution. The bare metal server supports applications that require high core counts, large amounts of memory, and high bandwidth (such as Oracle Cloud VMware Solution). You can deploy Oracle Cloud VMware Solution on bare metal servers, and configure virtual machines with significant performance improvements compared to other public clouds and on-premises data centers.

  • Service gateway

    The service gateway provides access from a VCN to other services, such as Oracle Cloud Infrastructure Object Storage. The traffic from the VCN to the Oracle service travels over the Oracle network fabric and never traverses the internet.

  • Dynamic routing gateway (DRG)

    The DRG is a virtual router that provides a path for private network traffic between VCNs in the same region, between a VCN and a network outside the region, such as a VCN in another Oracle Cloud Infrastructure region, an on-premises network, or a network in another cloud provider.

  • FastConnect

    Oracle Cloud Infrastructure FastConnect provides an easy way to create a dedicated, private connection between your data center and Oracle Cloud Infrastructure. FastConnect provides higher-bandwidth options and a more reliable networking experience when compared with internet-based connections.

  • File storage

    OCI File Storage is used during logical migration to import the migrated database from a shared file system.

  • Object storage

    OCI Object Storage is used for temporary storage of database backups and exports during migration.

Before You Begin

Before you begin, check the versions of major components used in this setup, and review the product documentation for later reference.

Review Requirements

  • Ensure the source Oracle Cloud VMware Solution database VM is running Oracle Linux 7.9, and Oracle Database version 19.18 Standard Edition or Enterprise Edition.
  • Target Oracle Autonomous Database Serverless databases that use up to 8 OCPUs may run Oracle Standard Edition. Databases that use more than 8 OCPUs must run Oracle Enterprise Extreme Performance version 19.19.0.1.0 or above.
  • Oracle Zero Downtime Migration must be version 21.4 or above.
  • Intermediate storage must include OCI Object Storage and OCI File Storage.

Review Documentation

This solution playbook describes how to migrate your database workloads. Refer to the solution below to learn how to migrate your VMware workloads. The additional resources are helpful for context, details, and reference for your database migration.

Learn how to migrate the VMware components of your workload to Oracle Cloud VMware Solution.

Review Oracle Zero Downtime Migration resources:

Review logical migration resources:

Review Oracle Database resources:

About Required Products and Roles

This solution requires the following products:

  • Oracle Cloud Infrastructure Identity and Access Management
  • OCI Compute
  • OCI Object Storage
  • OCI File Storage
  • Oracle Zero Downtime Migration
  • Oracle Cloud VMware Solution
  • Oracle Autonomous Database Serverless

These are the roles needed for each product.

Product Name: Role Required to...
Oracle Cloud Infrastructure Identity and Access Management: OCI_user Create API keys for logical migration
OCI Compute: admin Create OCI Compute instance to run Oracle Zero Downtime Migration software
OCI Object Storage: Storage Admin Create OCI Object Storage buckets
OCI File Storage: Storage Admin Create OCI File Storage for export/import operations
Oracle Zero Downtime Migration: opc Create zdmuser to install and run Oracle Zero Downtime Migration software
Oracle Zero Downtime Migration: zdmuser
  • Install Oracle Zero Downtime Migration software
  • Run Oracle Zero Downtime Migration
Oracle Cloud VMware Solution Virtual Machine: root/sudoer user
  • Mount network file system share from OCI File Storage to export database for logical migrations
  • Enable passwordless ssh from Oracle Zero Downtime Migration virtual machine
  • Run sudo commands to install Oracle Zero Downtime Migration software agent
  • Run sudo commands to backup or export database
Oracle Cloud VMware Solution Database: sys/system Run Data Pump to export database
OCI Oracle Cloud VMware Solution and OCI Virtual Cloud Network: Admin
  • Modify Oracle Cloud VMware Solution configuration to add OCI Services Gateway, routing, and security rules
  • Modify Oracle Cloud VMware Solution configuration to add routing and security rules to the virtual cloud network subnet where the target database is running
Oracle Autonomous Database Serverless: Database Admin Create target database
Oracle Autonomous Database Serverless: ADMIN Run Data Pump to import database

See Oracle Products, Solutions, and Services to get what you need.

Considerations for Migration

Before you begin your migration, review these assumptions and considerations.

  • Logical migration is the only supported migration method.
  • During logical migration, pluggable databases (PDBs) and/or schemas are migrated. Non-container databases (non-CDB) are migrated to a Oracle Autonomous Database Serverless database.
  • During logical migration, Oracle Zero Downtime Migration will not export the data directly to OCI Object Storage. On the source database, Oracle Zero Downtime Migration exports data to a shared file system (either network file system or Oracle Advanced Cluster File System). Exported data is then uploaded to OCI Object Storage. The target database imports data from OCI Object Storage.
  • The source database can run Oracle single-instance. Oracle Autonomous Database Serverless always runs RAC databases. During database migration, Oracle Zero Downtime Migration converts single-instance to RAC databases when required.
  • Oracle Transparent Data Encryption database encryption is optional for the Oracle Cloud VMware Solution database VM source database. When migrating databases to Oracle Autonomous Database Serverless, the target database will always be encrypted.
  • The source and target databases must run the same timezone files. For instructions, refer to "Upgrading the Time Zone File and Timestamp with Time Zone Data" and "Manage Time Zone File Version on Autonomous Database" in the Review Documentation section.
  • The steps in this playbook assume there is direct network connectivity from the Oracle Cloud VMware Solution Overlay Network (where the database VM is installed), to the OCI VCN where the Oracle Zero Downtime Migration VM will be configured, and to the OCI Service Network where the target Oracle Autonomous Database Serverless database will be running (shown in the architecture diagram).
  • Oracle Autonomous Database Serverless supports only one standard tablespace called DATA. All tables must be placed on this tablespace. If the source database uses custom tablespaces, they must be remapped to the DATA tablespace during migration.
  • The source and target databases do not have to have the same sys password, ADMIN password, wallet password, database version, database name, and patch level.

Migrate Using Logical Migration

The following steps describe how to perform an offline logical migration. For online migration, see Step-by-Step Guide - Logical Online Migration from On-Premises to Oracle Autonomous Database in the Review Documentation section.

  1. In the OCI console, verify the following workflows were run when Oracle Cloud VMware Solution was deployed:
    • Configure connectivity to Oracle Services Network
    • Configure connectivity to VCN resources
    These workflows allow the VMs running in the Oracle Cloud VMware Solution NSX Overlay to communicate with the Oracle Services Network and the VCN where the Oracle Zero Downtime Migration server is configured, or will be running. Run these workflows if they haven't been run yet to configure all required security and routing rules.
  2. Create a target Oracle Autonomous Database Serverless database using the OCI console or REST API. Configure the database as follows:
    • The new target database can have a different name than the source database.
    • The new database can be a newer version than the source database.
    • Provide a password for the ADMIN user. Take note of the password.
    Note the database OCID after the database is created.
  3. In the OCI console, create a compute instance in the same VCN where the target database will be configured.
    This compute instance can be any shape, with at least two OCPUs and 16GB of RAM, running the Oracle Linux 7.9 operating system. This virtual machine will be used to run the Oracle Zero Downtime Migration software.
  4. Follow the Oracle Zero Downtime Migration installation documentation in the Review Documentation section to download and install Oracle Zero Downtime Migration 21.4 software on the OCI compute instance.
    Run Oracle Zero Downtime Migration software as the zdmuser.
  5. Ensure the Oracle Zero Downtime Migration VM can communicate with the source database hosts using hostname and IP address. Modify the VCN DNS resolver, or the /etc/hosts file in the Oracle Zero Downtime Migration VM if necessary. Verify the following:
    • Verify there is a security rule that allows the Oracle Zero Downtime Migration VM to connect to the source database on the default listener port 1521 and ssh port 22.
    • Ensure the Oracle Zero Downtime Migration VM can reach the target database hosts on the listener ports 1521 and 1522.
  6. Log in as the zdmuser to the compute instance running Oracle Zero Downtime Migration software, and generate an ssh key-pair. Enable passwordless ssh from the zdmuser account to all nodes on the source Oracle Cloud VMware Solution database VM (root, privilege-sudoer user).
  7. In the OCI console, create an OCI File Storage.
    Note the mount target, export, and IP address on the VCN.
  8. Follow the steps in "Configuring VCN Security Rules for File Storage" in the Review Documentation section to create rules to allow the network file system protocol from the OCI NSX Overlay network to the OCI File Storage IP address created in step 7.
  9. Use the IP address and Export from step 7 to mount this OCI File Storage via network file system on the source Oracle Cloud VMware Solution database VM. Note the mount point.
  10. In the OCI console, create an OCI Object Storage bucket if one does not already exist.
    Note the Swift URL, object storage namespace, and bucket name.
  11. In the OCI console, create an API key for the OCI user who owns the target database, and also has permissions to upload data to the bucket created in step 10.
    Note the user OCID, tenancy OCID, fingerprint, and OCI region. Save the corresponding private and public keys on PEM files. This API key will be used by Oracle Zero Downtime Migration to connect to OCI to obtain target database information during database migration, and to upload data dumps to OCI Object Storage.
  12. Copy the PEM files from the previous step to the Oracle Zero Downtime Migration VM.
  13. Log in as the sys user to the source database to ensure the parameter Streams_Pool_Size is set to at least 2G, for example:
    SQL>show parameter streams_pool_size;
    SQL>alter system set streams_pool_size=2G scope=both SID=’*’;                  
  14. Use Oracle Zero Downtime Migration's logical migration response file template included with Zero Downtime Migration to create a response file for the migration. Key parameters are:
    • TARGETDATABASE_OCID: OCID of the target database created in step 2.
    • MIGRATION_METHOD: OFFLINE_LOGICAL
    • DATA_TRANSFER_MEDIUM: OSS
    • TARGETDATABASE_ADMINUSERNAME: ADMIN
    • SOURCEDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_CONNECTIONDETAILS_HOST: IP/hostname of the source Oracle Cloud VMware Solution database VM.
    • SOURCEDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCEDATABASE_CONNECTIONDETAILS_SERVICENAME: Service name of the source pluggable database (PDB) or non-container database (CDB). Use lsnrctl to find.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_TENANTID: Tenancy OCID from step 11.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_USERID: User OCID from step 11.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_FINGERPRINT: Fingerprint from step 11.
    • OCIAUTHENTICATIONDETAILS_PRIVATEKEYFILE: File path to private key PEM file on the Oracle Zero Downtime Migration server from step 12.
    • OCIAUTHENTICATIONDETAILS_REGIONID: OCI region ID for the OCI user from step 11.
    • SOURCECONTAINERDATABASE_ADMINUSERNAME: system
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_HOST: IP/hostname of the source Oracle Cloud VMware Solution database VM.
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_SERVICENAME: Service name for the source container database on the Oracle Cloud VMware Solution database VM. Use lsnrctl to find.
    • DATAPUMPSETTINGS_JOBMODE: SCHEMA
    • DATAPUMPSETTINGS_FIXINVALIDOBJECTS: TRUE
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_PATH: Network file system mount point from step 9.
    • DATAPUMPSETTINGS_CREATEAUTHTOKEN: FALSE
    • DATAPUMPSETTINGS_METADATAREMAPS-1: type:REMAP_TABLESPACE,oldValue:USERS,newValue:DATA.
    • DATAPUMPSETTINGS_METADATAREMAPS-2: type:REMAP_TABLESPACE,oldValue:tablespace_to_be_migrated,newValue:DATA. One tablespace remap entry is required for each custom tablespace to be migrated.
    • DATAPUMPSETTINGS_DATAPUMPPARAMETERS_EXPORTPARALLELISMDEGREE: Comment this line with a number sign (#) if the source Oracle Cloud VMware Solution database VM is running Oracle Standard Edition 2. Otherwise, enter a number greater than two, according tot he number of CPUs available.
    • DATAPUMPSETTINGS_DATABUCKET_NAMESPACE: OCI Object Storage namespace from step 10.
    • DATAPUMPSETTINGS_DATABUCKET_BUCKETNAME: OCI Object Storage bucket name from step 10.
    • EXCLUDEOBJECTS-1: owner:PDBADMIN
  15. Run an Oracle Zero Downtime Migration dry run migration job (-eval), to validate all prerequisites for migration are met. This runs the Cloud Pre-Migration Advisor Tool (CPAT) to validate the source database is suitable for migration to the target database using Oracle Zero Downtime Migration logical migration. Address issues reported by CPAT before continuing. For example:
    
    zdmcli migrate database -sourcedb source_db_unique_name \
    -sourcenode IP/hostname_of_Oracle_Cloud_VMware_Solution_database_virtual_machine \
    -srcauth zdmauth \
    -srcarg1 user:root_or_sudoer_user \
    -srcarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name_from_step_6 \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_14 \
    -eval
    This command asks for two passwords. The first password is the system password for the source database. The second password is the ADMIN password for the target database.
    Note the Oracle Zero Downtime Migration job ID.
    After a successful dry run migration, proceed to the next step.
  16. After a dry run migration is successful, run the Oracle Zero Downtime Migration job. For example:
    zdmcli migrate database -sourcedb source_db_unique_name \
    -sourcenode IP/hostname_of_Oracle_Cloud_VMware_Solution_database_virtual_machine \
    -srcauth zdmauth \
    -srcarg1 user:root_or_sudoer_user \
    -srcarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name_from_step_6 \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_14
    This command asks for two passwords. The first password is the system password for the source database. The second password is the ADMIN password for the target database.
    Note the Oracle Zero Downtime Migration job ID.