Migración de la arquitectura clásica a la de microservicios mediante la utilidad de migración

La utilidad de migración de Oracle GoldenGate Classic a microservicios se utiliza para migrar de una instalación de arquitectura clásica de Oracle GoldenGate a un despliegue de microservicios. Esta utilidad es una utilidad interactiva que migra Extracts, Replicats de una instalación de arquitectura clásica al despliegue de microservicios y convierte Pump Extracts en una ruta de distribución. También migra archivos de pista, puntos de control y otros artefactos asociados.

La utilidad de migración está disponible en el portal My Oracle Support (MOS) como parche 37274898.

Las actualizaciones del parche se publican cuando es necesario. La descripción del parche incluye detalles con el último número de compilación.

Requisitos para utilizar la utilidad de migración

A continuación, se muestran los requisitos previos para utilizar la utilidad de migración:

Restricciones de la utilidad de migración

La utilidad de migración no puede migrar ningún proceso que tenga la siguiente configuración:

Ejecución de la utilidad de migración

Asegúrese de haber completado los pasos mencionados en Requisitos para utilizar la utilidad de migración antes de comenzar las tareas de esta sección.

Utilice los siguientes pasos en el símbolo del sistema para ejecutar la utilidad de migración:

  1. Ejecute el comando siguiente para iniciar la utilidad de migración:

    java -jar ogg-migration-package-23.4.0.0.0.jar -classicHome /scratch/ogg/home -dryrun
    java -jar ogg-migration-package-23.4.0.0.0.jar -debug
    java -jar ogg-migration-package-23.4.0.0.0.jar -help

    Las opciones disponibles con este comando son:

    • -classicHome path: (necesario) debe apuntar a la ubicación del directorio de software de Oracle GoldenGate Classic.

    • -dryrun: (opcional) indica que la migración se simula (realice una ejecución simulada) para comprobar posibles problemas.

    • -debug: es opcional, pero se recomienda que utilice esta opción con la utilidad. Activa el registro y el diagnóstico de nivel de depuración. Proporciona datos de log más detallados y producirá un archivo zip con artefactos tanto del clásico como de MA cuando falla una migración.

    • -skipPumpURI: especifica la opción Aceptar URI por defecto en la migración de pump

    • -dbtype: especifica el nombre de la base de datos. Los valores válidos son 'ORACLE', 'MYSQL', 'MSSQL', 'POSTGRESQL', 'SYBASE', 'DB2400', 'DB2ZOS', 'DB2LUW', 'TERADATA', 'TIMESTEN'

    • -help: muestra el uso.

  2. La utilidad solicita las credenciales de usuario para el gestor de servicios de la implementación de MA:

    ***************************************************************************
    
    **      Oracle GoldenGate Classic to Microservices Migration Utility              **
    
    **        Version 23.4.0.0.0 Build 66 at Fri Jan 22 17:24:41 UTC 2024             **
    
    **  Copyright (C) 1995, 2024, Oracle and/or its affiliates. All rights reserved.  **
    
    **                                                                             **
    
    **         Operating system character set identified as UTF-8.                    **
    
    *******************************************************************************
    
    Command Entered: -classicHome /ogg/payroll -debug
    Log File for this session is /ogg/payroll/./Migration081321105419.log. Debug Mode is Enabled.
    Enter Service Manager Credentials: User Id: dba
    Password:
  3. La utilidad busca un gestor de servicios en el host y proporciona una opción de despliegues a los que migrar si hay más de un despliegue y, a continuación, solicita que continúe.

    Scanning for Microservices Deployments...
    Using Deployment payroll [cf4c7c93-3a1c-4cbc-b1ab-bc942bab7645]
    The following processes will be migrated to deployment payroll:
    Extracts: EXTE
    Replicats: REPW
    Pumps: DPE
    Do you wish to continue? (yes/no):>

    Introduzca yes para continuar.

  4. La utilidad migrará las credenciales de base de datos del despliegue de Classic al despliegue de Microservices de destino y, a continuación, copiará todos los archivos de pista del despliegue de Classic y migrará todos los procesos de Extracts y Replicats.

    Migrating Credentials from /ogg/payroll/./dircrd
    Migrating Credentials for Domain Payroll with an alias of ogg.
    Migrating Credentials for Domain Payroll with an alias of user.
    
    Copying Trail Files from /ogg/payroll/dirdat to /ogg/Microservices/payroll/var/lib/data.
    235 trail files copied.
    
    Migrating EXTRACT EXTE to http://10.20.0.221:9901.
    Checkpoint File(s) Copied and Converted Successfully.
    Parameter File EXTE.prm Saved Successfully.
    Migration of Extract EXTE Completed Successfully.
    
    Migrating REPLICAT REPW to http://10.20.0.221:9901.
    Parameter File REPW.prm Saved Successfully.
    Checkpoint File(s) Copied and Converted Successfully.
    Migration of Replicat REPW Completed Successfully.
  5. A continuación, la utilidad migra todos los procesos de pump de extracción y solicita la URL para el servicio de receptor de destino para cada uno. Para aceptar el valor predeterminado, presione la tecla Intro.

    Si está utilizando un destino diferente, introduzca la URL. De forma predeterminada, la utilidad asume que la bomba clásica se está enviando a otro proceso de servidor de despliegue clásico. La URL por defecto permite al servicio de distribución enlazar al destino clásico. Si también planea migrar el despliegue de destino Classic más adelante, deberá modificar la ruta de distribución que acaba de crear al mismo tiempo. Consulte Diferentes casos de uso para la migración para obtener más información.

    Nota: Las bombas de bucle de retorno son comunes en un entorno de prueba en el que una bomba clásica envía al mismo gestor en el mismo despliegue. Esta bomba de bucle de retorno se enruta automáticamente al servicio de recepción en el despliegue de MA migrado.

        Migrating PUMP PMPW2E to http://
    10.20.0.221:9902.
    
        Use Default Pump Target URI of ogg://ushost1:9903/services/v2/targets?trail=./bb?
        Press Enter to Accept or type Alternate URI:>
        Creating Distribution Path for Pump PMPW2E.
        Distribution Path Created Successfully.
        Setting trail sequence to 235 with an RBA of 1319472691.
    
        Migration of Pump PMPW2E Completed Successfully.
    
        Migrating Manager tasks to http://10.20.0.221:9901.
        Creating Task for Parameter PurgeTrail-aa. Task Created Successfully.
        Creating Task for Parameter Purge-Extract. Task Created Successfully.
        2 Tasks were migrated, 2 Successfully, 0 with errors.
    
        Migrating Lag Report.
        Creating Task for Parameter LagReport. Task Created Successfully.
        Migration pf Manager Tasks Completed Successfully.
  6. A continuación, la utilidad pregunta si debe migrar parámetros en el archivo de configuración GLOBALS e informar sobre cualquier problema encontrado.

    Do you wish to migrate your GLOBALS parameters? (yes/no):> y
    GLOBAL parameters successfully migrated, 3 parameters merged.
  7. La utilidad solicita que se copien las entradas de cartera existentes si existen y emite una advertencia si existen entradas en la cartera de destino. Estas entradas de cartera de destino se sobrescribirán. Una vez finalizada esta tarea, la utilidad termina.

    Your Classic Deployment has existing wallet entries.
    Do you wish to copy them? (yes/no):> y
    
    Copying Oracle Wallet Entries.
    
    WARNING: Target deployment has existing wallet entries and will be overwritten!
    
    Do you wish to continue? (yes/no):> y
    Wallet entries successfully copied.
    
    Migration Processing Complete, 3 processes were migrated successfully.

    Si la migración se ha realizado correctamente, cambiará el nombre de los archivos de punto de control en el directorio dirchk clásico agregando .migrated al nombre. Esto evitará que los procesos de despliegue de Classic se inicien de forma involuntaria.

    Si la utilidad encuentra un problema y no puede completar el proceso de migración, realizará un rollback de todo el trabajo que ha realizado y restaurará el despliegue clásico a su estado original. Producirá un archivo zip de diagnóstico que contiene el archivo log, classic configuration y target configuration para ayudar a diagnosticar la incidencia.

