Almacenamiento en Oracle RAC: raw devices, Cluster File System y ASM

Un sistema de archivos tradicional (file system) es una estructura de árbol compuesta por directorios y archivos que se implementa a traves del kernel del sistema operativo. El sistema de archivos utiliza el concepto de buffering de cache optimizando el número de veces que el sistema operativo debe acceder al disco. El sistema de archivos toma el control de las operaciones de entrada/salida liberando a los procesos de esta operación y permitiéndoles continuar con otras operaciones. El sistema de archivos retiene en cache los datos a escribir hasta tener múltiples datos para procesar en forma conjunta, lo cual mejora el rendimiento del sistema.

En una arquitectura de Oracle RAC dos o mas instancias en servidores separados compartirían un mismo sistema de archivos pues el almacenamiento es único para ambas instancias. Sin embargo los sistemas de archivos tradicionales provistos por Unix no ofrecen esta prestación; es decir que dos servidores Unix no pueden compartir un mismo file system.

Las opciones que propone Oracle para poder implementar un sistema de múltiples instancias sobre un almacenamiento único son tres: raw devices, Cluster file System (CFS) y Automatic Storage Management (ASM). A continuación, un detalle de cada opción.

Raw Devices
Un raw device es una región contigua de un disco accedida a través de una interface que provee acceso “crudo” al sistema de entrada/salida. Al decir acceso “crudo” estamos diciendo que no es a través del sistema de archivos. En Unix, esta interface se implementa con un dispositivo de caracter (character-device). De este modo se logra un acceso directo entre un proceso y un disco lógico. En una implementación de este tipo, la ejecución de una operación de escritura hecha por un proceso moverá los datos al dispositivo en forma directa (no a través del file system). Si bien esta solución es muy eficiente (sobre todo en un sistema con alta contención de entrada/salida), es la mas compleja de todas las opciones desde el punto de vista administrativo.

Cluster File System (CFS)
Los sistemas de archivos en cluster (CFS) permiten que múltiples servidores puedan acceder al mismo sistema de archivos. CFS resuelve las desventajas y complejidades de los raw devices proveyendo una solución más simple para la administración del almacenamiento. Oracle soporta diversos tipos de CFS: Oracle Cluster File system (OCFS), Veritas Cluster File System (VCFS), IBM GPFS, Tru64 File System. La desventaja de esta solución es su costo, dado que las alternativas provistas por los diversos vendors requerirán de su correspondiente licencia. En el caso de Oracle Cluster File System (OCFS), si bien es libre, sólo está disponible para entornos Linux y Windows.

Automatic Storage Management (ASM)
Automatic Storage Management es la solución provista y elegida por Oracle que virtualiza el acceso al almacenamiento actuando como interface entre una instancia Oracle y el dispositivo de almacenamiento que contiene los datos. ASM provee tanto las prestaciones de un file system como las de un volume manager. ASM se implementa como una instancia Oracle que deberá estar presente en cada uno de los nodos que conforman el cluster. ASM es la solución mas recomendada por Oracle. Implementando ASM se evita la complejidad de los raw devices y se evita el costo económico de licenciamiento de Cluster File System.

6 comentarios

  1. Aca esta respondida otra de mis preguntas, Queda mas claro que es ASM.

  2. Muy bueno el panorama que nos brindás, como experiencia personal podría agregar que tanto la implementación sobre cluster file system como raw devices tienen sus pro y contras. Los CFS, principalmente los NO Linux como ser QFS y Veritas FS si bien facilitan opciones de instalación y administración, bajo mi punto de vista agregan un capa de software que más allá de penalizar en performance generan un buen “caldo de cultivo” para imprevistos bugs. No así OCFS que lo concidero un excelente producto pero lamentablemente solo disponible para Linux.
    Por el lado de los raw devices, nos obligan a tener particulares cuidados a nivel administrativo, pero nos garantizan la mejor performance y la tranquilidad de un innumerable conjunto de intalaciones probadas y corriendo en producción.

  3. Buenos Dìas.

    Si tengo 2 equipos Linux que los quiero configurar en RAC

    ¿Cuales son los minimos requerimientos de Hardware para implementar el RAC?

    ¿Cuales son los minimos requerimientos de Software de Oracle?

    Saludos.

  4. Muchas gracias por el aporte!!!….seria bueno si tenes algun documento completo sobre instalacion (paso a paso incluyendo las librerias que se necesitan en linux por ejemplo o en unix), administracion y procedimiento de backups!!

    Sebastian, ex-colega de Exolgan…., me sumo a tu comentario

  5. Me gusta lo que haces, creo que es una gran aportación. Me quedó claro y con ello tengo una buena base para involucrarme con lo siguiente.

    Gracias.

  6. Trabajo con una BBDD Oracle 10.2.0.4.0 RAC, con dos nodos.

    La instalación de una de las tres configuraciones que proporciona Oracle RAC para suministrar acceso compartido al almacenamiento ((ASM, Raw volumes o Cluster File System) viene intrínseca a dicha instalación? o es posible que no se tenga ninguna?

    En caso de no tener ninguna de estas configuraciones, tenemos que activar el UTL_FILE para unos PL/SQL que generarán ficheros, y tendríamos que decidir en qué nodo deben correr dichos PL, ¿esto es posible?.

    Además, para decidir en qué nodo instalarlos, ¿necesitaríamos conocer el comportamiento de dichos nodos?:
    – si tenemos un nodo principal y otro secundario (por si el nodo principal deja de funcionar),
    – o los cluster de que disponemos realizan balanceo de carga entre ellos…
    .. en fin, necesitamos conocer el tipo de arquitectura RAC que tenemos, ¿verdad?
    ¿podríamos determinar en qué nodo deberían correr los PL, sin cargarnos las ventajas de tener un RAC?, ¿cómo nos aseguraríamos acceder al servidor correcto?,

    muchas gracias de antemano,


Comments RSS TrackBack Identifier URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s