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.

Procedimientos de implementación de Oracle paso a paso en Azure VM y Azure NetApp Files

Colaboradores kevin-hoke

En esta sección se describen los procedimientos de implementación de la base de datos personalizada de Oracle RDS con almacenamiento FSx.

Implementar una máquina virtual de Azure con ANF para Oracle a través de la consola del portal de Azure

Si es nuevo en Azure, primero debe configurar un entorno de cuenta de Azure. Esto incluye registrar su organización para usar Azure Active Directory. La siguiente sección es un resumen de estos pasos. Para obtener más detalles, consulte la documentación específica de Azure vinculada.

Crear y consumir recursos de Azure

Una vez configurado su entorno de Azure y creada una cuenta y asociada a una suscripción, puede iniciar sesión en el portal de Azure con la cuenta para crear los recursos necesarios para ejecutar Oracle.

1. Crear una red virtual o VNet

Azure Virtual Network (VNet) es el componente fundamental de su red privada en Azure. VNet permite que muchos tipos de recursos de Azure, como las máquinas virtuales (VM) de Azure, se comuniquen de forma segura entre sí, con Internet y con las redes locales. Antes de aprovisionar una máquina virtual de Azure, primero se debe configurar una red virtual (donde se implementa una máquina virtual).

2. Cree una cuenta de almacenamiento de NetApp y un grupo de capacidad para ANF

En este escenario de implementación, se aprovisiona un sistema operativo de máquina virtual de Azure mediante el almacenamiento normal de Azure, pero se aprovisionan volúmenes ANF para ejecutar una base de datos de Oracle a través de NFS. Primero, debe crear una cuenta de almacenamiento de NetApp y un grupo de capacidad para alojar los volúmenes de almacenamiento.

Ver"Configurar Azure NetApp Files y crear un volumen NFS" para crear un fondo común de capacidad ANF.

3. Aprovisionar máquinas virtuales de Azure para Oracle

Según su carga de trabajo, determine qué tipo de máquina virtual de Azure necesita y el tamaño de la vCPU y la RAM de la máquina virtual que desea implementar para Oracle. Luego, desde la consola de Azure, haga clic en el ícono de la máquina virtual para iniciar el flujo de trabajo de implementación de la máquina virtual.

  1. Desde la página de la máquina virtual de Azure, haga clic en Crear y luego elija Máquina virtual de Azure.

    Esta captura de pantalla muestra la lista de máquinas virtuales de Azure disponibles.

  2. Seleccione el ID de suscripción para la implementación y luego elija el grupo de recursos, la región, el nombre de host, la imagen de VM, el tamaño y el método de autenticación. Vaya a la página Disco.

    Esta captura de pantalla muestra la entrada para la página Crear una máquina virtual. Esta captura de pantalla muestra una entrada adicional para la página Crear una máquina virtual.

  3. Elija SSD premium para la redundancia local del sistema operativo y deje el disco de datos en blanco porque los discos de datos se montan desde el almacenamiento ANF. Vaya a la página de Redes.

    Esta captura de pantalla muestra la entrada para la página Crear discos de máquina virtual.

  4. Seleccione la VNet y la subred. Asignar una IP pública para el acceso a la máquina virtual externa. Luego vaya a la página de Administración.

    Esta captura de pantalla muestra información adicional para la página Crear una máquina virtual.

  5. Mantenga todos los valores predeterminados para Administración y pase a la página Avanzada.

    Esta captura de pantalla muestra la entrada para la página Crear una administración de máquinas virtuales.

  6. Mantenga todos los valores predeterminados para la página Avanzada a menos que necesite personalizar una máquina virtual después de la implementación con scripts personalizados. Luego vaya a la página de Etiquetas.

    Esta captura de pantalla muestra la entrada para la página Crear una máquina virtual avanzada.

  7. Agregue una etiqueta para la VM si lo desea. Luego, vaya a la página Revisar + crear.

    Esta captura de pantalla muestra la entrada para la página Crear etiquetas de máquina virtual.

  8. El flujo de trabajo de implementación ejecuta una validación en la configuración y, si la validación pasa, hace clic en Crear para crear la máquina virtual.

    Esta captura de pantalla muestra la entrada para la revisión y creación de la página Crear una máquina virtual