Diferentes Casos de Uso para Migración

Los despliegues de arquitectura clásica de Oracle GoldenGate no suelen ser independientes. Los despliegues suelen enviar datos de pista a otros despliegues mediante el proceso Pump que tienen topologías interconectadas muy complejas. Cuando se migra un despliegue a microservicios, puede que se sigan enviando datos de pista a otro despliegue de Classic o Microservicios. Una de las principales características de la arquitectura de microservicios es la capacidad de proteger el despliegue mediante protocolos de seguridad establecidos, como TLS/SSL y sockets web seguros.

Al migrar despliegues, se debe utilizar un enfoque bien pensado. Normalmente, se prefiere que los despliegues de origen y destino se migren de forma individual y no todos a la vez. La utilidad de migración permite migrar despliegues uno por uno. Dado que el despliegue de origen utiliza un protocolo no seguro para comunicarse con Classic Server/Collector o el servicio de receptor, la ruta de distribución migrada utilizará el protocolo ogg heredado en la ruta. Aunque esto será funcional, no aprovecha las capacidades de seguridad de la arquitectura de microservicios para crear un despliegue totalmente seguro.

Se recomienda sustituir la ruta de distribución generada por la utilidad de migración por una que utilice los protocolos wss o ws después de que todos los despliegues se hayan migrado a la arquitectura de microservicios o siempre que se hayan migrado los despliegues de origen y destino.

