Una agrupación de almacenamiento ZFS reflejada puede ser rápidamente clonada como una agrupación de copia de seguridad mediante el comando zpool split.
Puede utilizar el comando zpool split para desconectar uno o varios discos de una agrupación de almacenamiento ZFS reflejada para crear una nueva agrupación con los discos desconectados. La nueva agrupación tendrá el mismo contenido que la agrupación original de almacenamiento de ZFS reflejada.
De manera predeterminada, una operación zpool split en una agrupación reflejada desvincula el último disco de la agrupación recién creada. Después de la operación de división, importe la nueva agrupación. Por ejemplo:
# zpool status tank pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c1t0d0 ONLINE 0 0 0 c1t2d0 ONLINE 0 0 0 errors: No known data errors # zpool split tank tank2 # zpool import tank2 # zpool status tank tank2 pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 c1t0d0 ONLINE 0 0 0 errors: No known data errors pool: tank2 state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank2 ONLINE 0 0 0 c1t2d0 ONLINE 0 0 0 errors: No known data errors
Puede identificar qué disco utilizar para la nueva agrupación especificando ésta con el comando zpool split. Por ejemplo:
# zpool split tank tank2 c1t0d0
Antes de que se produzca la división, los datos en memoria se vaciarán en los discos reflejados. Después de vaciarse los datos, el disco se desconecta de la agrupación y se le asigna un nuevo GUID de agrupación. Se genera un nuevo GUID para permitir la importación de la agrupación en el mismo sistema en que se ha dividido.
Si la agrupación que se va a dividir tiene puntos de montaje de sistema de archivos no predeterminados y la nueva agrupación se crea en el mismo sistema, deberá usar la opción zpool split –R para identificar un directorio raíz alternativo para la nueva agrupación, a fin de evitar conflictos entre los puntos de montaje existentes. Por ejemplo:
# zpool split -R /tank2 tank tank2
Si no utiliza la opción de zpool split –R y observa que hay conflictos entre puntos de montaje al intentar importar la nueva agrupación, impórtela utilizando la opción –R. Si la nueva agrupación se crea en un sistema distinto, no debería ser preciso especificar un directorio raíz alternativo a menos que haya conflictos de puntos de montaje.
Tenga en cuenta lo siguiente antes de utilizar la función zpool split:
Esta función no está disponible para una configuración RAID-Z o una agrupación no redundante de varios discos.
Antes de intentar una operación zpool split, no debería haber activas operaciones de aplicación ni datos.
Una agrupación no se puede dividir si la actualización de duplicación está en curso.
La división de una agrupación reflejada es óptima cuando la agrupación está compuesta por dos o tres discos y el último disco de la agrupación original se utiliza para crear la nueva agrupación. Luego, puede usar el comando zpool attach para volver a crear la agrupación de almacenamiento reflejada original o para convertir la agrupación recién creada en una agrupación de almacenamiento reflejada. Actualmente no existe ningún método para crear una nueva agrupación reflejada a partir de una agrupación reflejada existente en una operación zpool split, ya que la nueva agrupación (dividida) no es redundante.
Si la agrupación ya existente es un reflejo de tres vías, la nueva agrupación contendrá un disco después de la operación de división. Si la agrupación ya existente es un reflejo de dos vías de dos discos, el resultado son dos agrupaciones no redundantes de dos discos. Tendrá que conectar dos discos adicionales para convertir las agrupaciones no redundantes en agrupaciones reflejadas.
Una buena forma de mantener los datos redundantes durante una operación de división consiste en dividir una agrupación de almacenamiento reflejada compuesta de tres discos de manera que la agrupación original se componga de dos discos reflejados después de la operación de división.
Confirme que el hardware esté configurado correctamente antes de dividir una agrupación reflejada. Para obtener información sobre la confirmación de la configuración de vaciado de caché del hardware, consulte Prácticas generales del sistema.
En el siguiente ejemplo, se divide una agrupación reflejada denominada mothership, con tres discos. Las dos agrupaciones resultantes son la agrupación reflejada mothership, con dos discos, y la nueva agrupación, luna, con un disco. Cada agrupación tiene el mismo contenido.
La agrupación luna se puede importar en otro sistema para realizar copias de seguridad. Una vez finalizada la copia de seguridad, se puede destruir la agrupación luna y el disco se vuelve a conectar a mothership. A continuación, se puede repetir el proceso.
# zpool status mothership pool: mothership state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM mothership ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t5000C500335F95E3d0 ONLINE 0 0 0 c0t5000C500335BD117d0 ONLINE 0 0 0 c0t5000C500335F907Fd0 ONLINE 0 0 0 errors: No known data errors # zpool split mothership luna # zpool import luna # zpool status mothership luna pool: luna state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM luna ONLINE 0 0 0 c0t5000C500335F907Fd0 ONLINE 0 0 0 errors: No known data errors pool: mothership state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM mothership ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t5000C500335F95E3d0 ONLINE 0 0 0 c0t5000C500335BD117d0 ONLINE 0 0 0 errors: No known data errors