Guía de administración de Oracle Solaris ZFS

Novedades de ZFS

Esta sección resume las funciones nuevas del sistema de archivos ZFS.

División de una agrupación de almacenamiento de ZFS refleja (zpool split)

Versión Oracle Solaris 10 9/10: en esta versión de Solaris, puede utilizar el comando zpool split para dividir una agrupación de almacenamiento reflejada, que desconecta discos en la agrupación reflejada original para crear otra agrupación idéntica.

Para obtener más información, consulte Creación de una nueva agrupación mediante la división de una agrupación de almacenamiento de ZFS reflejada.

Nuevo proceso del sistema ZFS

Versión Oracle Solaris 10 9/10: en esta versión de Solaris, cada agrupación de almacenamiento de ZFS tiene un proceso asociado, zpool-poolname . Los subprocesos de este proceso son los del procesamiento de E/S de la agrupación para manejar tareas E/S, como, la compresión y sumas de comprobación, que están asociadas con la agrupación. La finalidad de este proceso es proporcionar la visibilidad en cada agrupación de almacenamiento del uso de la CPU. La información acerca de estos procesos puede ser revisada utilizando los comandos ps y prstat. Estos procesos sólo están disponibles en la zona global. Para obtener más información, consulte SDC(7).

Cambios en el comando zpool list

Versión Oracle Solaris 10 9/10: en esta versión de Solaris, la salida zpool list se ha modificado para ofrecer información de mayor calidad sobre la asignación de espacio. Por ejemplo:


# zpool list tank
NAME    SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
tank    136G  55.2G  80.8G    40%  ONLINE  -

Los campos USED y AVAIL anterior se han sustituido por ALLOC y FREE.

El campo ALLOC identifica la cantidad de espacio físico asignado a todos los conjuntos de datos y los metadatos internos. El campo FREE identifica la cantidad de espacio sin asignar en la agrupación.

Para obtener más información, consulte Visualización de información de agrupaciones de almacenamiento de ZFS.

Recuperación de agrupación de almacenamiento de ZFS

Versión Oracle Solaris 10 9/10: una agrupación de almacenamiento puede sufrir daño si los dispositivos subyacentes no quede disponible, si se produce un fallo del suministro eléctrico, o si un número superior al de dispositivos admitidos no funcionan en una configuración redundante ZFS. Esta versión incluye nuevas funciones de comando para recuperar la agrupación de almacenamiento dañada. Sin embargo, el uso de esta función de recuperación significa que las últimas transacciones que se produjeron antes de la agrupación suministro.

Tanto el zpool borrar y zpool importar mandatos dan soporte la -F opción para posiblemente recuperarse una agrupación dañada. Además, al ejecutar el comando zpool status, zpool clear o zpool import, se informa automáticamente de una agrupación dañada y estos comandos describen cómo recuperar la agrupación.

Para obtener más información, consulte Reparación de daños en las agrupaciones de almacenamiento de ZFS.

Mejoras en dispositivos de registro ZFS

Versión Oracle Solaris 10 9/10: las siguientes mejoras en los dispositivos de registro están disponibles:

RAIDZ de paridad triple (raidz3)

Versión Oracle Solaris 10 9/10: en esta versión de Solaris, una configuración de RAID-Z redundante ahora puede tener una paridad sencilla, doble o triple, lo que significa que se pueden asumir uno, dos o tres errores de dispositivos sin que se produzca una pérdida de datos. Puede especificar la palabra clave raidz3 para una configuración de RAID-Z de paridad triple. Para obtener más información, consulte Creación de una agrupación de almacenamiento de RAID-Z.

Conservación de instantáneas de ZFS

Versión Oracle Solaris 10 9/10: si se implementan diferentes directivas de instantáneas automáticas de manera que las instantáneas más antiguas se destruyen accidentalmente por zfs receive porque ya no existen de la parte remitente, debería considerar el uso de la función de retención de instantáneas en esta versión de Solaris.

Mantener pulsada una instantánea impide que se destruya. Además, esta función permite que una instantánea con clones se elimine en espera de la eliminación del último clon mediante el comando zfs destroy -d.

Puede retener una instantánea o un conjunto de instantáneas. Por ejemplo, la siguiente sintaxis coloca una etiqueta de retención, keep, en tank/home/cindys/snap@1 .


# zfs hold keep tank/home/cindys@snap1

Para obtener más información, consulte Conservación de instantáneas de ZFS .

Mejoras en sustitución de dispositivos ZFS

Versión Oracle Solaris 10 9/10: en esta versión de Solaris, se suministra un evento de sistema o sysevent cuando se amplía un dispositivo subyacente. ZFS se ha mejorado para que reconozca dichos eventos y ajusta la agrupación basado en el nuevo tamaño del LUN expandido, según la configuración de la propiedad autoexpand. Puede utilizar la propiedad de agrupación autoexpand para activar o desactivar la aplicación automática de agrupaciones cuando se recibe un evento de expansión de LUN dinámico.

Estas funciones permiten expandir un LUN y la agrupación resultante puede acceder al espacio ampliado sin tener que exportar e importar la agrupación o reiniciar el sistema.