Para permitir la migración por fases de despliegues y procesos a la arquitectura de microservicios, los despliegues de arquitectura clásica de origen y destino se pueden migrar de forma independiente.

A continuación, se enumeran los diferentes casos de uso y el protocolo de distribución asociado utilizado al configurar la ruta de distribución.

Origen Destino Protocolo de distribución Descripción

Arquitectura de hub (sin pistas de distribución)

Migración de Classic a microservicios

No aplicable No aplicable No aplicable
Migración de Classic a microservicios Despliegue clásico Protocolo ogg para el despliegue clásico de destino -
Migración de Classic a microservicios Despliegue de microservicios Protocolo ogg De manera opcional, borre y vuelva a crear DISTPATH para utilizar el protocolo ws o wss (si el destino está protegido con un proxy inverso).
Despliegue clásico Migración de Classic a microservicios Servicio de receptor de bombeo a destino

La bomba de origen debe modificarse:

Puerto de servicio del receptor y pista remota

Despliegue de microservicios Migración a Classic a microservicios Protocolo ogg Borrar y volver a crear DISTPATH y utilizar el protocolo ws o wss (si el destino está protegido con un proxy inverso)

Migración del origen de Classic a microservicios con Target como microservicios

En este caso de uso, puede borrar y volver a crear la ruta de distribución para utilizar el protocolo ws o wss (si el destino está protegido con un proxy inverso) especificando los valores de número de secuencia (seqno) y RBA. Esto es opcional, ya que el despliegue de destino utiliza la arquitectura de microservicios.

Ejecute el cliente de administración y conéctese al despliegue de origen para obtener los valores SEQNO y RBA:

OGG (http://north:9001)> INFO DISTPATH dpe, DETAIL
Path Name: dpe Status: running
Source: trail://north:9002/services/v2/sources?trail=ea
Target: ogg://south:9003/services/v2/targets?trail=ra
Authentication Method: USERIDALIAS ggsca domain OracleGoldenGate
[...]
Checkpoints:
Input Checkpoint:
  Current:
     Name: ea
     Sequence: 14
     Offset: 2579
     Path: /u01/ogg_deployments/depl_north/var/lib/data/
[...]

Convierta la ruta de distribución al protocolo ws o wss volviendo a crear y cambiar la posición de la ruta de distribución que creó la utilidad de migración:

OGG (http://south:9001)> DELETE DISTPATH dpe, DETAIL

## If using Secure Web Socket Protocol (wss)
OGG (http://south:9001)> ADD DISTPATH dpm
                         SOURCE trail://src_host:9002/services/v2/sources?trail=ea
                         TARGET wss://trg_host:9003/services/v2/targets?trail=ra
                         AUTHENTICATION CERTIFICATE default
## If using Web Socket Protocol (ws)
OGG (http://south:9001)> ADD DISTPATH dpm
                         SOURCE trail://src_host:9002/services/v2/sources?trail=ea
                         TARGET ws://trg_host:9003/services/v2/targets?trail=ra
                         AUTHENTICATION USERIDALIAS ggsca DOMAIN OracleGoldenGate
OGG (http://south:9001)> ALTER DISTPATH dpm, BEGIN SEQNO 14, RBA 2579
OGG (http://south:9001)> START DISTPATH dpm

Migre el destino de Classic a microservicios donde el origen son microservicios

En este caso de uso, es obligatorio borrar y volver a crear la ruta de distribución para utilizar el protocolo ws o wss, si el destino está protegido con un proxy inverso. Siga los pasos de Migración de origen de Classic a microservicios con destino como microservicios para borrar y volver a crear la ruta de distribución en el despliegue de destino.

Migración de destino de Classic a microservicios con el origen como Classic

Al migrar el despliegue de destino a la arquitectura de microservicios mientras el despliegue de origen está en la arquitectura clásica, debe realizar los siguientes pasos adicionales:

Como se muestra en el siguiente ejemplo, el número de puerto del gestor de destino se ha cambiado al número de puerto del servicio de receptor 9903 y la ruta del archivo RMTTRAIL se ha modificado en el archivo de parámetros de pump de extracción.

GGSCI> STOP EXTRACT PMPW2E
GGSCI> EDIT PARAMS PMPW2E

A continuación se muestra el archivo de parámetros Extract Pump:

EXTRACT PMPW2E
USERIDALIAS ggeast,
target uri: host1:9903/services/v2/targets?trail=./bb? ENCRYPT AES192,
RMTTRAIL ./rt SEQUENCE hr.employees_seq; TABLE hr.*;

Reinicie la bomba de extracción después de completar las modificaciones:

GGSCI> START EXTRACT PMPW2E

Nota: No se entrega ningún archivo de pista al destino.

Antes de que comience la migración, detenga todos los procesos en el origen de manera controlada.