Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
![]() |
Guía de administración de Oracle Solaris ZFS |
1. Sistema de archivos ZFS de Oracle Solaris (introducción)
2. Procedimientos iniciales con Oracle Solaris ZFS
3. Oracle Solaris ZFS y sistemas de archivos tradicionales
4. Administración de agrupaciones de almacenamiento de Oracle Solaris ZFS
5. Instalación e inicio de un sistema de archivos raíz ZFS Oracle Solaris
6. Administrar sistemas de archivos ZFS de Oracle Solaris
7. Uso de clones e instantáneas de Oracle Solaris ZFS
8. Uso de listas de control de acceso y atributos para proteger archivos Oracle Solaris ZFS
9. Administración delegada de ZFS Oracle Solaris
10. Temas avanzados de Oracle Solaris ZFS
11. Recuperación de agrupaciones y solución de problemas de Oracle Solaris ZFS
Identificación de errores de ZFS
Dispositivos que faltan en una agrupación de almacenamiento de ZFS
Dispositivos dañados de una agrupación de almacenamiento de ZFS
Comprobación de integridad de sistema de archivos ZFS
Reparación de sistema de archivos
Validación de sistema de archivos
Control de la limpieza de datos de ZFS
Limpieza explícita de datos de ZFS
Limpieza y actualización de la duplicación de datos de ZFS
Cómo establecer si una agrupación de almacenamiento de ZFS tiene problemas
Revisión de la salida de zpool status
Información sobre el estado general de la agrupación
Información de configuración de la agrupación
Estado del proceso de limpieza
Creación de informes del sistema sobre mensajes de error de ZFS
Reparación de una configuración de ZFS dañada
Resolución de un dispositivo que no se encuentra
Cómo volver a conectar físicamente un dispositivo
Notificación de ZFS sobre disponibilidad de dispositivos
Sustitución o reparación de un dispositivo dañado
Cómo determinar el tipo de error en dispositivos
Supresión de errores transitorios
Sustitución de un dispositivo de una agrupación de almacenamiento de ZFS
Cómo determinar si un dispositivo se puede reemplazar o no
Dispositivos que no se pueden reemplazar
Sustitución de un dispositivo de una agrupación de almacenamiento de ZFS
Visualización del estado de la actualización de duplicación de datos
Identificación del tipo de deterioro de datos
Reparación de un archivo o directorio dañado
Reparación de daños en las agrupaciones de almacenamiento de ZFS
Reparación de un sistema que no se puede arrancar
En las secciones siguientes se explica la manera de identificar y resolver problemas en los sistemas de archivos o agrupaciones de almacenamiento de ZFS:
Cómo establecer si una agrupación de almacenamiento de ZFS tiene problemas
Creación de informes del sistema sobre mensajes de error de ZFS
Las funciones siguientes son válidas para identificar problemas en la configuración de ZFS:
Se puede mostrar información detallada de agrupaciones de almacenamiento de ZFS utilizando el comando zpool status.
Las notificaciones de errores en agrupaciones y dispositivos se realizan través de mensajes de diagnóstico de ZFS/FMA.
Los comandos anteriores de ZFS que modificaban la información sobre el estado de las agrupaciones se ven ahora mediante el comando zpool history.
Casi todas las resoluciones de problemas de ZFS implican el uso del comando zpool status. Este comando analiza los errores de un sistema e identifica el problema más grave, sugiere una acción y proporciona un vínculo a documentación técnica para obtener más información. Aunque pueda haber varios problemas, el comando sólo identifica un problema de la agrupación. Por ejemplo, los errores de datos dañados generalmente denotan que ha fallado alguno de los dispositivos, pero la sustitución del dispositivo defectuoso podría no solucionar todos los problemas de deterioro de datos.
Además, un motor de diagnóstico de ZFS detecta y notifica errores de agrupaciones y dispositivos. También se notifican errores de suma de comprobación, E/S, dispositivos y agrupaciones asociados con errores de dispositivos o agrupaciones. Los errores de ZFS indicados por fmd se muestran en la consola y el archivo de mensajes del sistema. En la mayoría de los casos, el mensaje de fmd remite al comando zpool status para obtener más instrucciones sobre recuperación.
A continuación se expone el proceso básico de recuperación:
Si procede, utilice el comando zpool history para identificar los comandos de ZFS anteriores que han desembocado en la situación de error. Por ejemplo:
# zpool history tank History for 'tank': 2010-07-15.12:06:50 zpool create tank mirror c0t1d0 c0t2d0 c0t3d0 2010-07-15.12:06:58 zfs create tank/erick 2010-07-15.12:07:01 zfs set checksum=off tank/erick
Las sumas de comprobación de esta salida están inhabilitadas para el sistema de archivos tank/erick. No se recomienda esta configuración.
Identifique los errores mediante los mensajes de fmd que aparecen en la consola del sistema o en el archivo /var/adm/messages.
El comando zpool status -x proporciona más instrucciones de reparación.
Repare los fallos, mediante las siguientes operaciones:
Sustitución del dispositivo defectuoso o ausente y conexión del mismo.
Restauración de la configuración defectuosa o los datos dañados a partir de una copia de seguridad.
Verificación de la recuperación mediante el comando zpool status - x.
Copia de seguridad de la configuración que se ha restaurado, si procede.
En esta sección se explica la forma de interpretar la salida zpool status para diagnosticar el tipo de fallos que se pueden producir. Si bien el comando ejecuta automáticamente casi todo el proceso, es importante comprender con exactitud los problemas que se identifican para poder diagnosticar el tipo de error. Las siguientes secciones describen cómo solucionar los diversos problemas que pueden producirse.
La forma más fácil de determinar si un sistema tiene problemas conocidos es mediante el comando zpool status -x. Este comando sólo describe agrupaciones que presentan problemas. Si no hay agrupaciones cuyo estado es defectuoso, el comando muestra lo siguiente:
# zpool status -x all pools are healthy
Sin el indicador -x, el comando muestra el estado completo de todas las agrupaciones (o de la agrupación solicitada, si se indica en la línea de comandos), incluso si las agrupaciones están en buen estado.
Para obtener más información sobre las opciones de línea de comandos en la salida de zpool status, consulte Consulta del estado de una agrupación de almacenamiento de ZFS.
La salida completa de zpool status se parece a la siguiente:
# zpool status tank # zpool status tank pool: tank state: DEGRADED status: One or more devices could not be opened. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Attach the missing device and online it using 'zpool online'. see: http://www.sun.com/msg/ZFS-8000-2Q scrub: none requested config: NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c1t0d0 ONLINE 0 0 0 c1t1d0 UNAVAIL 0 0 0 cannot open errors: No known data errors
Esta salida se describe a continuación:
Esta sección de la salida de zpool status contiene los campos siguientes (algunos de ellos sólo se muestran cuando hay agrupaciones con problemas):
El nombre de la agrupación.
Estado actual de la agrupación. Esta información se refiere únicamente a la capacidad de la agrupación de proporcionar el nivel pertinente de repetición.
Describe cuál es el problema que afecta a la agrupación. Si no se detectan errores, este campo se omite.
Acción recomendada para la reparación de errores. Si no se detectan errores, este campo se omite.
Referencia a información técnica que contiene datos detallados sobre reparaciones. Los artículos en línea se actualizan con más frecuencia que esta guía. Por lo tanto, debe consultarlos para informarse sobre los procedimientos de reparación más recientes. Si no se detectan errores, este campo se omite.
Identifica el estado actual de una operación de limpieza, que puede contener la fecha y hora de conclusión de la última operación de limpieza, una limpieza en curso o si no se ha solicitado ninguna operación de limpieza.
Identifica errores conocidos de datos o la ausencia de esta clase de errores.
El campo config de la salida de zpool status describe la configuración de los dispositivos que conforman la agrupación, además de su estado y los posibles errores generados por los dispositivos. Puede mostrar uno de los estados siguientes: ONLINE, FAULTED, DEGRADED, UNAVAIL u OFFLINE. Si el estado es cualquiera de ellos menos ONLINE, significa que se pone el peligro la tolerancia a errores de la agrupación.
La segunda sección de la salida de configuración muestra estadísticas de errores. Dichos errores se dividen en tres categorías:
READ: errores de E/S al emitir una solicitud de lectura
WRITE: errores de E/S al emitir una solicitud de escritura
CKSUM: errores de suma de comprobación, lo que significa que el dispositivo ha devuelto datos dañados como resultado de una solicitud de lectura
Estos errores son aptos para determinar si los daños son permanentes. Una cantidad pequeña de errores de E/S puede denotar un corte temporal del suministro; una cantidad grande puede denotar un problema permanente en el dispositivo. Estos errores no necesariamente corresponden a datos dañados según la interpretación de las aplicaciones. Si el dispositivo se encuentra en una configuración redundante, los dispositivos podrían mostrar errores irreparables, aunque no aparezcan errores en el reflejo o el nivel de dispositivos RAID-Z. En estos casos, ZFS ha recuperado correctamente los datos en buen estado e intentado reparar los datos dañados a partir de réplicas existentes.
Para obtener más información sobre la interpretación de estos errores, consulte Cómo determinar el tipo de error en dispositivos.
En la última columna de la salida de zpool status se muestra información complementaria adicional. Dicha información se expande en el campo state para ayudar en el diagnóstico de modos de errores. Si un dispositivo tiene el estado FAULTED, este campo informa de si el dispositivo no está accesible o si dicho dispositivo tiene los datos dañados. Si se ejecuta la actualización de la duplicación de datos, el dispositivo muestra el progreso del proceso.
Para obtener información sobre el control del progreso de la actualización de duplicación de datos, consulte Visualización del estado de la actualización de duplicación de datos.
La sección de limpieza de la salida de zpool status describe el estado actual de cualquier operación de limpieza explícita. Esta información es diferente de si se detectan errores en el sistema, aunque es válida para determinar la exactitud de la información sobre datos dañados. Si la última operación de limpieza ha concluido correctamente, lo más probable es que se haya detectado cualquier tipo de datos dañados.
Los mensajes de limpieza completada se mantienen entre reinicios de sistema.
Para obtener más información sobre la limpieza de datos y la forma de interpretar esa información, consulte Comprobación de integridad de sistema de archivos ZFS.
El comando zpool status muestra también si hay errores conocidos asociados con la agrupación. Estos errores se pueden haber detectado durante la limpieza de datos o en el transcurso del funcionamiento normal. ZFS mantiene un registro constante de todos los errores de datos asociados con una agrupación. El registro se reinicia cada vez que concluye una limpieza total del sistema.
Los errores de datos dañados siempre son fatales. El hecho de que existan denota que al menos una aplicación ha tenido un error de E/S debido a los datos dañados de la agrupación. Los errores de dispositivos en una agrupación redundante no generan datos dañados ni forman parte de este registro. De forma predeterminada, sólo se muestra el número de errores detectados. La opción zpool status -v proporciona una lista completa de errores con los detalles. Por ejemplo:
# zpool status -v pool: tank state: UNAVAIL status: One or more devices are faulted in response to IO failures. action: Make sure the affected devices are connected, then run 'zpool clear'. see: http://www.sun.com/msg/ZFS-8000-HC scrub: scrub completed after 0h0m with 0 errors on Tue Feb 2 13:08:42 2010 config: NAME STATE READ WRITE CKSUM tank UNAVAIL 0 0 0 insufficient replicas c1t0d0 ONLINE 0 0 0 c1t1d0 UNAVAIL 4 1 0 cannot open errors: Permanent errors have been detected in the following files: /tank/data/aaa /tank/data/bbb /tank/data/ccc
El comando fmd muestra un mensaje parecido en la consola del sistema y el archivo /var/adm/messages. Con el comando fmdump se puede hacer un seguimiento de estos mensajes.
Para obtener más información sobre la interpretación de errores sobre corrupción de datos, consulte Identificación del tipo de deterioro de datos.
Aparte de hacer un constante seguimiento de los errores en la agrupación, ZFS muestra mensajes de syslog cuando se generan eventos de interés. Las situaciones siguientes generan eventos que notificar al administrador:
Transición de estados del dispositivo: si un dispositivo pasa a tener el estado FAULTED, ZFS registra un mensaje que indica que la tolerancia a errores de la agrupación puede estar en peligro. Se envía un mensaje parecido si el dispositivo se conecta posteriormente, con lo cual la agrupación se recupera del error.
Datos dañados: si se detecta cualquier tipo de datos dañados, ZFS registra un mensaje en el que se indica su ubicación y el momento en que tiene lugar. Este mensaje se registra sólo la primera vez que se detecta. Los accesos posteriores no generan ningún mensaje.
Errores de agrupaciones y de dispositivos: si tiene lugar un error de agrupación o dispositivo, el daemon del administrador de errores informa de dichos errores mediante mensajes de syslog y mediante el comando fmdump.
Si ZFS detecta un error de dispositivo y se recupera automáticamente, no se genera ninguna notificación. Esta clase de errores no supone ningún fallo en la redundancia de la agrupación ni la integridad de los datos. Además, esta clase de errores suele ser fruto de un problema de controlador provisto de su propio conjunto de mensajes de error.