Por ejemplo, la expansión automática de LUN está habilitada en la agrupación tank .


# zpool set autoexpand=on tank

O, si lo desea, puede crear la agrupación con la propiedad autoexpand habilitada.


# zpool create -o autoexpand=on tank c1t13d0

La propiedad autoexpand está desactivada de manera predeterminada, por lo que se puede decidir si se expande o no el LUN.

Un LUN también puede expandir mediante el comando zpool online - e. Por ejemplo:


# zpool online -e tank c1t6d0

O, si lo desea, puede restablecer la propiedad autoexpand después que el LUN se conecte o esté disponible mediante la función zpool reemplazar. Por ejemplo, la agrupación siguiente se crea con un disco de 8 GB (c0t0d0). El disco 8 GB se sustituye por uno de 16 GB (c1t13d0), pero el tamaño de la agrupación no se expande hasta que se habilite la propiedad autoexpand.


# zpool create pool c0t0d0
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   8.44G  76.5K  8.44G     0%  ONLINE  -
# zpool replace pool c0t0d0 c1t13d0
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   8.44G  91.5K  8.44G     0%  ONLINE  -
# zpool set autoexpand=on pool
# zpool list
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
pool   16.8G   91.5K  16.8G    0%  ONLINE  -

Otro modo de expandir el LUN en el ejemplo anterior sin la activación de la propiedad autoexpand propiedad es utilizando el comando zpool online - e, aunque el dispositivo ya esté en línea. Por ejemplo:


# zpool create tank c0t0d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   8.44G  76.5K  8.44G     0%  ONLINE  -
# zpool replace tank c0t0d0 c1t13d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   8.44G  91.5K  8.44G     0%  ONLINE  -
# zpool online -e tank c1t13d0
# zpool list tank
NAME   SIZE   ALLOC  FREE    CAP   HEALTH  ALTROOT
tank   16.8G    90K  16.8G     0%  ONLINE  -

Entre las mejoras en la sustitución de dispositivos adicionales en esta versión se encuentran las funciones siguientes:

Para obtener más información sobre la sustitución de dispositivos, consulte Sustitución de dispositivos en una agrupación de almacenamiento.

Compatibilidad con la instalación de ZFS y Flash

Versión Solaris 10 10/09: en esta versión de Solaris puede establecer un perfil JumpStart para identificar un archivo de almacenamiento Flash de una agrupación raíz ZFS. Para obtener más información, consulte Instalación de un sistema de archivos raíz ZFS (instalación de archivo de almacenamiento flash de Oracle Solaris).

Cuotas de grupo y usuario de ZFS

Versión Solaris 10 10/09: en las versiones anteriores de Solaris, se podía aplicar cuotas y reservas a los sistemas de archivos ZFS para administrar y reservar espacio en el disco.

En esta versión de Solaris, puede configurar una cuota para la cantidad de espacio en el disco consumido por archivos cuyo propietario es un grupo o usuario determinado. Deberá considerar el establecimiento de cuotas de usuarios o grupos en un entorno con un gran número de usuarios o grupos.

Se puede configurar una cuota de usuarios mediante la propiedad zfs userquota. Para configurar una cuota de grupo, utilice la propiedad zfs groupquota. Por ejemplo:


# zfs set userquota@user1=5G tank/data
# zfs set groupquota@staff=10G tank/staff/admins

Puede mostrar la configuración de la cuota actual de un grupo o usuario como se indica a continuación:


# zfs get userquota@user1 tank/data
NAME       PROPERTY         VALUE            SOURCE
tank/data  userquota@user1  5G               local
# zfs get groupquota@staff tank/staff/admins
NAME               PROPERTY          VALUE             SOURCE
tank/staff/admins  groupquota@staff  10G               local

Visualice información general sobre la cuota como sigue:


# zfs userspace tank/data
TYPE        NAME   USED  QUOTA  
POSIX User  root     3K   none  
POSIX User  user1     0    5G  

# zfs groupspace tank/staff/admins
TYPE         NAME   USED  QUOTA  
POSIX Group  root     3K   none  
POSIX Group  staff     0    10G  

Puede mostrar el uso de espacio en el disco de un usuario individual visualizando la propiedad userused@user. El uso de espacio en el disco de un grupo puede visualizarse con la propiedad groupused@ group. Por ejemplo:


# zfs get userused@user1 tank/staff
NAME        PROPERTY        VALUE           SOURCE
tank/staff  userused@user1  213M            local
# zfs get groupused@staff tank/staff
NAME        PROPERTY         VALUE            SOURCE
tank/staff  groupused@staff  213M             local

Para obtener más información sobre la configuración de cuotas de usuarios, consulte Configuración de cuotas y reservas de ZFS.

Herencia de passthrough de listas de control de acceso (ACL) de ZFS para el permiso de ejecución

Versión Solaris 10 10/09: en las versiones anteriores de Solaris podía aplicar herencia de lista de control de acceso (ACL), de forma que todos los archivos se creaban con permisos 0664 o 0666. En esta versión, si desea incluir de forma opcional el bit de ejecución desde el modo de creación de archivo en la lista de control de acceso (ACL) heredada, puede establecer el modo aclinherit para transferir el permiso de ejecución a la lista de control de acceso (ACL) heredada.