4. Aprovisionar volúmenes de bases de datos ANF para Oracle

Debe crear tres volúmenes NFS para un grupo de capacidad ANF para los volúmenes binarios, de datos y de registro de Oracle respectivamente.

  1. Desde la consola de Azure, en la lista de servicios de Azure, haga clic en Azure NetApp Files para abrir un flujo de trabajo de creación de volumen. Si tiene más de una cuenta de almacenamiento ANF, haga clic en la cuenta desde la que desea aprovisionar volúmenes.

    Esta captura de pantalla muestra la página Servicios de Azure, con ANF resaltado.

  2. En su cuenta de almacenamiento de NetApp , haga clic en Volúmenes y luego en Agregar volumen para crear nuevos volúmenes de Oracle.

    Esta captura de pantalla muestra la pantalla de inicio de una cuenta de almacenamiento de NetApp . Esta captura de pantalla muestra los volúmenes disponibles para la cuenta de almacenamiento de NetApp .

  3. Como buena práctica, identifique los volúmenes de Oracle con el nombre de host de la máquina virtual como prefijo y luego seguido por el punto de montaje en el host, como u01 para binario de Oracle, u02 para datos de Oracle y u03 para registro de Oracle. Elija la misma VNet para el volumen y para la VM. Haga clic en Siguiente: Protocolo>.

    Pantalla de creación de volumen.

  4. Seleccione el protocolo NFS, agregue la dirección IP del host de Oracle al cliente permitido y elimine la política predeterminada que permite todas las direcciones IP 0.0.0.0/0. Luego haga clic en Siguiente: Etiquetas>.

    Entrada de protocolo en la pantalla de creación de volumen.

  5. Agregue una etiqueta de volumen si lo desea. Luego haga clic en Revisar + Crear>.

    Entrada de etiquetas en la pantalla de creación de volumen.

  6. Si la validación pasa, haga clic en Crear para crear el volumen.

    Revisar y crear la etapa de la pantalla de creación de Volumen.

Instalar y configurar Oracle en Azure VM con ANF

El equipo de soluciones de NetApp ha creado muchos kits de herramientas de automatización basados en Ansible para ayudarlo a implementar Oracle en Azure sin problemas. Siga estos pasos para implementar Oracle en una máquina virtual de Azure.

Configurar un controlador Ansible

Si no ha configurado un controlador Ansible, consulte"Automatización de soluciones de NetApp " , que contiene instrucciones detalladas sobre cómo configurar un controlador Ansible.

Obtenga el kit de herramientas de automatización de implementación de Oracle

Clone una copia del kit de herramientas de implementación de Oracle en su directorio de inicio bajo el ID de usuario que utiliza para iniciar sesión en el controlador Ansible.

git clone https://github.com/NetApp-Automation/na_oracle19c_deploy.git

Ejecute el kit de herramientas con su configuración

Ver el"Implementación de CLI de la base de datos Oracle 19c" para ejecutar el playbook con la CLI. Puede ignorar la parte ONTAP de la configuración de variables en el archivo VARS global cuando crea volúmenes de base de datos desde la consola de Azure en lugar de la CLI.

Nota El kit de herramientas implementa de forma predeterminada Oracle 19c con RU 19.8. Se puede adaptar fácilmente a cualquier otro nivel de parche con cambios menores en la configuración predeterminada. Los archivos de registro activos de la base de datos de semillas predeterminadas también se implementan en el volumen de datos. Si necesita archivos de registro activos en el volumen de registro, debe reubicarlos después de la implementación inicial. Comuníquese con el equipo de soluciones de NetApp para obtener ayuda si necesita ayuda.

