Aprovisionamiento de Oracle Zero Downtime Migration

Instale y configure Oracle Zero Downtime Migration.

Acerca de los requisitos previos de Zero Downtime Migration

Antes de ejecutar la utilidad Zero Downtime Migration para la migración de bases de datos, debe cumplir ciertos requisitos.

El host del servicio Zero Downtime Migration necesita acceder a los servidores de base de datos de origen y destino durante una migración de base de datos. Con eso, para realizar la migración a Oracle Autonomous Database on Dedicated Exadata Infrastructure, el host del servicio Zero Downtime Migration requiere acceso de usuario raíz o acceso basado en claves SSH a uno de los servidores de base de datos de origen también. Asegúrese de que se cumplan estos requisitos para la ruta de red y la conectividad antes de continuar.

Instalación de un host de migración sin tiempo de inactividad

Oracle recomienda instalar Zero Downtime Migration en un host independiente que se ejecute en Oracle Linux 7 u 8. Se puede aprovisionar en el centro de datos de la base de datos de origen o configurar en OCI. En este ejemplo, el host del servicio Zero Downtime Migration se ha configurado en OCI.
  1. Aprovisione un host en Oracle Linux con un almacenamiento mínimo de 100 GB.
  2. Asegúrese de que estos paquetes obligatorios están disponibles:
    • glibc-devel
    • expect
    • unzip
    • libaio
    • oraclelinux-developer-release-el7

    Note:

    Para versiones superiores, como Oracle Linux 8, también se necesitan los paquetes libnsl y ncurses-compat-libs.
  3. Ejecute el siguiente comando:
    [root@zdmhost ~]# yum install glibc-devel expect unzip libaio oraclelinux-developer-release-el7 -y
  4. Cree un grupo denominado zdm y un usuario denominado zdmuser que se agregue al grupo ejecutando los comandos:
    [root@zdmhost ~]# groupadd zdm
    [root@zdmhost ~]# useradd zdmuser -g zdm
    [root@zdmhost ~]# mkdir -p /home/zdmuser/zdminstall
    [root@zdmhost ~]# mkdir /home/zdmuser/zdmhome
    [root@zdmhost ~]# mkdir /home/zdmuser/zdmbase
    [root@zdmhost ~]# chown -R zdmuser:zdm /home/zdmuser/
  5. Actualice la variable de entorno necesaria para que zdmuser instale ZDM en el host de servicio ZDM mediante la ejecución de los comandos:
    echo "ORACLE_HOME=/home/zdmuser/zdmhome; export ORACLE_HOME" >> ~/.bashrc
    echo "ORACLE_BASE=/home/zdmuser/zdmbase; export ORACLE_BASE" >> ~/.bashrc
    echo "ZDM_BASE=\$ORACLE_BASE; export ZDM_BASE" >> ~/.bashrc
    echo "ZDM_HOME=/home/zdmuser/zdmhome; export ZDM_HOME" >> ~/.bashrc
    echo "ZDM_INSTALL_LOC=/home/zdmuser/zdminstall; export ZDM_INSTALL_LOC" >> ~/.bashrc

Instalación de herramientas adicionales en el host de ZDM

  1. Instale la interfaz de línea de comandos de OCI (CLI de OCI) en el host de servicio de ZDM como root:
    [root@zdmhost ~]# yum install python36-oci-cli
  2. Instale el cliente SQL de Oracle Database en el host ZDM para establecer la conectividad con las bases de datos de origen y destino.
  3. Asegúrese de haber descargado los paquetes de RPM de Oracle Instant Client (consulte la sección Descargar paquetes de software):
    • Paquete básico (RPM)
    • Paquete SQL*Plus (RPM)
    • Paquete de herramientas (RPM)
  4. Instale los paquetes de RPM como usuario root, en el orden Basic, SQL*Plus y, a continuación, Tools, ejecutando los comandos:
    [root@zdmhost software]# yum install -y oracle-instantclient19.20-basic-19.20.0.0.0-1.x86_64.rpm
    [root@zdmhost software]# yum install -y oracle-instantclient19.20-sqlplus-19.20.0.0.0-1.x86_64.rpm
    [root@zdmhost software]# yum install -y oracle-instantclient19.20-tools-19.20.0.0.0-1.x86_64.rpm
  5. Actualice las variables de entorno para zdmuser para TNS_ADMIN y PATH ejecutando los comandos:
    TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
    PATH=/usr/lib/oracle/19.20/client64/bin:$PATH; export PATH

Instalación de migración sin tiempo de inactividad en el host

