Instala RAC de Oracle en la solución Bare Metal

Esta página muestra cómo instalar clústeres de aplicación real (RAC) de Oracle en del servidor de la solución Bare Metal.

Implementación

En esta guía, creamos una implementación que incluye Oracle RAC 19c instalado en un servidor de la solución Bare Metal. Compilamos un RAC de dos nodos con una base de datos.

Antes de comenzar

  • Asegúrate de aprovisionar la infraestructura necesaria para RAC Esto incluye dos nodos, almacenamiento compartido y volúmenes dedicados para alquilar el directorio principal de Oracle.
  • En esta guía, usamos el proceso de instalación de la GUI. Si también deseas usar la GUI de instalación, configurar Virtual Network Computing (VNC) en uno de los nodos siguiendo la guía de configuración de VNC para Oracle.
  • Crea un punto de activación local /apps para alojar la casa de Oracle y la de Grid directorios.

Instala RAC

La instalación de RAC en la solución Bare Metal implica los siguientes pasos:

  1. Prepara los nodos para la instalación de RAC.
  2. Configura ASM de Oracle.
  3. Realiza las verificaciones previas a la instalación.
  4. Instala Oracle RAC.
  5. Realiza los pasos posteriores a la instalación.

Prepara los nodos para la instalación de RAC