Si se ha habilitado aclinherit=passthrough-x en un conjunto de datos ZFS, puede incluir el permiso de ejecución para un archivo de salida que se genere desde las herramientas de compilación cc o gcc. Si la lista de control de acceso (ACL) heredada no incluye permisos de ejecución, la salida ejecutable del compilador no será ejecutable hasta que utilice el comando chmod para cambiar los permisos del archivo.

Para obtener más información, consulte el Ejemplo 8–12.

Mejoras en las propiedades de ZFS

Versión Solaris 10/09: las siguientes mejoras en el sistema de archivos ZFS se incluyen en estas versiones.

Recuperación del dispositivo de registros de ZFS

Versión Solaris 10 10/09: en esta versión, ZFS identifica los errores de intento de registro en la salida del comando zpool status. Diagnosis de arquitectura de administración fallida (FMA) informa de dichos errores también. Ambos, ZFS y FMA, describen cómo recuperarse de un error de intento de registro.

Por ejemplo, si el sistema se cierra bruscamente antes de que las operaciones de escritura sincrónica se confirmen en una agrupación con un dispositivo de registro independiente, se muestran mensajes parecidos al siguiente:


# zpool status -x
  pool: pool
 state: FAULTED
status: One or more of the intent logs could not be read.
        Waiting for adminstrator intervention to fix the faulted pool.
action: Either restore the affected device(s) and run 'zpool online',
        or ignore the intent log records by running 'zpool clear'.
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        pool        FAULTED      0     0     0 bad intent log
          mirror    ONLINE       0     0     0
            c0t1d0  ONLINE       0     0     0
            c0t4d0  ONLINE       0     0     0
        logs        FAULTED      0     0     0 bad intent log
          c0t5d0    UNAVAIL      0     0     0 cannot open

Puede resolver el error del dispositivo de registro como se indica a continuación:

Si desea recuperarse de este error sin reemplazar el dispositivo de registro que presenta errores, puede borrar el error con el comando zpool clear. En esta situación, la agrupación no funcionará correctamente y los registros se escribirán en la agrupación principal hasta que se sustituya el dispositivo de registro independiente.

Considere el uso de dispositivos de registro reflejados para evitar los casos de error en el dispositivo de registro.

Uso de dispositivos caché en la agrupación de almacenamiento ZFS

Versión Solaris 10 10/09: en esta versión, cuando crea una agrupación, puede especificar dispositivos caché que se utilizan para almacenar en la memoria caché datos de la agrupación de almacenamiento.

Los dispositivos de caché ofrecen un nivel adicional de grabación de datos en caché entre la memoria principal y el disco. El uso de dispositivos caché optimiza el rendimiento con cargas de trabajo de lectura aleatorias de contenido principalmente estático.

Se pueden especificar uno o más dispositivos de caché al crear la agrupación. Por ejemplo:


# zpool create pool mirror c0t2d0 c0t4d0 cache c0t0d0
# zpool status pool
  pool: pool
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        pool        ONLINE       0     0     0
          mirror    ONLINE       0     0     0
            c0t2d0  ONLINE       0     0     0
            c0t4d0  ONLINE       0     0     0
        cache
          c0t0d0    ONLINE       0     0     0

errors: No known data errors

Tras agregar los dispositivos de la caché, gradualmente se llenan con contenido de la memoria principal. Según el tamaño del dispositivo de la caché, puede llevar más de una hora en llenarse. La capacidad y las lecturas se pueden supervisar con el comando zpool iostat del modo siguiente:


# zpool iostat -v pool 5

Los dispositivos caché se pueden agregar o quitar de una agrupación después de crearse dicha agrupación.

Para obtener más información, consulte Creación de una agrupación de almacenamiento de ZFS con dispositivos caché y Ejemplo 4–4.

Migración de zona en un entorno ZFS

Versión Solaris 10 5/09: esta versión amplía la compatibilidad para migrar zonas en un entorno ZFS con Actualización automática de Oracle Solaris. Para obtener más información, consulte Uso de Actualización automática de Oracle Solaris para migrar o actualizar un sistema con zonas (al menos Solaris 10 5/09).

Si desea obtener una lista de problemas conocidos relacionados con esta versión, consulte las notas sobre la versión de Solaris 10 5/09.

Instalación e inicio de ZFS

Versión Solaris 10 10/08: esta versión permite instalar e iniciar un sistema de archivos raíz ZFS. Para instalar un sistema de archivos raíz ZFS puede optar por la instalación inicial o por la función JumpStart. O puede usar Actualización automática de Oracle Solaris para migrar de un sistema de archivos raíz UFS a uno ZFS. Asimismo, se proporciona compatibilidad de ZFS para dispositivos de intercambio y volcado. Si desea más información, consulte el Capítulo 5Instalación e inicio de un sistema de archivos raíz ZFS Oracle Solaris.

Para ver una lista de los problemas conocidos de esta versión, visite el siguiente sitio:

http://hub.opensolaris.org/bin/view/Community+Group+zfs/boot

