Gestión de sistemas de archivos ZFS en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Diciembre de 2014
 
 

Prácticas de creación de agrupaciones de almacenamiento ZFS

Las siguientes secciones proporcionan prácticas de agrupaciones generales y más específicas.

Prácticas generales de agrupaciones de almacenamiento

  • Utilice discos enteros para activar la memoria caché de escritura de disco y para proporcionar mantenimiento más sencillo. Crear agrupaciones en segmentos agrega complejidad a la gestión y recuperación de discos.

  • Utilice la redundancia de ZFS para que ZFS pueda reparar las incoherencias de datos.

    • El siguiente mensaje aparece cuando se crea una agrupación no redundante:

      # zpool create tank c4t1d0 c4t3d0
      'tank' successfully created, but with no redundancy; failure
      of one device will cause loss of the pool
    • Para agrupaciones reflejadas, utilice pares de discos reflejados.

    • Para agrupaciones RAID-Z, agrupe de 3 a 9 discos por VDEV

    • No combine componentes RAID-Z y reflejados dentro de la misma agrupación. Estas agrupaciones son más difíciles de gestionar y el rendimiento puede verse afectado.

  • Utilice reservas activas para reducir el tiempo de inactividad debido a fallos de hardware.

  • Utilice discos de tamaño similar para que la E/S esté equilibrada entre dispositivos.

    • Los LUN más pequeños se pueden ampliar en LUN más grandes.

    • Para mantener tamaños óptimos de metaslabs, no expanda LUN de tamaños extremadamente distintos, como de 128 MB a 2 TB.

  • Considere la posibilidad de crear una agrupación raíz pequeña y agrupaciones de datos más grandes para admitir una recuperación del sistema más rápida.

  • El tamaño de agrupación mínimo recomendado es de 8 GB. Aunque el tamaño de agrupación mínimo es de 64 MB, cualquier valor inferior a 8 GB hace que la asignación y la reclamación de espacio libre en la agrupación sean más complicadas.

  • El tamaño de agrupación máximo recomendado debe ajustarse con facilidad al tamaño de datos o la carga de trabajo. No intente almacenar más datos de los que puede realizar copia de seguridad de forma regular. De lo contrario, sus datos corren riesgo ante eventos imprevistos.

También consulte Prácticas de creación de agrupaciones en matrices de almacenamiento locales o conectadas a la red.

Prácticas de creación de agrupaciones raíz

  • SPARC (SMI [VTOC]): cree agrupaciones raíz con segmentos mediante el uso del identificador s*. No utilice el identificador p*. En general, la agrupación raíz ZFS de un sistema se crea cuando se instala el sistema. Si se crea una segunda agrupación raíz o se vuelve a crear una agrupación raíz, utilizar una sintaxis similar a la siguiente en un sistema SPARC:

    # zpool create rpool c0t1d0s0

    O bien, crear una agrupación raíz reflejada. Por ejemplo:

    # zpool create rpool mirror c0t1d0s0 c0t2d0s0
  • Solaris 11.1 x86 (EFI (GPT)): cree agrupaciones raíz con discos enteros mediante el uso del identificador d*. No utilice el identificador p*. En general, la agrupación raíz ZFS de un sistema se crea cuando se instala el sistema. Si se crea una segunda agrupación raíz o se vuelve a crear una agrupación raíz, utilizar una sintaxis similar a la siguiente:

    # zpool create rpool c0t1d0

    O bien, crear una agrupación raíz reflejada. Por ejemplo:

    # zpool create rpool mirror c0t1d0 c0t2d0
  • La agrupación raíz debe crearse como configuración reflejada o una configuración de un solo disco. No se admiten configuraciones RAID-Z ni distribuidas. No se pueden agregar discos adicionales para crear varios dispositivos virtuales reflejados de nivel superior mediante el comando zpool add, pero se puede ampliar un dispositivo virtual reflejado mediante el comando zpool attach.

  • Una agrupación raíz no puede tener un dispositivo de log independiente.

  • Se pueden establecer las propiedades de agrupaciones durante una instalación de AI, pero el algoritmo de compresión gzip no se admite en las agrupaciones raíz.

  • No cambie el nombre de la agrupación raíz tras su creación en una instalación inicial. El cambio de nombre de la agrupación raíz puede impedir el inicio del sistema.

  • No cree una agrupación raíz en una unidad USB en un sistema de producción porque los discos de agrupación raíz son fundamentales para la operación continua, en especial, en un entorno empresarial. Considere la posibilidad de utilizar discos internos del sistema para la agrupación raíz o, al menos, utilice discos de la misma calidad que utilizaría para datos no raíz. Además, es posible que una unidad USB no sea suficientemente grande para admitir un tamaño de volumen de volcado que sea equivalente a la memoria física o que tenga al menos la mitad de su tamaño.

  • En lugar de agregar una reserva activa a una agrupación raíz, considere la posibilidad de crear una agrupación raíz reflejo de tres o dos vías. Asimismo, no comparta una reserva activa entre una agrupación raíz y una agrupación de datos.

  • No utilice un dispositivo de VMware con poco aprovisionamiento para un dispositivo de agrupación raíz.