Configurar la herramienta de respaldo AzAcSnap para obtener instantáneas consistentes con la aplicación para Oracle

La herramienta Instantánea consistente con la aplicación de Azure (AzAcSnap) es una herramienta de línea de comandos que permite la protección de datos para bases de datos de terceros al manejar toda la orquestación necesaria para ponerlas en un estado consistente con la aplicación antes de tomar una instantánea de almacenamiento. Luego devuelve estas bases de datos a un estado operativo. NetApp recomienda instalar la herramienta en el host del servidor de base de datos. Consulte los siguientes procedimientos de instalación y configuración.

Instalar la herramienta AzAcSnap

  1. Obtenga la versión más reciente de"El instalador de AzArcSnap" .

  2. Copie el autoinstalador descargado al sistema de destino.

  3. Ejecute el autoinstalador como usuario root con la opción de instalación predeterminada. Si es necesario, haga que el archivo sea ejecutable utilizando el chmod +x *.run dominio.

     ./azacsnap_installer_v5.0.run -I

Configurar la conectividad de Oracle

Las herramientas de instantáneas se comunican con la base de datos de Oracle y necesitan un usuario de base de datos con los permisos adecuados para habilitar o deshabilitar el modo de copia de seguridad.

1. Configurar el usuario de la base de datos AzAcSnap

Los siguientes ejemplos muestran la configuración del usuario de la base de datos Oracle y el uso de sqlplus para la comunicación con la base de datos Oracle. Los comandos de ejemplo configuran un usuario (AZACSNAP) en la base de datos de Oracle y cambian la dirección IP, los nombres de usuario y las contraseñas según corresponda.

  1. Desde la instalación de la base de datos de Oracle, inicie sqlplus para iniciar sesión en la base de datos.

    su – oracle
    sqlplus / AS SYSDBA
  2. Crear el usuario.

    CREATE USER azacsnap IDENTIFIED BY password;
  3. Otorgar permisos al usuario. Este ejemplo establece el permiso para que el usuario AZACSNAP pueda poner la base de datos en modo de respaldo.

    GRANT CREATE SESSION TO azacsnap;
    GRANT SYSBACKUP TO azacsnap;
  4. Cambiar la expiración de la contraseña del usuario predeterminado a ilimitada.

    ALTER PROFILE default LIMIT PASSWORD_LIFE_TIME unlimited;
  5. Validar la conectividad de azacsnap para la base de datos.

    connect azacsnap/password
    quit;

2. Configurar el usuario de Linux azacsnap para el acceso a la base de datos con la billetera Oracle