Sigue los siguientes pasos en ambos nodos, a menos que se especifique lo contrario:

  1. Actualiza el archivo /etc/hosts con las siguientes direcciones IP para RAC:

    • Direcciones IP públicas
    • Direcciones IP privadas
    • Direcciones IP virtuales
    • ANALIZAR direcciones IP virtuales

    A continuación, se muestra un ejemplo del archivo /etc/hosts modificado:

    
     10.*.*.* bms-jumphost
    
     # public IP addresses for Oracle RAC
     192.*.*.* at-2811641-svr001 at-2811641-svr001.localdomain
     192.*.*.* at-2811641-svr002 at-2811641-svr002.localdomain
    
     # private IP addresses for Oracle RAC
     172.*.*.* at-2811641-svr001-priv at-2811641-svr001-priv.localdomain
     172.*.*.* at-2811641-svr002-priv at-2811641-svr002-priv.localdomain
    
     # virtual IP addresses for Oracle RAC
     192.*.*.* at-2811641-svr001-vip at-2811641-svr001-vip.localdomain
     192.*.*.* at-2811641-svr002-vip at-2811641-svr001-vip.localdomain
    
     # SCAN virtual IP addresses for Oracle RAC
     192.*.*.* psoracle-scan psoracle-scan.localdomain
     192.*.*.* psoracle-scann psoracle-scan.localdomain
     192.*.*.* psoracle-scan psoracle-scan.localdomain
    
    
  2. Realiza una resolución de DNS para las direcciones IP virtuales y escanea la IP virtual direcciones IP del proveedor.

    Usamos Cloud DNS para resolver direcciones IP virtuales y SCAN direcciones IP virtuales. Si deseas obtener instrucciones, consulta Configura SCAN con Cloud DNS.

  3. Actualiza el archivo /etc/sysctl.conf con los parámetros del kernel.

    
     vi /etc/sysctl.conf
    
     # Added for Oracle
     fs.file-max = 6815744
     kernel.sem = 250 32000 100 128
     kernel.shmmni = 4096
     kernel.shmall = 1073741824
     kernel.shmmax = 4398046511104
     kernel.panic_on_oops = 1
     net.core.rmem_default = 262144
     net.core.rmem_max = 4194304
     net.core.wmem_default = 262144
     net.core.wmem_max = 1048576
     net.ipv4.conf.all.rp_filter = 2
     net.ipv4.conf.default.rp_filter = 2
     fs.aio-max-nr = 1048576
     net.ipv4.ip_local_port_range = 9000 65500
    
    
  4. Aplica las actualizaciones de los parámetros del kernel.

     /sbin/sysctl -p
    
  5. En el archivo /etc/security/limits.conf, agrega los límites de recursos.

    
     vi /etc/security/limits.conf
    
     ## Added for Oracle
     grid soft nofile 1024
     grid hard nofile 65536
     grid soft nproc 2047
     grid hard nproc 16384
     grid soft stack 10240
     grid hard stack 32768
    
     oracle soft nofile 1024
     oracle hard nofile 65536
     oracle soft nproc 2047
     oracle hard nproc 16384
     oracle soft stack 10240
     oracle hard stack 32768
    
    
  6. Agrega los usuarios y grupos necesarios.

    
     groupadd -g 54321 oinstall
     groupadd -g 54322 dba
     groupadd -g 54323 oper
     groupadd -g 54327 asmdba
     groupadd -g 54328 asmoper
     groupadd -g 54329 asmadmin
    
     useradd -u 54321 -g oinstall -G dba,oper,asmdba,asmoper,asmadmin,oracle
    
    
  7. Instala el paquete de preinstalación de Oracle.

    En esta guía, se supone que configuraste el repositorio de Oracle.

    
     yum install oracle-database-preinstall-19c
    
    

    El paquete oracle-database-preinstall-19c instala los paquetes necesarios y crea el usuario oracle y una entrada en el archivo /etc/sysctl.conf.

  8. Restablece la contraseña del usuario oracle.

    
     passwd oracle
    
    
  9. Instala los siguientes paquetes para Oracle ASM:

    • oracleasm-support
    • kmod-oracleasm
    
     yum install oracleasm-support
     yum install kmod-oracleasm
    
    
  10. Para inhabilitar SELinux, actualiza el archivo /etc/selinux/config.

    
     vi /etc/selinux/config
    
     # This file controls the state of SELinux on the system.
     # SELINUX= can take one of these three values:
     #     enforcing - SELinux security policy is enforced.
     #     permissive - SELinux prints warnings instead of enforcing.
     #     disabled - No SELinux policy is loaded.
     SELINUX=disabled
     # SELINUXTYPE= can take one of three values:
     #     targeted - Targeted processes are protected,
     #     minimum - Modification of targeted policy. Only selected processes are protected.
     #     mls - Multi Level Security protection.
     SELINUXTYPE=targeted
    
    
  11. Detén e inhabilita el firewall.

    
     systemctl stop firewalld.service
     systemctl disable firewalld
    
    
  12. Configura NTP.

    1. Instala el paquete NTP.

      
       yum install ntp
      
      
    2. Inicia el servicio ntpd.

      
       systemctl start ntpd
      
      
    3. Actualiza el archivo /etc/ntp.conf:

      En este caso, nos sincronizamos con nuestro host de bastión, que es 10.x.x.x. También puede ser tu servidor NTP interno. 192.x.x.x es la dirección IP de del servidor de la solución Bare Metal.

      
      vi /etv/ntp.conf
      
      restrict 192.x.x.x mask 255.255.255.0 nomodify notrap
      server 10.x.x.x prefer
      
      
    4. Actualiza el servidor NTP para iniciar la sincronización.

       ntpdate -qu SERVER_NAME
      
  13. Si avahi-daemon se está ejecutando, deténlo y, luego, inhabilítalo.

    
     systemctl status avahi-daemon
     ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack
       Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; enabled; vendor preset: enabled)
       Active: active (running) since Mon 2021-08-09 07:51:26 UTC; 23h ago
     Main PID: 2543 (avahi-daemon)
       Status: "avahi-daemon 0.6.31 starting up."
         Tasks: 2
       CGroup: /system.slice/avahi-daemon.service
               ├─2543 avahi-daemon: running [at-2811641-svr001.local]
               └─2546 avahi-daemon: chroot helper
    
     systemctl stop avahi-daemon
     Warning: Stopping avahi-daemon.service, but it can still be activated by:
       avahi-daemon.socket
    
     [root@at-2811641-svr001 ~]# systemctl disable avahi-daemon
     Removed symlink /etc/systemd/system/multi-user.target.wants/avahi-daemon.service.
     Removed symlink /etc/systemd/system/sockets.target.wants/avahi-daemon.socket.
     Removed symlink /etc/systemd/system/dbus-org.freedesktop.Avahi.service.
    
     systemctl status avahi-daemon
     ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack
       Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; disabled; vendor preset: enabled)
       Active: inactive (dead) since Tue 2021-08-10 07:16:28 UTC; 36s ago
     Main PID: 2543 (code=exited, status=0/SUCCESS)
    
    
  14. Crea los directorios de inicio de Oracle y Grid.

    
     mkdir -p /apps/grid/19.3.0/gridhome_1
     mkdir -p /apps/grid/gridbase/
    
     mkdir -p /apps/oracle/product/19.3.0/dbhome_1
    
     chmod -R 775 /apps/
     chown -R oracle:oinstall /apps/
    
    
  15. En el primer nodo, haz lo siguiente:

    1. Descarga los archivos de imagen de la infraestructura de Oracle Grid.
    2. Como usuario Oracle, copia los archivos descargados en el directorio principal de Grid.
    3. Como usuario de Oracle, extrae los archivos de imagen de Oracle Grid Infrastructure.
    
     cp LINUX.X64_193000_grid_home.zip /apps/grid/19.3.0/gridhome_1/
     cd /apps/grid/19.3.0/gridhome_1/
     unzip LINUX.X64_193000_grid_home.zip
    
    
  16. En cualquiera de los nodos, configura SSH sin contraseña para el usuario de Oracle.

    
     cd /apps/grid/19.3.0/gridhome_1/deinstall
    
     ./sshUserSetup.sh -user oracle -hosts "at-2811641-svr001 at-2811641-svr002" -noPromptPassphrase -confirm -advanced
    
    
  17. En cualquiera de los nodos, como usuario raíz, instala el paquete de RPM cvuqdisk desde el directorio de inicio de Grid.

    
     rpm -qa cvuqdisk
    
     cd /apps/grid/19.3.0/gridhome_1/cv/rpm/
    
     rpm -iv cvuqdisk-1.0.10-1.rpm
    
     Preparing packages...
     Using default group oinstall to install package
     cvuqdisk-1.0.10-1.x86_64
    
     rpm -qa cvuqdisk
    
     cvuqdisk-1.0.10-1.x86_64
    
    

