Skip to main content
NetApp database solutions
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Migración automatizada de Oracle

Colaboradores kevin-hoke

Equipo de ingeniería de soluciones de NetApp

Esta solución proporciona un kit de herramientas de automatización basado en Ansible para migrar la base de datos Oracle mediante la reubicación de PDB con la metodología de máxima disponibilidad. La migración puede ser cualquier combinación de instalaciones locales y en la nube como origen o destino.

Objetivo

Este kit de herramientas automatiza la migración de la base de datos Oracle desde las instalaciones locales a la nube de AWS con almacenamiento FSx ONTAP y una instancia de cómputo EC2 como infraestructura de destino. Se supone que el cliente ya tiene una base de datos Oracle local implementada en el modelo CDB/PDB. El kit de herramientas permitirá al cliente reubicar un PDB con nombre desde una base de datos contenedora en un host Oracle utilizando el procedimiento de reubicación de Oracle PDB con una opción de máxima disponibilidad. Esto significa que la PDB de origen en cualquier matriz de almacenamiento local se reubica en una nueva base de datos de contenedor con una interrupción mínima del servicio. El procedimiento de reubicación de Oracle moverá los archivos de datos de Oracle mientras la base de datos esté en línea. Posteriormente, redirecciona las sesiones de usuario desde las instalaciones locales a los servicios de base de datos reubicados en el momento del cambio cuando todos los archivos de datos se trasladan a la nube de AWS. La tecnología subrayada es la metodología probada de clonación en caliente de Oracle PDB.

Nota Si bien el kit de herramientas de migración está desarrollado y validado en la infraestructura de nube de AWS, se basa en soluciones a nivel de aplicación de Oracle. Por lo tanto, el kit de herramientas es aplicable a otras plataformas de nube pública, como Azure, GCP, etc.

Esta solución aborda los siguientes casos de uso:

  • Cree un usuario de migración y otorgue los privilegios necesarios en el servidor de base de datos de origen local.

  • Reubicar un PDB desde un CDB local a un CDB de destino en la nube mientras el PDB de origen está en línea hasta el cambio.

Audiencia

Esta solución está destinada a las siguientes personas:

  • Un DBA que migra bases de datos Oracle desde las instalaciones locales a la nube de AWS.

  • Un arquitecto de soluciones de bases de datos que está interesado en la migración de bases de datos Oracle desde las instalaciones locales a la nube de AWS.

  • Un administrador de almacenamiento que administra el almacenamiento de AWS FSx ONTAP que admite bases de datos de Oracle.

  • Propietario de una aplicación a quien le gusta migrar la base de datos Oracle desde las instalaciones locales a la nube de AWS.

Licencia

Al acceder, descargar, instalar o utilizar el contenido de este repositorio de GitHub, usted acepta los términos de la Licencia establecidos en"Archivo de licencia" .

Nota Existen ciertas restricciones en torno a la producción y/o intercambio de cualquier trabajo derivado del contenido de este repositorio de GitHub. Asegúrese de leer los términos de la Licencia antes de utilizar el contenido. Si no está de acuerdo con todos los términos, no acceda, descargue ni utilice el contenido de este repositorio.

Implementación de la solución

Requisitos previos para la implementación

Details

La implementación requiere los siguientes requisitos previos.

Ansible v.2.10 and higher
ONTAP collection 21.19.1
Python 3
Python libraries:
  netapp-lib
  xmltodict
  jmespath
Source Oracle CDB with PDBs on-premises
Target Oracle CDB in AWS hosted on FSx and EC2 instance
Source and target CDB on same version and with same options installed
Network connectivity
  Ansible controller to source CDB
  Ansible controller to target CDB
  Source CDB to target CDB on Oracle listener port (typical 1521)

Descargar el kit de herramientas

Details
git clone https://github.com/NetApp/na_ora_aws_migration.git

Configuración de variables del host

Details

Las variables de host se definen en el directorio host_vars llamado {{ host_name }}.yml. Se incluye un archivo de variable de host de ejemplo host_name.yml para demostrar una configuración típica. A continuación se presentan algunas consideraciones clave:

Source Oracle CDB - define host specific variables for the on-prem CDB
  ansible_host: IP address of source database server host
  source_oracle_sid: source Oracle CDB instance ID
  source_pdb_name: source PDB name to migrate to cloud
  source_file_directory: file directory of source PDB data files
  target_file_directory: file directory of migrated PDB data files
Target Oracle CDB - define host specific variables for the target CDB including some variables for on-prem CDB
  ansible_host: IP address of target database server host
  target_oracle_sid: target Oracle CDB instance ID
  target_pdb_name: target PDB name to be migrated to cloud (for max availability option, the source and target PDB name must be the same)
  source_oracle_sid: source Oracle CDB instance ID
  source_pdb_name: source PDB name to be migrated to cloud
  source_port: source Oracle CDB listener port
  source_oracle_domain: source Oracle database domain name
  source_file_directory: file directory of source PDB data files
  target_file_directory: file directory of migrated PDB data files

Configuración del archivo host del servidor de base de datos

Details

La instancia de AWS EC2 usa la dirección IP para nombrar el host de manera predeterminada. Si usa un nombre diferente en el archivo de hosts para Ansible, configure la resolución de nombres de host en el archivo /etc/hosts tanto para el servidor de origen como para el de destino. A continuación se muestra un ejemplo.

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.30.15.96 source_db_server
172.30.15.107 target_db_server

Ejecución del libro de jugadas: ejecutado en secuencia

Details
  1. Instalar los requisitos previos del controlador Ansible.

    ansible-playbook -i hosts requirements.yml
    ansible-galaxy collection install -r collections/requirements.yml --force
  2. Ejecutar tareas previas a la migración contra el servidor local, asumiendo que el administrador es el usuario ssh para la conexión al host Oracle local con permiso sudo.

    ansible-playbook -i hosts ora_pdb_relocate.yml -u admin -k -K -t ora_pdb_relo_onprem
  3. Ejecute la reubicación de Oracle PDB desde la CDB local a la CDB de destino en la instancia AWS EC2, asumiendo ec2-user para la conexión de la instancia EC2 DB y db1.pem con pares de claves ssh ec2-user.

    ansible-playbook -i hosts ora_pdb_relocate.yml -u ec2-user --private-key db1.pem -t ora_pdb_relo_primary

Dónde encontrar información adicional

Para obtener más información sobre la automatización de soluciones de NetApp , consulte el siguiente sitio web"Automatización de soluciones de NetApp "