GNU/Linux >> Tutoriales Linux >  >> Cent OS

Los discos administrados por ASMLib en destinos iSCSI con rutas múltiples no se detectan después de reiniciar el servidor en CentOS/RHEL 7

El problema

Los servidores Oracle Real Application Clusters (RAC) se ejecutan en CentOS/RHEL 7 y utilizan discos iSCSI de múltiples rutas administrados por ASMLib. Al reiniciar el servidor, los discos de Oracle ASMLib no se detectan automáticamente en el momento del inicio, lo que provoca que Oracle Cluster Ready Services (CRS) no se inicie. Sin embargo, los discos ASM se detectan correctamente cuando se ejecuta manualmente el comando scandisks de oracleasm poco después de reiniciar el servidor.

La siguiente es la configuración de oracleasm

# cat /etc/sysconfig/oracleasm
...
ORACLEASM_ENABLED=true
ORACLEASM_UID=oracle
ORACLEASM_GID=dba
ORACLEASM_SCANBOOT=true
ORACLEASM_SCANORDER=""
ORACLEASM_SCANEXCLUDE=""
ORACLEASM_USE_LOGICAL_BLOCK_SIZE=false
...
# cat -n /usr/lib/systemd/system/oracleasm.service
1 [Unit]
2 Description=Load oracleasm Modules
3 Requires=multipathd.service
4 After=multipathd.service
...

La solución

Al revisar los mensajes de inicio del sistema dentro del registro del sistema (/var/log/messages), es evidente que:
– oracleasm.service se inicia antes de que iscsid.service se complete, lo que hace que todos los objetivos iSCSI estén completamente disponibles/operativos y antes de que se agregue multipathd.service al menos una ruta a los objetivos iSCSI.
– ohasd.service se inicia después de oracleasm.service pero no se detectan discos ASM.

Modifique el archivo /usr/lib/systemd/system/oracleasm.service y añada tanto el 'Requires ' y 'Después ‘ líneas con iscsid.service multi-user.target para asegurarse de que oracleasm.service se inicie después de completar iscsid.service y multipathd.service y después de que se haya alcanzado el objetivo multiusuario, es decir:

# cat -n /usr/lib/systemd/system/oracleasm.service
1 [Unit]
2 Description=Load oracleasm Modules
3 Requires=multipathd.service iscsid.service multi-user.target
4 After=multipathd.service iscsid.service multi-user.target
...

Modifique el archivo /etc/systemd/system/oracle-ohasd.service – añadir el 'Después ' línea con oracleasm.service para asegurarse de que CRS ohasd.service se inicie después de que oracleasm.service haya descubierto correctamente todos los discos ASM de múltiples rutas iSCSI, es decir:

# cat -n /etc/systemd/system/oracle-ohasd.service
...
5 [Unit]
6 Description=Oracle High Availability Services
7 After=syslog.target network-online.target remote-fs.target oracleasm.service
...
Nota :si /etc/systemd/system/oracle-ohasd.service no está disponible, consulte /etc/systemd/system/ohasd.service que proporciona una funcionalidad similar.


Cent OS
  1. Configurar el servidor SysLog en CentOS 6 / RHEL 6

  2. Solución de problemas de iSCSI:destinos no detectados después de reiniciar

  3. Cómo verificar si se requiere reiniciar el servicio o reiniciar el servidor después de la actualización del paquete RPM (CentOS/RHEL/Fedora)

  4. Cómo usar las reglas de Udev para crear discos Oracle en CentOS/RHEL 8

  5. Instale MySQL 5.6 en CentOS 7 / RHEL 7

Cómo instalar el servidor vnc en RHEL 8 / CentOS 8

RHEL 8/CentOS 8 habilita el servicio ssh

Instale Nginx en CentOS 7 / RHEL 7

Cómo instalar el servidor VNC en CentOS 8 / RHEL 8

Cómo instalar y configurar el servidor VNC (TigerVNC) en CentOS / RHEL 7

CentOS/RHEL 8:"ACPI MEMORY OR I/O RESET_REG" Servidor bloqueado después de reiniciar