Prácticas de creación de agrupaciones que no son raíz

  • Cree agrupaciones que no son raíz con discos enteros mediante el identificador d*. No utilice el identificador p*.

    • ZFS tiene un funcionamiento óptimo sin ningún software de administración de volumen adicional.

    • Para tener un mejor rendimiento, utilice discos individuales o, al menos, LUN formados con pocos discos. Al proporcionar ZFS con más visibilidad de la configuración de LUN, ZFS puede tomar mejores decisiones de programación de E/S.

  • Cree configuraciones de agrupaciones redundantes en varios controladores para reducir el tiempo de inactividad debido a fallos del controlador.

    • Agrupaciones de almacenamiento reflejadas: consuma más espacio en el disco pero, en general, obtenga un mejor rendimiento con lecturas aleatorias pequeñas.

      # zpool create tank mirror c1d0 c2d0 mirror c3d0 c4d0
    • Agrupaciones de almacenamiento RAID-Z: se pueden crear con 3 estrategias de paridad, donde la paridad es igual a 1 (raidz), 2 (raidz2) o 3 (raidz3). Una configuración de RAID-Z maximiza el espacio en el disco y suele funcionar bien cuando los datos se escriben y se leen en grandes cantidades (128 K o más).

      • Considere una configuración RAID-Z de paridad única (raidz) con 2 VDEV de 3 discos (2+1) cada uno.

        # zpool create rzpool raidz1 c1t0d0 c2t0d0 c3t0d0 raidz1 c1t1d0 c2t1d0 c3t1d0
      • Una configuración RAIDZ-2 ofrece mejor disponibilidad de datos y se desempeña de manera similar a RAID-Z. RAIDZ-2 tiene un tiempo medio significativamente mejor para la pérdida de datos (MTTDL) que los reflejos RAID-Z o bidireccionales. Cree una configuración de RAID-Z de paridad doble (raidz2) en 6 discos (4+2).

        # zpool create rzpool raidz2 c0t1d0 c1t1d0 c4t1d0 c5t1d0 c6t1d0 c7t1d0
        raidz2 c0t2d0 c1t2d0 c4t2d0 c5t2d0 c6t2d0 c7t2d
      • La configuración RAIDZ-3 maximiza el espacio en disco y ofrece una excelente disponibilidad porque puede resistir 3 fallos de disco. Cree una configuración RAID-Z de paridad triple (raidz3) en 9 discos (6+3).

        # zpool create rzpool raidz3 c0t0d0 c1t0d0 c2t0d0 c3t0d0 c4t0d0
        c5t0d0 c6t0d0 c7t0d0 c8t0d0

Prácticas de creación de agrupaciones en matrices de almacenamiento locales o conectadas a la red