Consulte también las notas de la versión de Solaris 10 10/08.

Inversión (rollback) de un conjunto de datos sin desmontar

Versión Solaris 10 10/08: esta versión permite deshacer un conjunto de datos sin desmontar por primera vez. Esta función hace que ya no se necesite la opción zfs rollback -f para forzar una operación de desmontaje. Ya no se admite la opción -f, y, si se especifica, se hace caso omiso de ella.

Mejoras en el comando zfs send

Versión Solaris 10 10/08: esta versión aporta las mejoras siguientes en el comando zfs send. Mediante este comando, ahora se puede realizar las siguientes tareas:

Para obtener más información, consulte Envío y recepción de flujos de instantáneas ZFS complejos.

Cuotas y reservas de ZFS sólo para datos del sistema de archivos

Versión Solaris 10 10/08: además de las funciones de reserva y cuota de ZFS existentes, al calcular el consumo de espacio en el disco esta versión tiene en cuenta reservas y cuotas de conjuntos de datos que no incluyen descendientes, como instantáneas y clones.

Por ejemplo, puede establecer un límite de refquota de 10 GB para studentA que establezca un límite físico de 10 GB de espacio en el disco referenciado. Si desea una flexibilidad adicional, puede establecer una cuota de 20 GB que permita administrar instantáneas de studentA.


# zfs set refquota=10g tank/studentA
# zfs set quota=20g tank/studentA

Para obtener más información, consulte Configuración de cuotas y reservas de ZFS.

Propiedades de agrupaciones de almacenamiento de ZFS

Versión Solaris 10 10/08: las propiedades de agrupaciones de almacenamiento de ZFS se presentaron en una versión anterior. Esta versión ofrece dos propiedades, cachefile y failmode.

A continuación, se describen las nuevas propiedades de agrupación de almacenamiento en esta versión:

Mejoras en el historial de comando ZFS (zpool history)

Versión Solaris 10 10/08: el comando zpool history se ha mejorado para proporcionar las funciones nuevas siguientes:

Si desea más información sobre el comando zpool history, consulte Solución de problemas con ZFS.

Actualización de sistemas de archivos ZFS (zfs upgrade)

Versión Solaris 10 10/08: en esta versión se incluye el comando zfs upgrade para aportar a los sistemas de archivos actuales las mejoras en los sistemas de archivos ZFS que haya en el futuro. Las agrupaciones de almacenamiento ZFS cuentan con una función de actualización similar para proporcionar mejoras en las agrupaciones a las agrupaciones de almacenamiento existentes.

Por ejemplo:


# zfs upgrade
This system is currently running ZFS filesystem version 3.

All filesystems are formatted with the current version.

Nota –

Los sistemas de archivos que se actualizan y los flujos de datos que se crean a partir de dichos sistemas actualizados mediante el comando zfs send no quedan accesibles en sistemas que ejecuten versiones de software más antiguas.


Administración delegada de ZFS

Versión Solaris 10 10/08: en esta versión, puede conceder con gran precisión permisos para permitir que los usuarios nonprivileged efectúen taras de administración de ZFS.

Puede usar los comandos zfs allow y zfs unallow para otorgar y suprimir permisos.

Puede modificar la administración delegada con la propiedad delegación de la agrupación. Por ejemplo:


# zpool get delegation users
NAME  PROPERTY    VALUE       SOURCE
users  delegation  on          default
# zpool set delegation=off users
# zpool get delegation users
NAME  PROPERTY    VALUE       SOURCE
users  delegation  off         local

De forma predeterminada se activa la propiedad delegation.

Si desea más información, consulte el Capítulo 9Administración delegada de ZFS, y zfs(1M).

Configuración de dispositivos de registro de ZFS independientes

Versión Solaris 10 10/08: ZIL (ZFS Intent Log) se proporciona para satisfacer los requisitos de POSIX de transacciones síncronas. Por ejemplo, las bases de datos precisan con frecuencia que sus transacciones se encuentren en dispositivos de almacenamiento estables al volver de una llamada del sistema. NFS y otras aplicaciones también pueden usar fsync() para asegurar la estabilidad de los datos. De forma predeterminada, ZIL se asigna a partir de bloques de la agrupación de almacenamiento principal. En esta versión de Solaris, puede decidir si desea que los bloques ZIL continúen asignándose desde la agrupación de almacenamiento principal o desde un dispositivo de registro independiente. Podría mejorarse el rendimiento utilizando dispositivos independientes en la agrupación de almacenamiento de ZFS, por ejemplo NVRAM o un disco dedicado.

Los dispositivos de registros para ZIL no están relacionados con los archivos del registro de la base de datos.

Puede crear un dispositivo de registro ZFS durante o después de la creación de la agrupación de almacenamiento. Para obtener ejemplos de configuración de dispositivos de registro, consulte Creación de una agrupación de almacenamiento de ZFS con dispositivos de registro y Adición de dispositivos a una agrupación de almacenamiento.

Puede vincular un dispositivo de registro a uno ya creado para crear un dispositivo de registro reflejado. Esta operación es idéntica a la de vincular un dispositivo en una agrupación de almacenamiento sin duplicar.

