====== GlusterFS: configuración y administración ====== ===== Introducción ===== GlusterFS es un sistema de archivos de red escrito en espacio de usuario. Utiliza FUSE para acceder a una capa VFS. Por sí mismo es un sistema de archivos, pero para almacenar los datos usa sistemas de archivos de disco maduros y probados como ext3, ext4, xfs, y otros. Puede escalar a varios petabytes de almacenamiento, el cual queda disponible al usuario bajo un sólo punto de montaje. ===== Terminología ===== * brick: es el sistema de archivos de almacenamiento que ha sido asignado a un volumen * cliente: es la máquina que monta el volumen (y que también puede actuar como servidor) * nodo: sinónimo de servidor, en particular cuando el mismo forma parte de un cluster * servidor: es la máquina (virtual o física) que contiene el sistema de archivos actual en el cual los datos son almacenados * subvolumen: es un brick luego de haber sido procesado por al menos un translator * translator: conecta a uno o más subvolúmenes, hace algo con ellos, y ofrece una conexión de subvolumen * volumen: el recurso compartido luego de haber pasado por todos los translators ===== Preparación inicial e instalación ===== Para simplificar el trabajo, se utilizarán nombres de host para cada nodo. Es necesario que los nodos se vean entre sí siempre, aunque ocurra cualquier falla en el DNS, por lo que además de tener los nombres de host en el DNS, se recomienda que sean indicados en el archivo hosts. Para este tutorial, se utilizarán dos servidores: srv01 y srv02. Archivo hosts, igual en ambos nodos: 192.168.0.1 srv01 srv01.dominio 192.168.0.2 srv02 srv02.dominio Si bien este tutorial se realizará sobre Debian GNU/Linux Wheezy, las bases pueden servir para cualquier Linux, obviamente. Instalar GlusterFS, demonio y herramientas de cliente: apt-get install glusterfs-server glusterfs-client Una vez instalado, se puede verificar la versión con: glusterfsd --version Si se tiene configurado un firewall, se debe asegurar que los puertos TCP 111, 24007, 24008, 24009-(24009 + número de bricks a lo largo de todos los volúmenes) están abiertos para que los nodos puedan verse entre sí. ===== Tareas, trucos, consejos ===== ==== Obligar a los nodos a sincronizarse ==== Ejecutar en un cliente, el siguiente comando: find /mnt/repvol -noleaf -print0 | xargs --null stat >/dev/null 2>/var/log/repvol-selfheal.log ===== Bibliografía ===== * http://gluster.org/community/documentation/index.php/GlusterFS_Concepts * http://www.howtoforge.com/high-availability-storage-with-glusterfs-3.2.x-on-debian-wheezy-automatic-file-replication-mirror-across-two-storage-servers * http://www.howtoforge.com/setting-up-a-standalone-storage-server-with-glusterfs-and-samba-on-debian-squeeze-p1 * http://www.linuxuser.co.uk/tutorials/create-your-own-high-performance-nas-using-glusterfs * http://www.jamescoyle.net/how-to/439-mount-a-glusterfs-volume * http://gluster.org/community/documentation/index.php/Gluster_3.2:_Rebalancing_Volume_to_Migrate_Existing_Data