He decidido hacer una nota sobre este tema porque he visto cuando dicto capacitación que muchos no lo conocen, o por lo menos desconocen una parte de su funcionalidad
El Sistema Distribuido de Archivos, en adelante DFS, tiene dos utilidades fundamentales:
- La primera, y quizás menos conocida, es la de presentar una estructura lógica ordenada de carpetas compartidas, aunque estén ubicadas físicamente en diferentes servidores y sitios geográficos
- La segunda, y creo que es la más conocida, es poder mantener en forma sincronizada una carpeta entre diferentes servidores
Esto último, tiene la ventaja de aprovechar la infraestructura física de la red, ya que un cliente siempre va a tratar de conectarse a la copia local, pero también provee en cierta medida tolerancia a fallas
Por supuesto que esto no es un sistema ideal, ni reemplaza a una copia de seguridad (“Backup”), ni sincroniza archivos abiertos, pero es de utilidad
Para poder hacer lo más claro posible el tema primero debemos definir algunos nombres de los componentes
- “Namespace” (Espacio de Nombres): es donde se conectará el cliente, y que será la “raíz” de los compartidos
- “Folders” (Carpetas): dentro del “Namespace” definiremos “Folders” (Carpetas) que en realidad no serán las conocidas carpetas, sino que funcionarán como apuntadores a una carpeta compartida en algún servidor.
- “Folder Target” (Carpeta Destino): Estos son apuntadores que y enlazan el “Folder” con la carpeta real compartida
Creo que un gráfico es mejor que muchas palabras
Los clientes se conectarán, en esta demostración, a \\ad.guillermod.com.ar\VentasData, donde verán “en su interior” otras dos carpetas llamadas: “VentasMendoza” que apuntará a \\SRV2\VentasMendoza (donde está realmente), y otra carpeta “VentasBAires” que en realidad apunta a dos ubicaciones físicas diferentes pero sincronizadas \\SRV1\VentasBAires y \\SRV2\VentasBaires
Esta opción de poder sincronizar carpetas puede tener muchos usos prácticos desde distribuir información desde un sitio central, a la posibilidad de colectar en forma central información que se genera en forma distribuida
La infraestructura que utilizaré para esta demostración está basada en la misma que uso para todas estas notas:
- DC1.ad.guillermod.com.ar que es el Controlador de Dominio
- SRV1.ad.guillermod.com.ar que es un servidor miembro del Dominio
- SRV2.ad.guillermod.com.ar que es otro servidor miembro del Dominio
Lo primero que debemos hacer es instalar tanto SRV1 como en SRV2 la funcionalidad necesaria. No mostraré sobre esto el paso a paso porque entiendo que todo el que lea esto conoce cómo hacerlo. Debemos instalar los roles: wn “File Server”, agregar “DFS Namespaces” y “DFS Replication”
Si desean probar la funcionalidad con permisos, pueden hacer algo similar a lo que yo he hecho: crear dos usuarios incluidos en correspondientes grupos, para poder asignar permisos específicos
Una vez instaladas las funcionalidades requeridas en ambos servidores (SRV1 y SRV2), desde cualquiera de ellos abrimos la consola “DFS Management”
Se debe comenzar creando el “Namespace”
Este “Namespace” debe ser mantenido en un servidor, yo he seleccionado SRV1
Le he dado el nombre “VentasData”
Y ahora viene una decisión importante. Un DFS puede ser de tipo “Domain-based” en cuyo caso la información quedará guardada en Active Directory, y en los “Namespace Servers” de forma de proveer tolerancia a fallas.
O por el contrario “Stand-alone”, guardando la configuración sólo en el “Namespace Server”. En este caso, no se requiere Dominio, pero la única forma de proveer tolerancia a fallas sería mediante un “Failover Cluster”
Confirmamos
En la consola podremos ver que lo hemos creado
Si deseamos tener tolerancia a fallas es importante tener más de un “Namespace Server”, además del que ya tenemos (SRV1), así que agregaré también a SRV2
Si vamos a la ficha “Namespace Servers” podemos confirmar lo hecho
Ya tenemos creado el “Namespace” y los “Namespace Servers” así que el paso siguiente es comenzar a crear los “Folders”
Observen que estoy indicando un “Target” (Destino) que no existe, ni como carpeta ni como compartido; el sistema me propondrá la creación de lo necesario
Observen que he asignado el “path” (C:\VentasBaires) que no he marcado en rojo como es habitual 🙁
Podremos seleccionar que se asignen los permisos “standard” o personalizarlos, elegiré esta última opción. Los permisos que he dado son:
- Domain Admins: Control Total (“Full Control”)
- VentasGerencia: Cambio (“Change”)
- VentasPersonal: Lectura (“Read”)
Y ya tenemos creado el “Folder” (Carpeta) con su correspondiente “Folder Target” (Carpeta Destino)
En forma totalmente análoga crearé otra carpeta (VentasMendoza) pero esta la apuntaré a SRV2, en lugar de SRV1
Y ya tendremos listos ambos “Folders”
Veamos cómo se accede y cómo se ve desde otra máquina. Así que desde DC1 en Ejecutar ingreso \\ad.guillermod.com.ar\VentasData
Como podemos observar en la pantalla anterior se puede acceder desde un sitio central a carpetas compartidas que físicamente están en diferentes servidores
En la próxima nota seguiremos con este tema pero configurando la repliacación de datos a través de DFS: "Sistema Distribuído de Archivos (DFS = “Distributed File System”) Replicación y Sincronización de Datos"