oracle 12c rac flex,Oracle RAC 12c: "Flex ASM" y "Flex Cluster"

Introducción:

"Oracle Real Application Cluster (RAC)" es un producto muy conocido hoy en día dentro de las soluciones que proporciona Oracle para mantener Alta Disponibilidad de los datos de nuestro negocio. Oracle RAC permite compartir la carga de trabajo entre todos los nodos que conforman el cluster, resultando en una configuración con tolerancia de N-1 ante fallos de los nodos, donde N es el número total de nodos. Oracle RAC constantemente está adquiriendo mejoras en cada una de sus versiones y ésta vez no fue diferente, en su nueva versión 12c incorpora dos características muy importantes llamadas "Flex ASM" y "Flex Cluster" que dan soporte a los requerimientos exigidos en ambientes orientados a "Cloud Computing".

"Oracle Flex ASM" cambia la arquitectura de ASM con respecto a las versiones anteriores de Oracle RAC. Antes de la introducción de "Oracle Flex ASM" en la base de datos Oracle versión 12c, una instancia de ASM existía en cada uno de los nodos del cluster, si una instancia de ASM fallaba, entonces todas las instancias de base de datos ejecutándose en el mismo nodo también fallarían.

Ahora, en la base de datos Oracle versión 12c, si una instancia de ASM falla, "Oracle Clusterware" inicia un reemplazo de la instancia de ASM en un nodo diferente para mantener la cardinalidad de ASM.

La cardinalidad por defecto para ASM es de tres, pero eso puede ser cambiado con algunos pocos comandos del Clusterware.

Comparación entre "Oracle Flex Cluster" y "Oracle Flex ASM":

Antes de la versión 12c la topología de los nodos dentro del Oracle RAC cumplía con las siguientes dos normas:

Cada nodo dentro del cluster es conectado a los otros nodos mediante una red privada.

Cada nodo dentro del cluster es conectado directamente al almacenamiento compartido.

En Oracle RAC 12c se introdujeron dos nuevos conceptos:

Nodos Hub: Estos nodos son conectados entre ellos mediante una red privada y acceden directamente al almacenamiento compartido, tal como lo era en las versiones anteriores. Estos nodos son los que acceden directamente al Oracle Cluster Registry (OCR) y Voting Disk (VD).

Nodos Leaf: Estos nodos son más ligeros y no están conectados entre ellos ni acceden directamente al almacenamiento compartido tal como sucede con los "Nodos Hub". Cada "Nodo Leaf" se comunica con el "Nodo Hub" al cual está adjunto y es conectado al cluster de igual manera a través de su "Nodo Hub".

"Oracle Flex Cluster" es un cluster con nodos de tipo "Hub" y nodos de tipo "Leaf". "Oracle Flex Cluster" requiere "Oracle Flex ASM". En una configuración de "Oracle Flex Cluster", el "Oracle Flex ASM" puede estar ejecutándose en los nodos de tipo "Hub" sirviendo a clientes a través de ellos. Las ventajas principales al usar "Oracle Flex Cluster" son:

Al reducir la cantidad de nodos que acceden al almacenamiento compartido a solamente el número de nodos "Hub", se reduce la contención en OCR y "Voting disk" .

Existe menos trafico de red entre los nodos del cluster utilizado por los "heartbeats".

format,png

Maneras de implementar "Oracle Flex ASM":

El "Oracle Flex ASM" puede ser implementado de dos maneras:

Con versión 12c:

"Grid Infrastructure (GI)" y la base de datos están ambos en versión 12c.

Con versiones mixtas:

La instancia de ASM en versión 12c correrá en cada nodo dentro de la configuración Flex para servir las instancias de base de datos en una versión anterior a 12c. La ventaja de esta configuración es que si una instancia de una base de datos pierde conectividad con una instancia ASM, entonces las conexiones de base de datos realizarán "failover" hacia otra instancia de ASM en un nodo diferente.

Comparación entre RAC 12c y versiones anteriores:

El escenario que se utilizó para esta comparación es el siguiente:

RAC 12c con los siguientes componentes:

Dos nodos: "rac1" y "rac2".

Dos instancias de base de datos: "orcl1" y "orcl2"

Dos instancias de ASM: "+ASM1" y "+ASM2".

RAC 11g con los siguientes componentes:

Dos nodos: "rac1" y "rac2".

Dos instancias de base de datos: "flavia1" y "flavia2"

Dos instancias de ASM: "+ASM1" y "+ASM2".

RAC1: ¿Cómo verificar si "Oracle Flex ASM" está habilitado o no?

[oracle@oel6-112-rac1 Desktop]$ asmcmd

ASMCMD> showclustermode

ASM cluster : Flex mode enabled

ASMCMD> showclusterstate

Normal

RAC1: ¿Cómo cambiar la cardinalidad de ASM?

[oracle@oel6-112-rac1 Desktop]$ srvctl status asm -detail

ASM is running on oel6-112-rac2,oel6-112-rac1

ASM is enabled.

[oracle@oel6-112-rac1 Desktop]$ srvctl config asm -detail