Para saber si es apropiado configurar un dispositivo de registro de ZFS se deben tener en cuenta los puntos siguientes:

Creación de conjuntos de datos de ZFS intermedios

Versión Solaris 10 10/08: la opción -p con los comandos zfs create, zfs clone y zfs rename es apta para crear rápidamente un conjunto de datos intermedios no existentes, en el caso de que no existan ya.

En el ejemplo siguiente, se crean conjuntos de datos ZFS (users/area51) en la agrupación de almacenamiento datab.


# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT
datab                       106K  16.5G    18K  /datab
# zfs create -p -o compression=on datab/users/area51

Si el conjunto de datos intermedio ya existe durante la operación de creación, ésta se completa satisfactoriamente.

Las propiedades especificadas se aplican al conjunto de datos de destino, no a los del conjunto de datos intermedios. Por ejemplo:


# zfs get mountpoint,compression datab/users/area51
NAME                PROPERTY     VALUE                SOURCE
datab/users/area51  mountpoint   /datab/users/area51  default
datab/users/area51  compression  on                   local

El conjunto de datos intermedio se crea con el punto de montaje predeterminado. Las propiedades adicionales se desactivan para el conjunto de datos intermedio. Por ejemplo:


# zfs get mountpoint,compression datab/users
NAME         PROPERTY     VALUE         SOURCE
datab/users  mountpoint   /datab/users  default
datab/users  compression  off           default

Para obtener más información, consulte zfs(1M).

Mejoras en conexión en marcha de ZFS

Versión Solaris 10 10/08: en esta versión, ZFS responde con mayor eficiencia a los dispositivos que se eliminan y puede identificar automáticamente los dispositivos que se insertan.

Para obtener más información, consulte zpool(1M).

Cambio de nombre recursivo de instantáneas de ZFS (zfs rename -r)

Versión Solaris 10 10/08: se puede cambiar el nombre de manera recursiva de todas las instantáneas de ZFS descendientes con el comando zfs rename -r. Por ejemplo:

En primer lugar, se crea una instantánea de un conjunto de sistemas de archivos ZFS.


# zfs snapshot -r users/home@today
# zfs list
NAME                     USED  AVAIL  REFER  MOUNTPOINT
users                    216K  16.5G    20K  /users
users/home                76K  16.5G    22K  /users/home
users/home@today            0      -    22K  -
users/home/markm          18K  16.5G    18K  /users/home/markm
users/home/markm@today      0      -    18K  -
users/home/marks          18K  16.5G    18K  /users/home/marks
users/home/marks@today      0      -    18K  -
users/home/neil           18K  16.5G    18K  /users/home/neil
users/home/neil@today       0      -    18K  -

A continuación, se cambia el nombre de las instantáneas al día siguiente.


# zfs rename -r users/home@today @yesterday
# zfs list
NAME                         USED  AVAIL  REFER  MOUNTPOINT
users                        216K  16.5G    20K  /users
users/home                    76K  16.5G    22K  /users/home
users/home@yesterday            0      -    22K  -
users/home/markm              18K  16.5G    18K  /users/home/markm
users/home/markm@yesterday      0      -    18K  -
users/home/marks              18K  16.5G    18K  /users/home/marks
users/home/marks@yesterday      0      -    18K  -
users/home/neil               18K  16.5G    18K  /users/home/neil
users/home/neil@yesterday       0      -    18K  -

Una instantánea es el único tipo de conjunto de datos cuyo nombre puede cambiarse de forma recursiva.

Si desea más información sobre instantáneas, consulte Información general de instantáneas de ZFS y esta entrada de blog en la que se describe la creación de instantáneas de recuperación:

http://blogs.sun.com/mmusante/entry/rolling_snapshots_made_easy

Compresión gzip disponible para ZFS

Versión Solaris 10 10/08: en esta versión de Solaris, puede establecer la compresión gzip en sistemas de archivos ZFS, además de la compresión lzjb. Puede especificar la compresión como gzip, o gzip-N, donde N es un valor del 1 al 9. Por ejemplo:


# zfs create -o compression=gzip users/home/snapshots
# zfs get compression users/home/snapshots
NAME                  PROPERTY     VALUE            SOURCE
users/home/snapshots  compression  gzip             local
# zfs create -o compression=gzip-9 users/home/oldfiles
# zfs get compression users/home/oldfiles
NAME                  PROPERTY     VALUE           SOURCE
users/home/oldfiles   compression  gzip-9          local

Para obtener más información sobre el establecimiento de las propiedades de ZFS, consulte Configuración de propiedades de ZFS.

Almacenamiento de varias copias de datos de usuarios de ZFS

Versión Solaris 10 10/08: como función de fiabilidad, los metadatos de sistemas de archivos ZFS se guardan automáticamente varias veces en discos distintos, si es posible. Esta función se conoce como bloques ditto.

En esta versión de Solaris, puede especificar que también se almacenen varias copias de los datos de usuario por sistema de archivos utilizando el comando zfs set copies. Por ejemplo:


# zfs set copies=2 users/home
# zfs get copies users/home
NAME        PROPERTY  VALUE       SOURCE
users/home  copies    2           local