Tenga en cuenta las siguientes prácticas de agrupación de almacenamiento al crear una agrupación de almacenamiento ZFS en una matriz conectada de forma local o remota.

  • Si crea una agrupación en dispositivos SAN y la conexión de red es lenta, es posible que los dispositivos de la agrupación tengan el estado UNAVAIL durante un tiempo. Debe evaluar si la conexión de red es adecuada para proporcionar los datos de forma continua. Además, tenga en cuenta que si utiliza dispositivos SAN para la agrupación raíz, es posible que no estén disponibles en cuanto se inicia el sistema y es posible que los dispositivos de la agrupación raíz también tengan el estado UNAVAIL.

  • Confirme con el proveedor de matrices que la matriz de discos no vacía la caché después de que ZFS emite una solicitud de vaciado de la caché de escritura.

  • Utilice discos enteros, no segmentos de discos, como dispositivos de la agrupación de almacenamiento, de modo que Oracle Solaris ZFS active las cachés de discos locales pequeños, que se vacían en momentos adecuados.

  • Para obtener el mejor rendimiento, cree un LUN para cada disco físico en la matriz. Si se utiliza un solo LUN grande, es posible que ZFS ponga en cola muy pocas operaciones de E/S de lectura para un rendimiento óptimo del almacenamiento. Por el contrario, si se utilizan muchos LUN pequeños, es posible que el almacenamiento se llene con una gran cantidad de operaciones de E/S de lectura pendientes.

  • Para Oracle Solaris ZFS, no se recomienda utilizar una matriz de almacenamiento que utiliza software de aprovisionamiento dinámico (o delgado) para implementar la asignación de espacio virtual. Cuando Oracle Solaris ZFS escribe los datos modificados en el espacio libre, escribe en todo el LUN. El proceso de escritura de Oracle Solaris ZFS asigna todo el espacio virtual desde el punto de vista de la matriz de almacenamiento, lo cual invalida el beneficio del aprovisionamiento dinámico.

    Tenga en cuenta que el software de aprovisionamiento dinámico puede ser innecesario al utilizar ZFS:

    • Puede ampliar un LUN en una agrupación de almacenamiento ZFS existente y utilizará el nuevo espacio.

    • También funciona un comportamiento similar cuando un LUN más pequeño se reemplaza con uno de mayor tamaño.

    • Si evalúa las necesidades de almacenamiento para su agrupación y crea la agrupación con LUN más pequeños iguales a las necesidades de almacenamiento, más adelante puede ampliar los LUN a un tamaño mayor si se necesita más espacio.

  • Si es posible que la matriz presente dispositivos individuales (modo JBOD), considere la posibilidad de crear agrupaciones de almacenamiento ZFS redundantes (reflejadas o RAID-Z) en este tipo de matriz de modo que ZFS pueda comunicar y corregir las inconsistencias de datos.

Prácticas de creación de agrupaciones para una base de datos Oracle

Tenga en cuenta las siguientes prácticas de agrupación de almacenamiento al crear una base de datos Oracle.

  • Utilice una agrupación reflejada o un RAID de hardware para agrupaciones.

  • Las agrupaciones RAID-Z por lo general no se recomiendan para lectura aleatorias cargas de trabajo aleatorias.

  • Cree una pequeña agrupación independiente con un dispositivo de log independiente para los logs de rehacer de la base de datos.

  • Cree una pequeña agrupación independiente para el log de archivo.

Para obtener más información sobre el ajuste de ZFS para una base de datos de Oracle, consulte Ajuste de ZFS para una base de datos Oracle de Manual de referencia de parámetros ajustables de Oracle Solaris 11.2 .

Uso de agrupaciones de almacenamiento ZFS en VirtualBox

  • De manera predeterminada, Virtual Box está configurada para omitir comandos de vaciado de caché desde el almacenamiento subyacente. Esto significa que, en caso de un bloqueo del sistema o un error de hardware, se pueden perder los datos.

  • Ejecute el siguiente comando para activar el vaciado de caché en Virtual Box:

    VBoxManage setextradata vm-name "VBoxInternal/Devices/type/0/LUN#n/Config/IgnoreFlush" 0
    • vm-name: el nombre de la máquina virtual

    • type: es el tipo de controlador, que puede ser piix3ide (si utiliza el controlador virtual IDE habitual) o ahci, si utiliza un controlador SATA

    • n: el número de disco