La instalación predeterminada de AzAcSnap crea un usuario del sistema operativo azacsnap. Su entorno de shell Bash debe configurarse para el acceso a la base de datos de Oracle con la contraseña almacenada en una billetera de Oracle.

  1. Como usuario root, ejecute el cat /etc/oratab Comando para identificar las variables ORACLE_HOME y ORACLE_SID en el host.

    cat /etc/oratab
  2. Agregue las variables ORACLE_HOME, ORACLE_SID, TNS_ADMIN y PATH al perfil bash del usuario azacsnap. Cambie las variables según sea necesario.

    echo "export ORACLE_SID=ORATEST" >> /home/azacsnap/.bash_profile
    echo "export ORACLE_HOME=/u01/app/oracle/product/19800/ORATST" >> /home/azacsnap/.bash_profile
    echo "export TNS_ADMIN=/home/azacsnap" >> /home/azacsnap/.bash_profile
    echo "export PATH=\$PATH:\$ORACLE_HOME/bin" >> /home/azacsnap/.bash_profile
  3. Como usuario de Linux azacsnap, crea la billetera. Se le solicitará la contraseña de la billetera.

    sudo su - azacsnap
    
    mkstore -wrl $TNS_ADMIN/.oracle_wallet/ -create
  4. Agregue las credenciales de la cadena de conexión a Oracle Wallet. En el siguiente comando de ejemplo, AZACSNAP es la ConnectString que utilizará AzAcSnap, azacsnap es el usuario de la base de datos de Oracle y AzPasswd1 es la contraseña de la base de datos del usuario de Oracle. Se le solicitará nuevamente la contraseña de la billetera.

    mkstore -wrl $TNS_ADMIN/.oracle_wallet/ -createCredential AZACSNAP azacsnap AzPasswd1
  5. Crea el tnsnames-ora archivo. En el siguiente comando de ejemplo, HOST debe configurarse en la dirección IP de la base de datos Oracle y el SID del servidor debe configurarse en el SID de la base de datos Oracle.

    echo "# Connection string
    AZACSNAP=\"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.30.137.142)(PORT=1521))(CONNECT_DATA=(SID=ORATST)))\"
    " > $TNS_ADMIN/tnsnames.ora
  6. Crea el sqlnet.ora archivo.

    echo "SQLNET.WALLET_OVERRIDE = TRUE
    WALLET_LOCATION=(
        SOURCE=(METHOD=FILE)
        (METHOD_DATA=(DIRECTORY=\$TNS_ADMIN/.oracle_wallet))
    ) " > $TNS_ADMIN/sqlnet.ora
  7. Pruebe el acceso a Oracle usando la billetera.

    sqlplus /@AZACSNAP as SYSBACKUP

    El resultado esperado del comando:

    [azacsnap@acao-ora01 ~]$ sqlplus /@AZACSNAP as SYSBACKUP
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 8 18:02:07 2022
    Version 19.8.0.0.0
    
    Copyright (c) 1982, 2019, Oracle.  All rights reserved.
    
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.8.0.0.0
    
    SQL>

Configurar la conectividad ANF

En esta sección se explica cómo habilitar la comunicación con Azure NetApp Files (con una máquina virtual).

  1. Dentro de una sesión de Azure Cloud Shell, asegúrese de haber iniciado sesión en la suscripción que desea que se asocie con la entidad de servicio de forma predeterminada.

    az account show
  2. Si la suscripción no es correcta, utilice el siguiente comando:

    az account set -s <subscription name or id>
  3. Cree una entidad de servicio mediante la CLI de Azure como en el siguiente ejemplo:

    az ad sp create-for-rbac --name "AzAcSnap" --role Contributor --scopes /subscriptions/{subscription-id} --sdk-auth

    El resultado esperado:

    {
      "clientId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "clientSecret": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "subscriptionId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "tenantId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "activeDirectoryEndpointUrl": "https://login.microsoftonline.com",
      "resourceManagerEndpointUrl": "https://management.azure.com/",
      "activeDirectoryGraphResourceId": "https://graph.windows.net/",
      "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/",
      "galleryEndpointUrl": "https://gallery.azure.com/",
      "managementEndpointUrl": "https://management.core.windows.net/"
    }
  4. Corte y pegue el contenido de salida en un archivo llamado oracle.json almacenado en el directorio bin del usuario azacsnap de Linux y protege el archivo con los permisos de sistema adecuados.