Configura Oracle ASM

Para configurar Oracle ASM, sigue estos pasos como usuario raíz:

  1. En cualquiera de los nodos, identifica todos los LUN compartidos que usarás para Oracle ASM.

     multipath -ll
    
  2. En cualquiera de los nodos, crea particiones en todos los dispositivos compartidos con fdisk o gdisk.

     fdisk /dev/mapper/DISK_WWID
    

    Reemplaza lo siguiente:

    • DISK_WWID: El WWID del disco.

    Un resultado de muestra es el siguiente:

     fdisk /dev/mapper/3600a098038314343753f4f723154594e
    
     Welcome to fdisk (util-linux 2.23.2).
    
     Changes will remain in memory only, until you decide to write them. Be careful
     before using the write command.
    
     Device does not contain a recognized partition table Building a new DOS
     disklabel with disk identifier 0xf7f8fd23.
    
     The device presents a logical sector size that is smaller than the physical
     sector size. Aligning to a physical sector (or optimal I/O) size boundary is
     recommended, or performance may be impacted.
    
     Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4
     free) e extended Select (default p): p Partition number (1-4, default 1): First
     sector (2048-2147518463, default 2048): Using default value 2048 Last sector,
     +sectors or +size{K,M,G} (2048-2147518463, default 2147518463): Using default
     value 2147518463 Partition 1 of type Linux and of size 1 TiB is set
    
     Command (m for help): w The partition table has been altered!
    
     Calling ioctl() to re-read partition table.
    
     WARNING: Re-reading the partition table failed with error 22: Invalid argument.
     The kernel still uses the old table. The new table will be used at the next
     reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
    
     fdisk -l /dev/mapper/3600a098038314343753f4f723154594e
    
     Disk /dev/mapper/3600a098038314343753f4f723154594e: 1099.5 GB, 1099529453568 bytes,2147518464 sectors
     Units = sectors of 1 * 512 = 512 bytes
     Sector size (logical/physical): 512 bytes / 4096 bytes
     I/O size (minimum/optimal): 4096 bytes / 65536 bytes
     Disk label type: dos
     Disk identifier: 0xf7f8fd23
    
                                             Device Boot      Start         End      Blocks          Id  System
     /dev/mapper/3600a098038314343753f4f723154594e1            2048  2147518463  1073758208          83  Linux
    
  3. Ejecuta partprobe para que todas las particiones nuevas sean visibles.

     partprobe
    
  4. En ambos nodos, configura Oracle ASM.

     oracleasm configure -i
     Configuring the Oracle ASM library driver.
    
     This will configure the on-boot properties of the Oracle ASM library
     driver.  The following questions will determine whether the driver is
     loaded on boot and what permissions it will have.  The current values
     will be shown in brackets ('[]').  Hitting <ENTER> without typing an
     answer will keep that current value.  Ctrl-C will abort.
    
     Default user to own the driver interface []: oracle
     Default group to own the driver interface []: oinstall
     Start Oracle ASM library driver on boot (y/n) [n]: y
     Scan for Oracle ASM disks on boot (y/n) [y]: y
     Writing Oracle ASM library driver configuration: done
    
  5. En ambos nodos, establece el valor del parámetro ORACLEASM_SCANORDER en dm y el valor de ORACLEASM_SCANEXCLUDE en sd, ya que los servidores de la solución Bare Metal usan dispositivos de varias rutas.

     vi /etc/sysconfig/oracleasm
    
     ORACLEASM_SCANORDER="dm"
     ORACLEASM_SCANEXCLUDE="sd"
    
  6. En ambos nodos, verifica la configuración de Oracle ASM.

    
     oracleasm configure
     ORACLEASM_ENABLED=true
     ORACLEASM_UID=oracle
     ORACLEASM_GID=oinstall
     ORACLEASM_SCANBOOT=true
     ORACLEASM_SCANORDER="dm"
     ORACLEASM_SCANEXCLUDE="sd"
     ORACLEASM_SCAN_DIRECTORIES=""
     ORACLEASM_USE_LOGICAL_BLOCK_SIZE="false"
    
    
  7. En ambos nodos, inicia oracleasm.

    
     oracleasm init
    
     Creating /dev/oracleasm mount point: /dev/oracleasm
     Loading module "oracleasm": oracleasm
     Configuring "oracleasm" to use device physical block size
     Mounting ASMlib driver filesystem: /dev/oracleasm
    
    
  8. En ambos nodos, verifica el estado de oracleasm.

    
     oracleasm status
    
     Checking if ASM is loaded: yes
     Checking if /dev/oracleasm is mounted: yes
    
    
  9. En cualquiera de los nodos, crea discos de ASM de Oracle en los dispositivos particionados de varios caminos.

     oracleasm createdisk OCR /dev/mapper/DISK_WWID
    

    Reemplaza lo siguiente:

    • DISK_WWID: El WWID del disco.

    Un resultado de muestra es el siguiente:

    
     oracleasm createdisk OCR /dev/mapper/3600a098038314343753f4f723154594e1
     Writing disk header: done
     Instantiating disk: done
    
    
  10. En el primer nodo, muestra una lista de los nombres de los discos.

     oracleasm listdisks
    

    Este es un resultado de muestra:

    
    DATA01
    DATA02
    DATA03
    DATA04
    DATA05
    DATA06
    FRA01
    FRA02
    FRA03
    OCR
    
    
  11. En el segundo nodo, enumera los discos que se marcaron como discos ASMLIB. en el primer nodo.

     oracleasm scandisks
    

    Este es un resultado de muestra:

    
    Reloading disk partitions: done
    Cleaning any stale ASM disks...
    Scanning system for ASM disks...
    Instantiating disk "DATA01"
    Instantiating disk "DATA06"
    Instantiating disk "DATA04"
    Instantiating disk "OCR"
    Instantiating disk "DATA05"
    Instantiating disk "FRA01"
    Instantiating disk "DATA03"
    Instantiating disk "FRA03"
    Instantiating disk "FRA02"
    Instantiating disk "DATA02"
    
  12. En el segundo nodo, enumera los nombres de los discos.

     oracleasm listdisks
    

    Este es un resultado de muestra:

    oracleasm listdisks
    DATA01
    DATA02
    DATA03
    DATA04
    DATA05
    DATA06
    FRA01
    FRA02
    FRA03
    OCR
    
    

    Si los discos no aparecen en el segundo nodo después del análisis, ejecuta el comando partprobe para que las particiones sean visibles.