ASM home: /u01/app/12.1.0/grid

Password file: +DATA/orapwASM

ASM listener: LISTENER

ASM is enabled.

ASM instance count: 3

Cluster ASM listener: ASMNET1LSNR_ASM

RAC2: ¿Cómo verificar si "Oracle Flex ASM" está habilitado o no?

[oracle@oel6-112-rac2 Desktop]$ asmcmd

ASMCMD> showclustermode

ASM cluster : Flex mode enabled

ASMCMD> showclusterstate

Normal

ASMCMD> exit

RAC2: ¿Cómo cambiar la cardinalidad de ASM?

[oracle@oel6-112-rac2 Desktop]$ srvctl config asm -detail

ASM home: /u01/app/12.1.0/grid

Password file: +DATA/orapwASM

ASM listener: LISTENER

ASM is enabled.

ASM instance count: 3

Cluster ASM listener: ASMNET1LSNR_ASM

Oracle RAC 12c:

Configuración estándar de "Oracle Flex ASM":

format,png

Fallo de una instancia de ASM con una configuración de "Oracle Flex ASM"

format,png

1. Conectarse al Nodo 1 (rac1):

[oracle@oel6-112-rac1 Desktop]$ hostname

oel6-112-rac1.localdomain

2. Verificar si existen instancias en el nodo 1 (rac1): La instancia de base de datos "orcl1" está ejecutándose al igual que la instancia de ASM "+ASM1".

[oracle@oel6-112-rac1 Desktop]$ ps -ef | grep pmon

oracle 3325 1 0 17:39 ? 00:00:00 asm_pmon_+ASM1

oracle 5806 1 0 17:42 ? 00:00:00 ora_pmon_orcl1

3. Verificar el estado de las instancias de ASM desde el nodo 1 (rac1):

[oracle@oel6-112-rac1 Desktop]$ srvctl status asm

ASM is running on oel6-112-rac2,oel6-112-rac1

4. Verificar el estado del Cluster en el nodo 1 (rac1):

[oracle@oel6-112-rac1 Desktop]$ crsctl check cluster

CRS-4537: Cluster Ready Services is online

CRS-4529: Cluster Synchronization Services is online

CRS-4533: Event Manager is online

5. Detener la instancia de ASM en el nodo 1 (rac1): Se detendrá de manera forzada para simular un fallo de la misma.

[oracle@oel6-112-rac1 Desktop]$ srvctl stop asm -node oel6-112-rac1 -stopoption abort -force

6. Verificar el estado de la instancia de ASM en el nodo 1 (rac1): La instancia de ASM en el nodo 1 ya no está ejecutándose.

7. Verificar el estado del Cluster en el nodo 1 (rac1):

[oracle@oel6-112-rac1 Desktop]$ crsctl check cluster

CRS-4535: Cannot communicate with Cluster Ready Services

CRS-4529: Cluster Synchronization Services is online

CRS-4533: Event Manager is online

8. Verificar el estado de ASM y la instancia de base de datos desde el nodo 1 (rac1): La instancia de la base de datos "orcl1" aún sigue ejecutándose aunque no exista ninguna instancia de ASM en el mismo nodo.

[oracle@oel6-112-rac1 Desktop]$ ps -ef | grep pmon

oracle 5806 1 0 17:42 ? 00:00:00 ora_pmon_orcl1

9. Comprobación de los resultados (rac1): Las dos instancias de base de datos "orcl1" y "orcl2" están ejecutándose sin importar que la instancia de ASM "+ASM1" no exista.

[oracle@oel6-112-rac1 Desktop]$ sqlplus /nolog

SQL*Plus: Release 12.1.0.1.0 Production on Wed Sep 25 18:24:36 2013

Copyright (c) 1982, 2013, Oracle. All rights reserved.

SQL> connect sys/oracle@orcl as sysdba

Connected.

SQL> select instance_name,instance_number from gv$instance;

INSTANCE_NAME INSTANCE_NUMBER

-------------------------------------------

orcl2 2

orcl1 1

SQL> select instance_name,instance_number from v$instance;

INSTANCE_NAME INSTANCE_NUMBER

-------------------------------------------

orcl2 2

SQL> connect sys/oracle@orcl as sysdba

Connected.

SQL> select instance_name,instance_number from gv$instance;

INSTANCE_NAME INSTANCE_NUMBER

-------------------------------------------

orcl1 1

10. Conectarse a la instancia de ASM del nodo 2 (rac2) desde el nodo 1 (rac1): La instancia de ASM del nodo 2 (rac2) es accesible desde el nodo 1.

[oracle@oel6-112-rac1 Desktop]$ . oraenv

ORACLE_SID = [orcl1] ? +ASM2

ORACLE_HOME = [/home/oracle] ? /u01/app/12.1.0/grid

The Oracle base remains unchanged with value /u01/app/oracle

[oracle@oel6-112-rac1 Desktop]$ asmcmd --privilege sysasm --inst +ASM2

ASMCMD> lsdg

State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB

MOUNTED EXTERN N 512 4096 1048576 15342 4782 0

Usable_file_MB Offline_disks Voting_files Name