Los valores disponibles son 1, 2 o 3. El valor predeterminado es 1. Estas copias son adicionales a cualquier redundancia de nivel de grupo, por ejemplo en una configuración RAID-Z o duplicada.

Las ventajas de almacenar varias copias de los datos de usuario ZFS son:


Nota –

Según la asignación de los bloques ditto en la agrupación de almacenamiento, varias copias se podrían colocar en un solo disco. Un posible fallo posterior en el disco podría hacer que todos los bloques ditto no estuvieran disponibles.


Los bloques ditto pueden ser útiles cuando de forma involuntaria se crea una agrupación no redundante y se deben establecer directivas de retención de datos.

Si desea obtener una descripción detallada sobre las repercusiones generales en la protección de datos al configurar copias en un sistema con una sola agrupación de un solo disco o una de varios discos, consulte el blog siguiente:

http://blogs.sun.com/relling/entry/zfs_copies_and_data_protection

Para obtener más información sobre el establecimiento de las propiedades de ZFS, consulte Configuración de propiedades de ZFS.

Salida mejorada de zpool status

Versión Solaris 10 8/07: puede utilizar el comando zpool status -v para que aparezca una lista de archivos con errores continuos. Anteriormente, se usaba el comando find -inum para identificar los nombres de archivos de la lista de inodos.

Para obtener más información sobre cómo obtener una lista de archivos con errores continuos, consulte Reparación de un archivo o directorio dañado.

Mejoras en ZFS y Solaris iSCSI

Solaris 10 8/07: en esta versión de Solaris, puede crear un volumen ZFS como dispositivo de destino iSCSI de Solaris si establece la propiedad shareiscsi en el volumen ZFS. Es una forma fácil de configurar rápidamente un destino iSCSI de Solaris. Por ejemplo:


# zfs create -V 2g tank/volumes/v2
# zfs set shareiscsi=on tank/volumes/v2
# iscsitadm list target
Target: tank/volumes/v2
    iSCSI Name: iqn.1986-03.com.sun:02:984fe301-c412-ccc1-cc80-cf9a72aa062a
    Connections: 0

Una vez creado el destino de iSCSI, puede configurar el iniciador de iSCSI. Para obtener información sobre la configuración de un iniciador de Solaris iSCSI, consulte el Capítulo 14, Configuring Oracle Solaris iSCSI Targets and Initiators (Tasks) de System Administration Guide: Devices and File Systems.

Para obtener más información sobre cómo administrar un volumen ZFS como destino iSCSI, consulte Uso de un volumen de ZFS como objetivo iSCSI de Solaris.

Historial de comandos de ZFS (zpool history)

Versión Solaris 10 8/07: en esta versión de Solaris, ZFS registra automáticamente comandos zfs y zpool válidos que modifican la información del estado de la agrupación. Por ejemplo:


# zpool history
History for 'newpool':
2007-04-25.11:37:31 zpool create newpool mirror c0t8d0 c0t10d0
2007-04-25.11:37:46 zpool replace newpool c0t10d0 c0t9d0
2007-04-25.11:38:04 zpool attach newpool c0t9d0 c0t11d0
2007-04-25.11:38:09 zfs create newpool/user1
2007-04-25.11:38:15 zfs destroy newpool/user1

History for 'tank':
2007-04-25.11:46:28 zpool create tank mirror c1t0d0 c2t0d0 mirror c3t0d0 c4t0d0

Esta función permite al usuario o al personal de asistencia de Oracle identificar los comandos exactos de ZFS ejecutados para solucionar una situación de error.

Puede identificar una agrupación de almacenamiento específica con el comando zpool history. Por ejemplo:


# zpool history newpool
History for 'newpool':
2007-04-25.11:37:31 zpool create newpool mirror c0t8d0 c0t10d0
2007-04-25.11:37:46 zpool replace newpool c0t10d0 c0t9d0
2007-04-25.11:38:04 zpool attach newpool c0t9d0 c0t11d0
2007-04-25.11:38:09 zfs create newpool/user1
2007-04-25.11:38:15 zfs destroy newpool/user1

En esta versión de Solaris, el comando zpool history no registra ID_usuario, nombre_host ni nombre_zona. Sin embargo, esta información se registra a partir de la versión Solaris 10 10/08. Para obtener más información, consulte Mejoras en el historial de comando ZFS (zpool history).

Para obtener más información sobre la resolución de los problemas de ZFS, consulte Solución de problemas con ZFS.

Mejoras en las propiedades de ZFS

Propiedad xattr de ZFS

Versión Solaris 10 8/07: puede utilizar la propiedad xattr para deshabilitar o habilitar los atributos extendidos de un determinado sistema de archivos ZFS. El valor predeterminado es on. Para obtener una descripción de las propiedades de ZFS, consulte Introducción a las propiedades de ZFS.

Propiedad canmount de ZFS

Versión Solaris 10 8/07: la nueva propiedad canmount permite especificar si un conjunto de datos se puede montar mediante el comando zfs mount. Para obtener más información, consulte Propiedad canmount.

Propiedades de usuario de ZFS