Realiza verificaciones previas a la instalación

Verifica si todos los requisitos previos para la instalación de la infraestructura de Oracle Grid los objetivos de la empresa. En el primer nodo, ejecuta la secuencia de comandos runcluvfy.sh.

   
   ./runcluvfy.sh stage -pre crsinst -n at-2811641-svr001,at-2811641-svr002 -verbose
   

Si alguno de los requisitos previos falla, corrígelo antes de continuar con el instalación.

Instala Oracle RAC

En el primer nodo en el que descargaste y extrajiste los archivos de imagen de Oracle Grid Infrastructure, sigue estos pasos:

  1. Conéctate al servidor de la solución Bare Metal a través del visor de VNC.
  2. Ejecuta la secuencia de comandos gridSetup.sh:
  3. En la página Seleccionar opción de configuración, selecciona Oracle Grid Infrastructure para un clúster nuevo y, luego, haz clic en Siguiente.
  4. En la página Selecciona la configuración del clúster, selecciona Configura un clúster independiente de Oracle y, luego, haz clic en Siguiente.
  5. En la página Información de la función Plug and Play de la cuadrícula, haz lo siguiente:

    1. Selecciona Create local SCAN.
    2. Ingresa un nombre para el clúster. Asegúrate de que tenga menos de 15 caracteres.
    3. Ingresa un nombre de SCAN.
    4. Ingresa un puerto SCAN.
    5. Haz clic en Siguiente.
  6. Para agregar el segundo nodo, haz clic en Agregar y sigue estos pasos:

    1. Ingresa el nombre de host público del segundo nodo.
    2. Ingresa el nombre de host virtual del segundo nodo.
    3. Haz clic en Aceptar.
  7. En la página Especificar el uso de la interfaz de red, haz lo siguiente:

    1. Para cada interfaz, en la columna Usar para, selecciona el tipo de uso. Para la interfaz privada, selecciona ASM y privada.
    2. Haz clic en Siguiente.
  8. En la página Información de opciones de almacenamiento, selecciona ASM de Oracle Flex para almacenamiento con el fin de almacenar archivos de OCR y archivos de disco de votación en Oracle ASM y, luego, haz clic en Siguiente.

  9. En Crear repositorio de administración de infraestructura de la cuadrícula, selecciona y, luego, haz clic en Siguiente.

    En este paso, se crea el repositorio de administración de infraestructura de la cuadrícula (GIMR).

  10. En la página Grid Infrastructure Management Management Repository option, selecciona No, ya que no queremos crear un grupo de discos independiente para GIMR.

  11. En la página Crear grupo de discos ASM, haz lo siguiente:

    1. Ingresa el nombre del grupo de discos.
    2. Haz clic en Cambiar ruta de descubrimiento y, luego, ingresa la ruta de descubrimiento correcta. a discos de Oracle ASM.

      Asegúrate de que los dispositivos estén asignados a varios caminos para que los discos de ASM de Oracle estén activos incluso después de que se caiga una ruta.

  12. En la página Especifica la contraseña de ASM, haz lo siguiente:

    1. Selecciona Usar las mismas contraseñas para estas cuentas.
    2. Ingresa y confirma la contraseña.
    3. Haz clic en Siguiente.
  13. En la página Compatibilidad con aislamiento de fallas, selecciona No usar la interfaz de administración de plataforma inteligente (IPMI) y haz clic en Siguiente.

  14. En la página Especifica las opciones de administración, haz clic en Siguiente, ya que no estamos configurando Oracle Grid Infrastructure con Oracle Enterprise Manager.

  15. En la página Grupos de sistemas operativos con privilegios, haz lo siguiente:

    1. Para todos los privilegios de ASM de Oracle, selecciona oinstall. También puedes usar asmdba y asmoper.
    2. Haz clic en Siguiente.
  16. En la página Especificar la ubicación de la instalación, especifica la base de Oracle y Haz clic en Siguiente.

  17. La ejecución de las secuencias de comandos raíz puede realizarse automáticamente si tienes permisos de administrador o si el usuario oracle tiene el privilegio sudo. Sin embargo, en esta guía, ejecutamos las secuencias de comandos de forma manual. Por lo tanto, en la página Root script execution, haz clic en Next.

  18. En la página Realizar verificaciones de requisitos previos, haz lo siguiente:

    1. Corrige las fallas que se muestren.

      Si corregiste todas las fallas que encontraste cuando ejecutaste la secuencia de comandos runcluvfy.sh, como se describe en la sección Realiza verificaciones previas a la instalación, puedes esperar una instalación limpia.

    2. Después de corregir los errores, haz clic en Revisar para actualizar el estado de los errores como Correcto.

    3. Haz clic en Siguiente.

  19. Revisa el resumen y haz clic en Instalar.

  20. El mensaje de instalación te pedirá que ejecutes las secuencias de comandos raíz en ambos nodos. Primero, ejecuta las secuencias de comandos en el primer nodo y, luego, en el segundo.

    
     /apps/grid/oraInventory/orainstRoot.sh
     /apps/grid/19.3.0/gridhome_11/grid/root.sh
    
    
  21. Cuando aparezca la ventana Finish, haz clic en Close.