Instale Zero Downtime Migration una vez que el host esté listo.

  1. Asegúrese de que el binario se haya descargado anteriormente desde la sección Download Software Packages y transfiéralo al host del servicio Zero Downtime Migration.
  2. Descomprima el paquete zdmuser en el host ejecutando los comandos:
    • [zdmuser@zdmhost ~]$ cd $ZDM_INSTALL_LOC
    • [zdmuser@zdmhost zdminstall]$ unzip /tmp/V1037236-01.zip
    • [zdmuser@zdmhost zdminstall]$ ls -rlt
  3. Instale Zero Downtime Migration como zdmuser en el host ejecutando el comando: [zdmuser@zdmhost zdm21.4.1]$ ./zdminstall.sh setup oraclehome=$ZDM_HOME oraclebase=$ZDM_BASE ziploc=./zdm_home.zip -zdm
  4. Inicie el servicio Zero Downtime Migration en el host ejecutando el comando: [zdmuser@zdmhost ~]$ $ZDM_HOME/bin/zdmservice start
  5. Compruebe el estado ejecutando los comandos:
    • [zdmuser@zdmhost ~]$ $ZDM_HOME/bin/zdmcli -build
    • [zdmuser@zdmhost ~]$ $ZDM_HOME/bin/zdmservice status
    Running debe ser igual a true si se está ejecutando Zero Downtime Migration.

Configuración de migración sin tiempo de inactividad

  1. Configure el archivo /etc/hosts en el host del servicio Zero Downtime Migration para garantizar la conectividad entre el host del servicio Zero Downtime Migration y la base de datos de origen agregando la información de la base de datos de origen como usuario raíz.
    [root@zdmhost ~]# cat /etc/hosts
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    10.0.1.179 hr9246.appsubnet.exadatainfrastr.oraclevcn.com hr9246
    10.0.1.78 zdmhost.appsubnet.exadatainfrastr.oraclevcn.com zdmhost
    [root@zdmhost ~]#
  2. Configure la conectividad SSH del host Zero Downtime Migration a la base de datos de origen según las claves SSH sin una frase de contraseña como zdmuser.
    1. Como zdmuser, genere la clave SSH ejecutando los comandos:
      • [zdmuser@zdmhost~]$ ssh-keygen -t rsa
      • [zdmuser@zdmhost~]$ cd ~/.ssh
      • [zdmuser@zdmhost~]$ cat id_rsa.pub>>authorized keys
      • [zdmuser@zdmhost~]$ chmod 600 authorized keys
    2. Actualice el archivo de claves autorizadas agregando el contenido del archivo /home/zdmuser/.ssh/id_rsa.pub al archivo opc_user_home/.ssh/authorized_keys en el servidor de base de datos de origen.
    3. Valide la conectividad SSH del host Zero Downtime Migration al host PSFT.

Configurar acceso a API

  1. Genere una clave pública como zdmuser ejecutando los comandos:
    [zdmuser@zdmhost ~]$ mkdir zdmhome/.oci
    [zdmuser@zdmhost ~]$ cd zdmhome/.oci
    [zdmuser@zdmhost .oci]$ openssl genrsa -out /home/zdmuser/zdmhome/.oci/oci_api_key.pem 2048
    [zdmuser@zdmhost .oci]$ openssl rsa -pubout -in /home/zdmuser/zdmhome/.oci/oci_api_key.pem -out /home/zdmuser/zdmhome/.oci/oci_api_key_public.pem
  2. Agregue la clave de API a la consola de OCI.
    1. En el panel de control de Oracle Cloud, haga clic en el icono de perfil y, a continuación, en su cuenta (correo electrónico).
    2. Haga clic en Claves de API.
    3. Haga clic en Agregar clave de API.
    4. Seleccione Pegar una clave pública.
    5. En el campo Clave pública, introduzca oci_api_key_public.pem
    6. Haga clic en Agregar.
  3. Copie el contenido del archivo de configuración para la clave de API correspondiente.
  4. Como zdmuser, cree un archivo de configuración y actualice la ruta de acceso key_file con una ruta de acceso del archivo de clave privada.
  5. Generar un token de autenticación de OCI.
    La autenticación basada en token para la CLI permite crear un token de sesión temporal para autenticar una solicitud de comando de la CLI.

Configurar SSH

Configure la conectividad SSH, genere un par de claves SSH y actualice el archivo de claves autorizadas.

  1. En el host Zero Downtime Migration como zdmuser, configure la conectividad SSH con el host de la base de datos de origen según las claves SSH sin una frase de contraseña.
  2. Genere una clave SSH como zdmuser.
    [zdmuser@zdmhost ~]$ ssh-keygen -t rsa
    [zdmuser@zdmhost ~]$ cd ~/.ssh
    [zdmuser@zdmhost .ssh]$ cat id_rsa.pub >> authorized_keys
    [zdmuser@zdmhost .ssh]$ chmod 600 authorized_keys
  3. Agregue el contenido del archivo /home/zdmuser/.ssh/id_rsa.pub al archivo opc_user_home/.ssh/authorized_keys en el servidor de base de datos de origen.