Versión Solaris 10 8/07: además de las propiedades nativas estándar que pueden exportar estadísticas internas o controlar el comportamiento del sistema de archivos ZFS, éste admite propiedades del usuario. Las propiedades del usuario no repercuten en el comportamiento del sistema de archivos ZFS, pero puede usarlas para anotar información de manera que tenga sentido en su entorno.

Para obtener más información, consulte Propiedades de usuario de ZFS.

Configuración de propiedades al crear sistemas de archivos ZFS

Versión Solaris 10 8/07: en esta versión de Solaris, puede establecer las propiedades al crear un sistema de archivos, no sólo después de crearlo.

Los ejemplos siguientes ilustran la sintaxis equivalente:


# zfs create tank/home
# zfs set mountpoint=/export/zfs tank/home
# zfs set sharenfs=on tank/home
# zfs set compression=on tank/home

# zfs create -o mountpoint=/export/zfs -o sharenfs=on -o compression=on tank/home

Visualización de la información de todo el sistema de archivos ZFS

Versión Solaris 10 8/07: en esta versión de Solaris, puede utilizar diversas formas del comando zfs get para visualizar información sobre todos los conjuntos de datos si no especifica un conjunto de datos o si especifica all. En las versiones anteriores no se podía recuperar toda la información del conjunto de datos con el comando zfs get.

Por ejemplo:


# zfs get -s local all
tank/home               atime          off                    local
tank/home/bonwick       atime          off                    local
tank/home/marks         quota          50G                    local

Nueva opción zfs receive -F

Versión Solaris 10 8/07: en esta versión de Solaris, puede utilizar la nueva opción -F con el comando zfs receive para forzar un restablecimiento del sistema de archivos a la instantánea más reciente antes de ejecutar la recepción. El uso de esta opción podría ser necesario cuando se modifica el sistema de archivos entre el momento en que se realiza la inversión y el momento en que se inicia la recepción.

Para obtener más información, consulte Recepción de una instantánea ZFS.

Instantáneas de ZFS recurrentes

Versión Solaris 10 11/06: si utiliza el comando zfs snapshot para crear una instantánea del sistema de archivos, puede usar la opción -r para crear de forma recurrente instantáneas de todos los sistemas de archivos descendientes. Además, puede utilizar la opción -r para destruir repetidamente todas las instantáneas descendientes si se destruye una instantánea.

Las instantáneas recurrentes de ZFS se crean con rapidez, como una operación atómica. Las instantáneas se crean todas juntas (a la vez) o no se crea ninguna. La ventaja de esta operación estriba en que los datos de instantánea se toman siempre en un momento coherente, incluso en el caso de sistemas de archivos descendientes.

Para obtener más información, consulte Creación y destrucción de instantáneas de ZFS.

RAID-Z de paridad doble (raidz2)

Versión Solaris 10 11/06: una configuración redundante de RAID-Z puede tener ahora una configuración de paridad sencilla o doble, lo cual significa que se pueden asumir uno o dos errores de dispositivos, sin pérdida de datos. Puede especificar la palabra clave raidz2 para una configuración de RAID-Z de paridad doble. Otra posibilidad es especificar la palabra clave raidz o raidz1 para una configuración de RAID-Z de paridad sencilla.

Para obtener más información, consulte Creación de una agrupación de almacenamiento de RAID-Z o zpool(1M).

Repuestos en marcha para dispositivos de agrupación de almacenamiento de ZFS

Versión Solaris 10 11/06: la función de repuestos en marcha de ZFS permite identificar discos aptos para sustituir un dispositivo con errores en una o varias agrupaciones de almacenamiento. Al designar un dispositivo como repuesto en marcha, si falla un dispositivo activo de la agrupación, el repuesto en marcha lo reemplaza automáticamente. También se puede reemplazar manualmente un dispositivo de un grupo de almacenamiento por un repuesto en marcha.

Para obtener más información, consulte Designación de repuestos en marcha en la agrupación de almacenamiento y zpool(1M).

Sustitución de un sistema de archivos ZFS por un clon de ZFS (zfs promote)

Versión Solaris 10 11/06: el comando zfs promote permite sustituir un sistema de archivos ZFS por un clon de ese sistema de archivos. Es una función útil para ejecutar pruebas en una versión alternativa de un sistema de archivos y después convertirlo en el sistema de archivos activo.

Para obtener más información, consulte Sustitución de un sistema de archivos ZFS por un clon de ZFS y zfs(1M).

Actualización de agrupaciones de almacenamiento de ZFS (zpool upgrade)

Versión Solaris 10 6/06: puede actualizar las agrupaciones de almacenamiento a una versión más reciente de ZFS para poder utilizar las nuevas funciones mediante el comando zpool upgrade. Asimismo, el comando zpool status se ha modificado para notificar a los usuarios de que las agrupaciones están ejecutando versiones antiguas de ZFS.

Para obtener más información, consulte Actualización de agrupaciones de almacenamiento de ZFS y zpool(1M).

