- Gestión basada en piscinas
- Aprovisionamiento ligero
- Instantáneas del sistema de archivos
- Vigilancia
Stratisd es el demonio detrás de Stratis y ayuda a configurar los componentes de almacenamiento bajo el sistema de archivos XFS y el subsistema mapeador de dispositivos. Por el momento, Stratis apoya Volúmenes lógicos LVM, unidades de disco duro, SSD, NVMe, y ISCI dispositivos de almacenamiento.
Ahora, echemos un vistazo y veamos algunos términos clave básicos
- blockdev: Esta es una terminología que se refiere a dispositivos de bloqueo.
- Piscina: Un grupo puede constar de uno o varios dispositivos de bloque. El tamaño de una piscina de estratos será equivalente a la suma de los dispositivos de bloque que componen la piscina.
- Sistema de archivos: Un sistema de archivos es una capa finamente aprovisionada cuyo tamaño crece a medida que se agrega más información o datos. Stratis escala automáticamente el tamaño de un sistema de archivos a medida que los datos crecen casi hasta el tamaño del sistema de archivos virtual.
Stratis se compone de:
- Demonio de Stratisd: Un demonio que permite a un usuario administrar dispositivos de bloque.
- Stratis-cli: Una utilidad de línea de comandos que viene con Stratis.
Instalación de Stratis en RHEL 8
Habiendo presentado brevemente Stratis, lo que hace y sus componentes, ahora instalemos Stratis en RHEL 8
Para instalar Stratis en RHEL 8, inicie sesión como usuario root y ejecute el comando:
# dnf instalar stratisd stratis-cli
Cuando se le solicite, escriba y para continuar con la instalación. Si todo salió bien, debería poder obtener el resultado a continuación que confirma que todo salió bien.
Para confirmar la instalación de los paquetes de stratis, ejecute el comando:
# rpm -q stratisd stratis-cli
Inicio del servicio Stratis en RHEL 8
Para iniciar el servicio Stratis, ejecute el comando:
# systemctl enable --now stratisdA continuación, verifique el estado de Stratis, ejecutando el comando:
# systemctl status stratisd
De la salida anterior, podemos observar que Stratis está funcionando.
Crear una piscina Stratis
Antes de comenzar con la creación de un grupo de Stratis, asegúrese de que los dispositivos de bloque en su sistema tengan un mínimo de 1 GB. Además, estos dispositivos deben estar desmontados e inactivos. Además, el demonio de stratisd debe estar ejecutándose. en nuestra configuración, hay 5 dispositivos de bloque además de la partición primaria:
- / dev / xvdb
- / dev / xvdc
- / dev / xvdd
- / dev / xvde
- / dev / xvdf
Puede echar un vistazo a los dispositivos de bloque existentes ejecutando el comando:
# lsblk
Además, es crucial asegurarse de que los dispositivos de bloque no tengan una tabla de particiones existente.
Confirme esto usando la sintaxis:
# blkid -p /Por ejemplo
# blkid -p / dev / xvdb
Ninguna salida implica que no existe una tabla de particiones en los dispositivos de bloque. Sin embargo, en caso de que exista una tabla de particiones en uno de los dispositivos, puede borrar la partición usando el comando:
# wipefs -a /Creación de una piscina Stratis desde un dispositivo de bloque
Puede crear un grupo de Stratis a partir de un dispositivo de bloque único utilizando la sintaxis:
# stratis pool crearPor ejemplo para crear una piscina pool_1 desde el dispositivo de bloque / dev / xvdb correr:
# stratis pool crea pool_1 / dev / xvdbPara enumerar el grupo creado, ejecute:
# lista de grupos de stratis
De la salida anterior, podemos ver claramente que un nuevo grupo, pool_1 Ha sido creado.
Cree un grupo de Stratis a partir de varios dispositivos de bloque
Para crear un grupo a partir de varios dispositivos, utilice la sintaxis siguiente que enumera todos los dispositivos en una línea
# stratis pool crearPara crear una piscina a partir de / dev / xvdc y / dev / xvdd ejecuta el comando:
# stratis pool crea pool_2 / dev / xvdc / dev / xvdd /Una vez más, enumere los grupos disponibles usando el comando:
# lista de grupos de stratisEn este punto, debería tener 2 grupos: pool_1 y pool_2
De la salida anterior, podemos notar claramente que pool_2 tiene el doble de tamaño que pool_1 porque comprende dos dispositivos de bloque, cada uno de los cuales tiene un volumen físico de 10 GB.
Crear un sistema de archivos a partir de un grupo
Desde uno de los grupos de Stratis creados anteriormente, puede crear un sistema de archivos utilizando la sintaxis siguiente:
# stratis fs creaPor ejemplo, para crear un sistema de archivos fs_1 de pool_1 ejecutar el comando:
# stratis fs crea pool_1 fs_1Además, puede crear más de 1 sistema de archivos a partir de un grupo. En el segundo grupo, crearemos 2 sistemas de archivos:
fs_2& fs_3
# stratis fs crea pool_2 fs_2
# stratis fs crea pool_2 fs_3
Ahora, para mostrar los nuevos sistemas de archivos, ejecute:
# stratis lista de fs
Para enumerar los sistemas de archivos en un grupo determinado, use la sintaxis
# stratis lista de fsPor ejemplo, para ver los sistemas de archivos existentes en pool_1, ejecute el comando:
# stratis fs list pool_1
Para la ejecución de pool_2:
# stratis fs list pool_2
Como era de esperar, tenemos 2 sistemas de archivos en el segundo grupo.
En este punto, ejecutar el lsblk El comando producirá una salida similar a la siguiente:
Cómo montar un sistema de archivos Stratis
Para acceder a los sistemas de archivos, primero debemos montarlos. El primer paso será crear puntos de montaje para cada uno de los sistemas de archivos. Esto se resume en la siguiente tabla
Sistema de archivos | Punto de montaje |
fs_1 | /almacenamiento |
fs_2 | /base de datos |
fs_3 | /respaldo |
Entonces, cree el primer punto de montaje para el sistema de archivos en pool_1
# mkdir / almacenamientoA continuación, monte el sistema de archivos
# mount / Stratis / pool_1 / fs_1 / storage
Para montar el segundo sistema de archivos, siga el mismo procedimiento:
# mkdir / base de datosMonte el sistema de archivos:
# mount / stratis / pool_2 / fs_2 / database
Y finalmente para el último sistema de archivos:
# mkdir / copia de seguridadMonte el sistema de archivos:
# mount / stratis / pool_2 / fs_3 / backup
Puede confirmar la existencia de los puntos de montaje usando el comando:
# df -Th | grep stratis
Hacer persistentes los sistemas de archivos stratis
Los sistemas de archivos que acabamos de crear no sobrevivirán a un reinicio. Para que sean persistentes, debemos agregarlos a la / etc / fstab expediente.
Primero, recuperemos el UUID de los sistemas de archivos como se muestra
# blkid -p / stratis / pool_1 / fs_1# blkid -p / stratis / pool_2 / fs_2
# blkid -p / stratis / pool_2 / fs_3
# echo "UUID = 9161da55-6c4b-4761-9da9-1b3999945964 / almacenamiento
xfs por defecto 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = ddfa4252-a9d6-4c10-8981-e7dbd56450ee / database
xfs por defecto 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = 512bc0b7-182e-46ed-9fbd-d5be4d055fcf / backup
xfs por defecto 0 0 "| sudo tee -a / etc / fstab
Puede confirmar la adición de los sistemas de archivos al / etc / fstab como se muestra:
Para que los cambios surtan efecto en el sistema, ejecute el comando:
# systemctl daemon-reloadLuego monte todos los sistemas de archivos
# mount -a
Agregar un dispositivo de bloque a un grupo de Stratis
Para agregar un dispositivo de bloque a un grupo de Stratis existente, ejecute el comando:
# stratis pool add-dataPor ejemplo para agregar el volumen del bloque / dev / xvde a pool_1 ejecuta el comando:
# stratis pool add-data pool_1 / dev / xvdeAhora compruebe el tamaño de pool_1
# lista de grupos de stratis
Como se observó, el tamaño de pool_1 se ha duplicado como resultado del dispositivo de bloqueo agregado.
Crear una instantánea de Stratis
Un sistema de archivos Stratis es una copia exacta o réplica de otro sistema de archivos Stratis. Contiene el mismo contenido que el sistema de archivos original. Sin embargo, una instantánea se puede modificar más adelante y, a partir de entonces, existirán diferencias entre la instantánea y el sistema de archivos original.
Aquí hay algunas cosas que también debe saber:
- Una instantánea de un sistema de archivos es simplemente otra réplica del sistema de archivos.
- No es necesario montar un sistema de archivos para poder crear una instantánea a partir de él.
- Un sistema de archivos instantáneo puede sobrevivir al sistema de archivos original a partir del cual fue creado
Para crear una instantánea, use la sintaxis:
# instantánea de stratis fsPor ejemplo, para crear una instantánea llamada snapshot_1 en pool_1 ejecutar el comando
# stratis fs snapshot pool_1 fs_1 snapshot_1Esto tardará unos 30 segundos.
Para confirmar la creación de la instantánea, ejecute:
# lista del sistema de archivos de stratisEn este caso, el comando será:
# stratis lista del sistema de archivos pool_1
Además, puede agregar el atributo de fecha (-$ (fecha +% Y-% m-% d) para identificar fácilmente cuándo se creó la instantánea. Creemos otra instantánea usando el segundo grupo.
# stratis fs snapshot pool_2 fs_2 snapshot_2 - $ (fecha +% Y-% m-% d)Para enumerar la instantánea de Stratis recién creada, emita el comando:
# stratis lista del sistema de archivos pool_2
De la salida anterior, podemos ver una instantánea creada en pool_2 con una etiqueta de fecha.
Cómo volver a una instantánea anterior usando un sistema de archivos
Para volver a una instantánea anterior utilizando un sistema de archivos, primero debe desmontar y destruir el sistema de archivos original.
# umount / stratis /Por ejemplo, en pool_2 volver a instantánea_2 desmontar el sistema de archivos fs_2
# umount / stratis / pool_2 / fs_2A continuación, cree una copia de la instantánea del sistema de archivos original
# instantánea del sistema de archivos de stratisinstantánea fs-mountpoint
El comando será:
# stratis filesystem snapshot pool_2 snapshot_2-2019-11-15 base de datos
Finalmente, monte la instantánea utilizando el punto de montaje del sistema de archivos
# mount / stratis / pool_2 / fs_2 / database
Eliminar una instantánea de Stratis
Para eliminar una instantánea de Stratis, en primer lugar, desmonte la instantánea.
# umount / snapshot_mountpointPara eliminar la instantánea creada en pool_2, desmontar el punto de montaje como se muestra
# umount / databaseA continuación, proceda y destruya la instantánea:
# destruir el sistema de archivos de stratisEl comando será:
# stratis filesystem destruye pool_2 snapshot_2-2019-11-15Ahora intente enumerar los sistemas de archivos en pool_2. Notarás que la instantánea ya no está.
# stratis lista del sistema de archivos pool_2
Eliminar un sistema de archivos Stratis
Para deshacerse de un sistema de archivos, primero desmonte el sistema de archivos usando la siguiente sintaxis:
# umount / stratis / pool / filesystemPor ejemplo, para eliminar el sistema de archivos fs_1 en pool_1, primero desmóntelo como se muestra:
# umount / stratis / pool_1 / fs_1A continuación, destruya el sistema de archivos utilizando la siguiente sintaxis:
# el sistema de archivos stratis destruye el pool fsEn nuestro escenario, el comando será:
# el sistema de archivos stratis destruye pool_1 fs_1
Para confirmar que el sistema de archivos se eliminó correctamente, ejecute el comando:
# stratis lista del sistema de archivos pool_1
Como puede observar, el sistema de archivos ya no existe.
Eliminar una piscina Stratis
Por último, veamos cómo puede eliminar un grupo de Stratis.
Para eliminar un grupo de Stratis, debe desmontar y destruir cualquier sistema de archivos y una instantánea del grupo, como vimos en los subtemas anteriores.
Como queda una instantánea en pool_1, primero la eliminaremos eliminando primero el punto de montaje asociado con la instantánea
# desmontaje / almacenamientoA continuación, destruya el sistema de archivos.
# stratis filesystem destruye pool_1 snapshot_1Con la instantánea ahora eliminada, elimine pool_1 usando el comando
# stratis pool destruir pool_1
Ahora enumere las piscinas disponibles:
# lista de grupos de stratis
Para eliminar pool_2 , primero enumeremos los sistemas de archivos
# stratis lista del sistema de archivos pool_2
Desmonte y destruya los sistemas de archivos como se muestra
# umount / stratis / pool_2 / fs_3# el sistema de archivos stratis destruye pool_2 fs_3
# el sistema de archivos stratis destruye la base de datos pool_2
A continuación, destruya la piscina y enumere las piscinas
# stratis pool destruir pool_2# lista de grupos de stratis
Perfecto ! todas las piscinas se han ido ahora. Hemos vuelto a donde empezamos ! Puede confirmar una vez más enumerando los dispositivos de bloqueo usando el comando:
y cómo puede usarlo para administrar dispositivos de bloque, crear instantáneas, sistemas de archivos y grupos y eliminarlos también. Sus pensamientos y comentarios son bienvenidos.
Referencias:
- https: // acceso.sombrero rojo.com / documentation / en-us / red_hat_enterprise_linux / 8 / html / manage_file_systems / management-layered-local-storage-with-stratis_managing-file-systems
- https: // www.tecmint.com / install-stratis-to-manage-layered-local-storage-on-rhel /