Nota Asegúrese de que el formato del archivo JSON sea exactamente como se describe arriba, especialmente con las URL entre comillas dobles (").

Complete la configuración de la herramienta AzAcSnap

Siga estos pasos para configurar y probar las herramientas de instantáneas. Después de una prueba exitosa, puede realizar la primera instantánea de almacenamiento consistente con la base de datos.

  1. Cambiar a la cuenta de usuario de instantánea.

    su - azacsnap
  2. Cambiar la ubicación de los comandos.

    cd /home/azacsnap/bin/
  3. Configurar un archivo de detalles de copia de seguridad de almacenamiento. Esto crea una azacsnap.json archivo de configuración.

    azacsnap -c configure –-configuration new

    La salida esperada con tres volúmenes de Oracle:

    [azacsnap@acao-ora01 bin]$ azacsnap -c configure --configuration new
    Building new config file
    Add comment to config file (blank entry to exit adding comments): Oracle snapshot bkup
    Add comment to config file (blank entry to exit adding comments):
    Enter the database type to add, 'hana', 'oracle', or 'exit' (for no database): oracle
    
    === Add Oracle Database details ===
    Oracle Database SID (e.g. CDB1): ORATST
    Database Server's Address (hostname or IP address): 172.30.137.142
    Oracle connect string (e.g. /@AZACSNAP): /@AZACSNAP
    
    === Azure NetApp Files Storage details ===
    Are you using Azure NetApp Files for the database? (y/n) [n]: y
    --- DATA Volumes have the Application put into a consistent state before they are snapshot ---
    Add Azure NetApp Files resource to DATA Volume section of Database configuration? (y/n) [n]: y
    Full Azure NetApp Files Storage Volume Resource ID (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...): /subscriptions/0efa2dfb-917c-4497-b56a-b3f4eadb8111/resourceGroups/ANFAVSRG/providers/Microsoft.NetApp/netAppAccounts/ANFAVSAcct/capacityPools/CapPool/volumes/acao-ora01-u01
    Service Principal Authentication filename or Azure Key Vault Resource ID (e.g. auth-file.json or https://...): oracle.json
    Add Azure NetApp Files resource to DATA Volume section of Database configuration? (y/n) [n]: y
    Full Azure NetApp Files Storage Volume Resource ID (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...): /subscriptions/0efa2dfb-917c-4497-b56a-b3f4eadb8111/resourceGroups/ANFAVSRG/providers/Microsoft.NetApp/netAppAccounts/ANFAVSAcct/capacityPools/CapPool/volumes/acao-ora01-u02
    Service Principal Authentication filename or Azure Key Vault Resource ID (e.g. auth-file.json or https://...): oracle.json
    Add Azure NetApp Files resource to DATA Volume section of Database configuration? (y/n) [n]: n
    --- OTHER Volumes are snapshot immediately without preparing any application for snapshot ---
    Add Azure NetApp Files resource to OTHER Volume section of Database configuration? (y/n) [n]: y
    Full Azure NetApp Files Storage Volume Resource ID (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...): /subscriptions/0efa2dfb-917c-4497-b56a-b3f4eadb8111/resourceGroups/ANFAVSRG/providers/Microsoft.NetApp/netAppAccounts/ANFAVSAcct/capacityPools/CapPool/volumes/acao-ora01-u03
    Service Principal Authentication filename or Azure Key Vault Resource ID (e.g. auth-file.json or https://...): oracle.json
    Add Azure NetApp Files resource to OTHER Volume section of Database configuration? (y/n) [n]: n
    
    === Azure Managed Disk details ===
    Are you using Azure Managed Disks for the database? (y/n) [n]: n
    
    === Azure Large Instance (Bare Metal) Storage details ===
    Are you using Azure Large Instance (Bare Metal) for the database? (y/n) [n]: n
    
    Enter the database type to add, 'hana', 'oracle', or 'exit' (for no database): exit
    
    Editing configuration complete, writing output to 'azacsnap.json'.
  4. Como usuario azacsnap de Linux, ejecute el comando de prueba azacsnap para realizar una copia de seguridad de Oracle.

    cd ~/bin
    azacsnap -c test --test oracle --configfile azacsnap.json

    El resultado esperado:

    [azacsnap@acao-ora01 bin]$ azacsnap -c test --test oracle --configfile azacsnap.json
    BEGIN : Test process started for 'oracle'
    BEGIN : Oracle DB tests
    PASSED: Successful connectivity to Oracle DB version 1908000000
    END   : Test process complete for 'oracle'
    [azacsnap@acao-ora01 bin]$
  5. Ejecute su primera copia de seguridad de instantánea.

    azacsnap -c backup –-volume data --prefix ora_test --retention=1