Si desea utilizar la consola de administración de ZFS en un sistema con una agrupación de una versión anterior de Solaris, actualice las agrupaciones antes de usar la consola. Para saber si las agrupaciones se deben actualizar, utilice el comando zpool status. Para obtener más información sobre la consola de administración de ZFS, consulte Administración por Internet de ZFS.

Cambio de nombre en los comandos de restauración y copia de seguridad de ZFS

Versión Solaris 10 6/06: en esta versión de Solaris, se cambia el nombre de los comandos zfs backup y zfs restore por zfs send y zfs receive para describir estas funciones de forma más precisa. Estos comandos envían y reciben representaciones de flujos de datos de ZFS.

Para obtener más información sobre estos comandos, consulte Envío y recepción de datos ZFS.

Recuperación de agrupaciones de almacenamiento destruidas

Versión Solaris 10 6/06: esta versión incluye el comando zpool import -D, que permite recuperar agrupaciones destruidas con el comando zpool destroy.

Para obtener más información, consulte Recuperación de agrupaciones de almacenamiento de ZFS destruidas.

ZFS se integra en el administrador de fallos

Versión Solaris 10 6/06: esta versión incluye un motor de diagnóstico de ZFS capaz de diagnosticar errores en dispositivos y agrupaciones, y de generar informes. También se informa de errores de suma de comprobación, E/S, dispositivos y agrupaciones asociados con errores de dispositivos o agrupaciones.

El motor de diagnóstico no incluye análisis predictivos de suma de comprobación ni errores de E/S, ni tampoco acciones proactivas basadas en análisis de errores.

Si se produce un error de ZFS, es posible que vea un mensaje parecido al siguiente:


SUNW-MSG-ID: ZFS-8000-D3, TYPE: Fault, VER: 1, SEVERITY: Major
EVENT-TIME: Wed Jun 30 14:53:39 MDT 2010
PLATFORM: SUNW,Sun-Fire-880, CSN: -, HOSTNAME: neo
SOURCE: zfs-diagnosis, REV: 1.0
EVENT-ID: 504a1188-b270-4ab0-af4e-8a77680576b8
DESC: A ZFS device failed.  Refer to http://sun.com/msg/ZFS-8000-D3 for more information.
AUTO-RESPONSE: No automated response will occur.
IMPACT: Fault tolerance of the pool may be compromised.
REC-ACTION: Run 'zpool status -x' and replace the bad device.

Al revisar la acción recomendada, que será seguir las indicaciones más específicas del comando zpool status, podrá identificar el error y solucionarlo rápidamente.

Si desea ver un ejemplo de recuperación de un problema de ZFS del que se ha informado, consulte Resolución de un dispositivo que no se encuentra.

El comando zpool clear

Versión Solaris 10 6/06: esta versión incluye el comando zpool clear para borrar los recuentos de errores asociados con un dispositivo o una agrupación. Anteriormente, los recuentos de errores se suprimían cuando se conectaba el dispositivo de una agrupación mediante el comando zpool online. Para obtener más información, consulte Borrado de errores de dispositivo de agrupación de almacenamiento y zpool(1M).

Formato compacto NFSv4 de lista de control de acceso (ACL)

Versión Solaris 10 6/06: en esta versión, puede establecer y visualizar listas de control de acceso (ACL) NFSv4 en dos formatos: detallado y formato compacto. Con el comando chmod se pueden establecer los tres formatos de lista de control de acceso (ACL). Puede utilizar el comando ls - V para visualizar el formato de lista de control de acceso (ACL) comprimido. Puede utilizar el comando ls -v para mostrar el formato de lista de control de acceso (ACL) detallado.

Para obtener más información, consulte Establecimiento y visualización de ACL en archivos ZFS en formato compacto, chmod(1) y ls(1).

Herramienta de supervisión del sistema de archivos (fsstat)

Versión Solaris 10 6/06: fsstat, una nueva herramienta de supervisión del sistema de archivos, informa de las operaciones del sistema de archivos. Se informa de la actividad por punto de montaje o por tipo de sistema de archivos. El ejemplo siguiente muestra la actividad general del sistema de archivos ZFS:


$ fsstat zfs
 new  name   name  attr  attr lookup rddir  read read  write write
 file remov  chng   get   set    ops   ops   ops bytes   ops bytes
7.82M 5.92M 2.76M 1.02G 3.32M  5.60G 87.0M  363M 1.86T 20.9M  251G zfs

Para obtener más información, consulte fsstat(1M).

Administración por Internet de ZFS

Versión Solaris 10 6/06: la consola de administración de ZFS, una herramienta de administración de ZFS en Internet, permite realizar las siguientes tareas administrativas:

Puede acceder a la consola de administración de ZFS mediante un navegador Web seguro en:


https://system-name:6789/zfs

Si escribe la dirección URL pertinente y no puede acceder a la consola de administración de ZFS, es posible que el servidor no se inicie. Para iniciarlo, ejecute el siguiente comando:


# /usr/sbin/smcwebserver start

Si desea que el servidor se ejecute automáticamente al arrancar el sistema, ejecute el siguiente comando:


# /usr/sbin/smcwebserver enable

Nota –

No se puede utilizar Solaris Management Console (smc) para administrar sistemas de archivos o grupos de almacenamiento ZFS.