Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
wikitecnica:zfs [2025/02/05 23:25] lorenzo |
wikitecnica:zfs [2026/01/17 14:53] (actual) lorenzo |
||
|---|---|---|---|
| Línea 13: | Línea 13: | ||
| La compatibilidad de los módulos del kernel en actualizaciones del kernel de linux, puede llevarse a cabo mediante 2 mecanismos DKMS(Dynamic Kernel Module Support) y KABI(Kernel Application Binary Interface), estos mecanismos son esenciales para el manejo de los módulos cuando ocurren actualizaciones del kernel. | La compatibilidad de los módulos del kernel en actualizaciones del kernel de linux, puede llevarse a cabo mediante 2 mecanismos DKMS(Dynamic Kernel Module Support) y KABI(Kernel Application Binary Interface), estos mecanismos son esenciales para el manejo de los módulos cuando ocurren actualizaciones del kernel. | ||
| === DKMS === | === DKMS === | ||
| - | El propósito de este mecanismo es simplificar el mantenimiento de los módulos del kernel, cuando ocurren actualizaciones del kernel mediante la compilación e instalación automática de los módulos requeridos, este mecanismo requiere la instalación del ambiente de de desarrollo y el los fuentes del nuevo kernel. | + | El propósito de este mecanismo es simplificar el mantenimiento de los módulos del kernel, cuando ocurren actualizaciones del kernel mediante la compilación e instalación automática de los módulos requeridos, este mecanismo requiere la instalación del ambiente de de desarrollo y el los fuentes del nuevo kernel. |
| === KABI === | === KABI === | ||
| Esta es una interfaz proporcionada por el kernel de linux que permite a los módulos mantener una compatibilidad binaria en las actualizaciones del kernel, esto implica que el módulo se construye considerando la interfaz KABI del kernel y esto evita la recompilación de los módulos. | Esta es una interfaz proporcionada por el kernel de linux que permite a los módulos mantener una compatibilidad binaria en las actualizaciones del kernel, esto implica que el módulo se construye considerando la interfaz KABI del kernel y esto evita la recompilación de los módulos. | ||
| Línea 72: | Línea 72: | ||
| === Referencia === | === Referencia === | ||
| [[https:// | [[https:// | ||
| - | + | ||
| + | === Particionamiento de los discos ===== | ||
| + | Cuando se agregan discos a un dataset de ZFS es recomendable que los discos sean similares en almacenamiento y velocidad de acceso, en un arreglo de tipo mirroring el mejor desempeño ocurre cuando los discos son similares o identicos en su geometría. | ||
| + | |||
| + | Para verificar los discos y sus particiones mediante el comando: | ||
| + | //lsblk// | ||
| + | |||
| + | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS | ||
| + | sda | ||
| + | └─sda1 | ||
| + | sdb | ||
| + | └─sdb1 | ||
| + | sdc | ||
| + | └─sdc1 | ||
| + | sdd | ||
| + | └─sdd1 | ||
| + | nvme0n1 | ||
| + | ├─nvme0n1p1 259:1 0 | ||
| + | ├─nvme0n1p2 259:2 0 | ||
| + | ├─nvme0n1p3 259:3 0 80G 0 part / | ||
| + | └─nvme0n1p4 259:4 0 | ||
| + | |||
| + | Como puede observarse en el ejemplo anterior se tienen 4 discos de geometria similar con una partición cada una que toma toda la superficie de cada disco, en un vdev de tipo mirroring se agregan particiones idénticas. | ||
| + | | ||
| | | ||
| ==== Creación de un depósito de almacenamiento (pool) ==== | ==== Creación de un depósito de almacenamiento (pool) ==== | ||
| Línea 93: | Línea 116: | ||
| Se puede revisar el estatus de un pool recien creado mediante el comando: //zpool status//, asimismo si se chequean los sistemas de archivo accesibles mediante el comando //df -h// aparece el nombre del pool como un punto de montaje del sistema de archivos. | Se puede revisar el estatus de un pool recien creado mediante el comando: //zpool status//, asimismo si se chequean los sistemas de archivo accesibles mediante el comando //df -h// aparece el nombre del pool como un punto de montaje del sistema de archivos. | ||
| + | ==== Chequeo de la integridad de un depósito de almacenamiento ==== | ||
| + | Hay ocasiones durante los procesos normales de operación no puede accederse algún archivo o directorio, | ||
| + | El comando //zpool scrub < | ||
| ==== Traslado de un depósito de almacenamiento (pool) ==== | ==== Traslado de un depósito de almacenamiento (pool) ==== | ||
| Los pools de ZFS pueden moverse entre máquinas con versiones identicas o superiores del sistema operativo, para esta operación es necesario exportar los pools para dejen de estar disponibles en el servidor actual, para incluirlos en nuevo servidor se hace la operación de importación. | Los pools de ZFS pueden moverse entre máquinas con versiones identicas o superiores del sistema operativo, para esta operación es necesario exportar los pools para dejen de estar disponibles en el servidor actual, para incluirlos en nuevo servidor se hace la operación de importación. | ||
| Línea 167: | Línea 193: | ||
| ==== Snaphots ==== | ==== Snaphots ==== | ||
| - | Un snapshot es una copia de solo lectura de un sistema de archivos o de un volúmen, los snapshots pueden generarse en cualquier momento y no consumen en su creación, espacio adicional del pool, por supuesto cuando el dataset es modificado el snapshot consume espacio ya que hac referencia al estado de la información antes de la modificación. | + | Un snapshot es una copia de solo lectura de un sistema de archivos o de un volúmen, los snapshots pueden generarse en cualquier momento y no consumen en su creación, espacio adicional del pool, por supuesto cuando el dataset es modificado el snapshot consume espacio ya que hace referencia al estado de la información antes de la modificación. |
| Los snapshots: | Los snapshots: | ||
| Línea 180: | Línea 206: | ||
| La destrucción de un snapshot ocurre:\\ | La destrucción de un snapshot ocurre:\\ | ||
| - | //zfs destroy casuniVol/ | + | //zfs destroy casuniVol/ |
| Los snapshots vigentes para un dataset pueden listarse mediante:\\ | Los snapshots vigentes para un dataset pueden listarse mediante:\\ | ||
| Línea 191: | Línea 217: | ||
| * Los snapshots no tienen propiedades modificables. | * Los snapshots no tienen propiedades modificables. | ||
| * Los datasets que tienen snapshots no pueden ser destruidos. | * Los datasets que tienen snapshots no pueden ser destruidos. | ||
| - | == Respaldos == | + | === Respaldos |
| Los respaldos pueden hacerse mediante tar a partir de snapshots((Estos datasets generan un directorio con elnombre del snapshot en un directorio oculto del filesystem)), | Los respaldos pueden hacerse mediante tar a partir de snapshots((Estos datasets generan un directorio con elnombre del snapshot en un directorio oculto del filesystem)), | ||
| Línea 199: | Línea 225: | ||
| Referencia: [[https:// | Referencia: [[https:// | ||
| + | |||
| + | ==== Clones ==== | ||
| + | |||
| + | Un clon es un volumen de escritura o un sistema de archivos cuyo contenido es similar al dataset del cuál fue generado, similar a los snapshots, la generación de los clones es instantáneo y no consume espacio adicional. | ||
| + | |||
| + | Los clones son creados a partir de un snapshot, cuando un snapshot es clonado se crea una dependencia entre el clon y el snapshot, aun cuando el clon puede colocarse en cualquier lugar de la jerarquia de clones, la relación con el snapshot siempre existe, no puede destruirse un snapshot que tenga clones agregados. | ||