4782 0 Y DATA/

ASMCMD>

Resumen: La instancia de base de datos estaba usando una instancia de ASM dedicada y esa instancia de ASM fue forzada a bajar simulando un fallo de la misma, entonces la instancia de base de datos se reconectó a una existente instancia de ASM en otro nodo, en este ejemplo... hacia el nodo 2 (rac2).

Oracle RAC 11.2 o anterior:

format,png

1. Realizar "Login" en el nodo 1 (rac1):

login as: oracle

oracle@192.168.xx.xx's password:

Last login: Fri Sep 27 06:05:44 2013

2. Verificar si existen instancias en el nodo 1 (rac1): La instancia de base de datos "flavia1" está ejecutándose al igual que la instancia de ASM "+ASM1".

[oracle@rac1 ~]$ ps -ef | grep pmon

oracle 3053 1 0 05:56 ? 00:00:00 asm_pmon_+ASM1

oracle 3849 1 0 05:57 ? 00:00:00 ora_pmon_flavia1

3. Verificar el estado de la instancia de ASM en el nodo 1 (rac1): Existe una instancia de ASM en cada uno de los dos nodos del cluster.

[oracle@rac1 ~]$ srvctl status asm

ASM is running on rac2,rac1

4. Verificar el estado del Cluster en el nodo 1 (rac1):

[oracle@rac1 ~]$ crsctl check cluster

CRS-4537: Cluster Ready Services is online

CRS-4529: Cluster Synchronization Services is online

CRS-4533: Event Manager is online

5. Detener la instancia de ASM en el nodo 1 (rac1): Se detendrá de manera forzada para simular un fallo de la misma.

[oracle@rac1 ~]$ srvctl stop asm -n rac1 -o abort -f

6. Verificar el estado de la instancia ASM en el nodo 1 (rac1): Solo existe una instancia de ASM ejecutándose en el nodo 2 del cluster (rac2):

[oracle@rac1 ~]$ srvctl status asm

ASM is running on rac2

7. Verificar el estado de las instancias de ASM y base de datos en el nodo 1 (rac1): Dado que falló la instancia de ASM en el nodo 1, también falló la instancia de base de datos.

[oracle@rac1 ~]$ ps -ef | grep pmon

oracle 7885 5795 0 06:20 pts/0 00:00:00 grep pmon

Resumen: La instancia de base de datos está fuertemente acoplada con la instancia de ASM. Si una instancia de ASM falla, también la instancia de base de datos en el mismo nodo fallará.

Características de Flex ASM:

El máximo número de "Disk Groups" es incrementado desde 63 a 511.

Ahora hay un comando para renombrar un "ASM Disk" en un "Disk Group".

Verificación a nivel de parche de la instancia de ASM

La verificación de nivel de parche es deshabilitado durante se  aplica un parche.

Metadata física replicada.

"Oracle Flex ASM" soporta tamaños de LUN muy grandes para base de datos 12c.

Ningún parámetro especifico es requerido dentro de la base de datos para usar "Oracle Flex ASM".

La instancia de ASM usa Automatic Memory Management (AMM).

La reconexión de una instancia de base de datos hacia otra instancia de ASM es automática.

Nuevas características de red agregadas en Flex ASM:

En previas versiones el cluster requiere:

Una red pública para acceso de  clientes.

Una o más redes privadas para comunicación entre nodos dentro del cluster incluyendo trafico de ASM.

"Oracle Flex ASM" agrega una red dedicada para ASM, que puede ser usada para comunicación entre ASM y clientes para aislar y mitigar el trafico de ASM.

Implementación de "Oracle Flex ASM":

• Elija la opción “Advanced Installation”

format,png

• Existen tres opciones de almacenamiento para los datos:

Standard ASM

Configuración usada para versiones anteriores a 12c.

"Oracle Flex ASM"

Recommended

Non-ASM managed storage

Utilizar un sistema de archivos diferente a ASM.

format,png

Deiby Gomez es un DBA con experiencia en Oracle Exadata Database Machine y Soluciones de Alta Disponibilidad. Deiby frecuentemente da conferencias en distintos eventos de Oracle en Guatemala tales como "Oracle Technology Network Tour", "Java Day", "Primer Simposio de Oracle" y en varias Universidades de su país de residencia (Guatemala). Deiby es el primer Oracle ACE de Guatemala. Es "Oracle RAC 11g and Grid Infraestructure Administrator", "Exadata Database Machine X3 Administrator", "Oracle Linux Certified Implementation Specialist" y "Oracle SOA Implementation Certified Expert".

Yenugula Venkata Ravikumar es un DBA con más de 15 años de experiencia especializada en entornos de alta disponibilidad de bases de datos (RAC, Data Guard, entre otros), afinamiento y rendimiento, migraciones, backup y recuperación, Oracle Exadata X2 y X3, es experto en sistemas operativos tales como AIX, HP-UX y Linux. Ha participado como conferencista en varios eventos de Oracle en la India, donde reside actualmente. Obtuvo el titulo "Oracle Certified Master (OCM 10g)" en el 2009.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值