Realiza los pasos posteriores a la instalación

Una vez completada la instalación de Oracle Grid Infrastructure, sigue estos pasos:

  1. Instalar y configurar el software de la base de datos de Oracle

    Para la instalación de RAC, elige la opción de instalación Solo software.

    Para obtener instrucciones para instalar el software de la base de datos de Oracle, consulta el blog: Cómo instalar y configurar paso a paso los objetos binarios de Oracle 19c para la base de datos de RAC.

  2. Crea grupos de discos de Oracle ASM.

    1. Crea una entrada para la instancia de ASM de Oracle en el archivo /etc/oratab.

      
      vi /etc/oratab
      
      +ASM1:/apps/grid/19.3.0/gridhome_1:N
      
      
    2. Configura las variables ORACLE_SID y ORACLE_HOME para la instancia de Oracle ASM y conéctate a ella.

      
      . oraenv
      ORACLE_SID = [oracle] ? +ASM1
      The Oracle base has been set to /apps/grid/gridbase
      
      sqlplus / as sysasm
      
      SQL> select INSTANCE_NAME,STATUS from v$instance;
      
      INSTANCE_NAME    STATUS
      ---------------- ------------
      +ASM1           STARTED
      
      
    3. Verifica que los discos que se agregarán tengan un HEADER_STATUS de PROVISIONED.

      
      SQL> select HEADER_STATUS,STATE,TOTAL_MB/1024,path from v$asm_disk;
      
      HEADER_STATUS.      STATE             PATH
      ------------ -------- ------------- -------------------------
      PROVISIONED            NORMAL       /dev/oracleasm/disks/DAT01
      
      PROVISIONED             NORMAL      /dev/oracleasm/disks/DATA02
      
      MEMBER              NORMAL       /dev/oracleasm/disks/OCR
      
      
    4. Crea el grupo de discos a partir de un nodo.

      
      SQL> create diskgroup DATA external redundancy disk '/dev/oracleasm/disks/DATA01','/dev/oracleasm/disks/DATA02';
      Diskgroup created.
      
      SQL> select name, state, type from v$asm_diskgroup;
      
      NAME             STATE      TYPE
      ------------------------------
      OCR           MOUNTED      EXTERN
      DATA            MOUNTED    EXTERN
      
      
    5. En el otro nodo, accede a la instancia de Oracle ASM y activa el disco. grupo.

      
      SQL> select name, state, type from v$asm_diskgroup;
      
      NAME                 STATE       TYPE
      -------------------- ----------- ------
      DATA                 DISMOUNTED
      OCR                  MOUNTED     EXTERN
      
      SQL> alter diskgroup DATA mount;
      
      Diskgroup altered.
      
      SQL> select name, state, type from v$asm_diskgroup;
      
      NAME                           STATE       TYPE
      ------------------------------ ----------- ------
      OCR                            MOUNTED     EXTERN
      DATA                           MOUNTED     EXTERN
      
      
  3. Crea una base de datos RAC con el Asistente de configuración de bases de datos de Oracle (DBCA).

    Asegúrate de elegir Database type como Real Application Cluster Database.

    Para obtener instrucciones, consulta la documentación de Oracle.

La instalación de la base de datos de RAC se completó y está lista para usarse.

¿Qué sigue?