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»
Comentarios
Hace mucho tiempo que tengo implementado DFS primero con Win 2008 y ahora con 2012R2. Es un sistema extraordinario que por desgracia está muy poco descrito en la bibliografía o en los blogs. Me parece altamente recomendable: tiene la misma funcionalidad de algunos clusters siendo mucho más sencillos y económicos de instalar que estos.
Hola Javier, me alegro te sirva, en la próxima nota que creo que ya publicaré mañana, está el tema de replicación
Aunque, tienes razón en cuanto a que es más barato que un cluster, hay que tener cuidado porque no provee la misma funcionalidad. Por un lado tiene la ventaja del menor costo, y el hecho que en el caso de una instalación distribuida siempre conectará a la copia «más cercana» al cliente, no es lo mismo
Sobre todo con W2012R2, las funcionalidades que provee un Cluster de compartir archivos son mucho más amplias
¡Gracias por el comentario!
Guillermo, super interensante cada uno de los temas que publicas y excelente las explicaciones que das…. TE FELICITO por la labor que estas haciendo.
Con respecto a este tema de DFS pudieras dedicar una nota para el caso de un estrura de directorio ya existente y si se puede llevar a DFS.. y a su vez aplicar repliacion selectiva sobre algunos directorios…?
Gracias por el comentario César, así dan ganas de seguir escribiendo :-)
Por supuesto que se puede aplicar sobre directorios existentes (se dice «carpeta» ahora :-D), alcanza con apuntar el «folder target» al directorio existente
Lo que no se puede, por lo menos que yo sepa es qué directorios dentro de esos directorios se van a replicar. O sea, que si yo replico una carpeta, se replicarán todo lo que esté adentro y no hay forma de seleccionar cuál sí, y cual no
De todas formas, para tener en cuenta, a partir que se utilizan los «folder targets» simplemente puedes mover una carpeta, a cualquier lugar o servidor, y alcanza con actualizar el enlace
hola guillermo segui paso a paso tu tutorial pero no replican archivos de carpeta e un origen a su destino que p uede ser ?
saluds
Hola Marcelo, no nada que pueda hacer yo desde acá :)
Sólo recomendarte que repases cada uno de los pasos
Hola Guillermo:
Si no sincroniza ficheros abiertos, no podrá sincronizar maquinas virtuales en marcha, no?.
Cuanto tiempo necesita tener un archivo cerrado para poder sincronizarlo con garantias?. Según su tamaño?. O trabaja como una snapshot?.
Gracias de antemano.
Hola Jesús, para máquinas virtuales te conviene otra opción:
Hyper-V Réplica: Preparando la Configuración (1 de 4) | WindowServer:
https://windowserver.wordpress.com/2014/03/10/hyper-v-rplica-preparando-la-configuracin-1-de-4/
Hyper-V Réplica: “Failover” de Prueba (2 de 4) | WindowServer:
https://windowserver.wordpress.com/2014/03/13/hyper-v-rplica-failover-de-prueba-2-de-4/
Hyper-V Réplica: “Failover” Planificado (3 de 4) | WindowServer:
https://windowserver.wordpress.com/2014/03/18/hyper-v-rplica-failover-planificado-3-de-4/
Hyper-V Réplica: “Failover” No Planificado (4 de 4) | WindowServer:
https://windowserver.wordpress.com/2014/03/20/hyper-v-rplica-failover-no-planificado-4-de-4/
O inclusive
Windows Server 8 – Customer Preview – Demostración: Hyper-V Live Migration sin cluster (!!!) | WindowServer:
https://windowserver.wordpress.com/2012/04/25/windows-server-8-customer-preview-demostracin-hyper-v-live-migration-sin-cluster/
Hola Guillermo: Perdona el retraso en contestarte.
Ya lo tengo implementado y funciona correctamente. Una vez más, es muy fácil realizar instalaciones siguiendo tus notas.
Gracias.
Hola Jesus, me alegro te sirvan
Guillermo como estas?
Te consulto si te ha pasado que te plantean la necesidad de que pasa cuando 2 personas abren el archivo al mismo tiempo y lo quieren editar, estando en sitios diferentes, hay forma de que el primero que lo tome sea el unico que pueda editarlo? Entiendo que no, pero bueno queria saber tu opinion.
Gracias y excelente el blog!
Hola Fernando, depende de la aplicación. Por ejemplo algunos «Office» permiten abrirlo a un segundo pero indica que solamente lectura pues otro usuario lo tiene abierto. Creo recordar, y no sé si requiere alguna configuración especial, que Office 2016 permite la edición simultánea reflejando los cambios de uno en otro (Colaboración en tiempo real :)
En cambio hay aplicaciones que si ya está abierto no permite que otro lo abra
Resumiendo, todo depende de la aplicación
Cordial saludo, deberías hacer el paso a paso, nos ayudarías mucho a quienes no tenemos conocimiento a fondo del tema
Hola Mauricio, está hecho el paso a paso inclusive con capturas de pantalla ¿no lo haz visto?
La primera parte justamente en esta nota, y la segunda parte en: Sistema Distribuído de Archivos (DFS = “Distributed File System”) Replicación y Sincronización de Datos | WindowServer:
https://windowserver.wordpress.com/2014/07/03/sistema-distribudo-de-archivos-dfs-distributed-file-system-replicacin-y-sincronizacin-de-datos/
Hola Guillermo, necesito sincronizar archivos para un sitio que trabaja sobre IIS, no tengo el control de cada cuando se cierra para que se repliquen entre sí, esto surge por la necesidad de que hago cambio en una página .asp y tengo que copiar los cambios entre todos los servidores conectandome por RDP y me quita mucho tiempo, el inconveniente que veo es que el archivo no debe estar en uso, esto es configurable o que otra utilería podría utilizar con ADDS? gracias de antemano
No es algo configurable en DFS, si los archivos no están cerrados, no se sincronizan
Buenas tardes. Mi problema esta en que si e server principal esta apagado, no levanta la información desde el server secundario.
Por favor, me podrían explicar que es lo que me falta para que esta tarea sea exitosa ?
muchas gracias
Hola Fernando, estos comentarios son sobre la nota, no son para soporte, sólo oriento cuando puedo. Puedes dirigirte a un foro de soporte, por ejemplo el de Technet en https://social.technet.microsoft.com/Forums/es-ES/home
Hola Guillermo, me parece muy completo tu articulo, yo soy nuevo en el tema y hasta ahora surgio la necesidad de instalarlo, pero no he encontrado una descarga segura para este software, vos tenes un link donde lo pueda descargar??
Me comentas, saludos
Hola Pedro, no hay que descargar nada, tal como muestra la nota es un componente del rol «File Services»
Hola Guillermo, me parece muy completo tu articulo e interesante, te felicito por el nivel de facilidad con el que presentas el tema. Guillermo, tengo que implementar un FILE SYSTEM DISTRIBUIDO pero NO se debo usar el SYSTEM VOL del Active Directory para replicación, en este ejercicio se utilizo este metodo de alguna forma? muchas gracias.
Hola David, con este DFS no se toca para nada la estructura de SYSVOL. En la nota siguiente a esta está el procedimiento para configurar la replicación
Borro el segundo mensaje que está duplicado con este
Hola Guillermo, primero que nada te felicito por el artículo, ya que esta muy bien explicado. Solo me surgen la siguientes dudas:
El primer folder (VentasBaires) veo que solo se crea en el SRV1 en el ejemplo, es necesario crearlo en el 2 o hay algo que lo crea en automático en lo que me perdí? Si así fuera porque el siguiente folder no aparece en el otro server?
Gracias
Sólo en SRV1, en la nota siguiente, donde se configura la replicación, se creará y replicará automáticamente
Muy buena explicación pero que pasa cuando ya esta creado un shared folder y queremos usar los permisos del mismo en el dfs? porque lo que yo vi es que si tengo ya un compartido genero el namespace tomando como referencia a ese folder me aparece… un recurso nuevo compartido
Hola Cristian, realmente no comprendo bien la pregunta, en la nota estoy creando una nueva carpeta, pero entiendo que no debería haber ningún problema si se usa una ya creada. No lo veo como un problema que no tenga solución, a lo sumo es crear una nueva compartida y luego mover los datos
Guillermo
Si mi DC y FS01 (192.168.1.0/24) esta en una red y el FS02 (192.168.2.0/24) esta en otra, es posible realizar el procedimiento.
Porque estoy haciendo pruebas y desde mi FS02 cuando ejecuto \\midominio.net\Brouchers, para ver si lo visualizo, pero el sistema me indica el siguiente mensaje: «check the spelling of the name. Otherwise, there might be a problem with your network. Try to identify and reesolve network problem.»
Ahora cuando lo ejecuto desde FS01 (Donde hice la toda configuracion), accedo sin mayor incoveniente. incluso desde mi maquino no hay incoveniente, claro, mi desktop esta en el mismo subneting que mi DC, y FS01.
Saben a que se puede deber esto?,
Hay que revisar … o es un tema de resolución de nombres, o durante la configuración no se escribió un nombre de la forma correcta. Creo que esas pueden ser las causas más comunes
Buenos días Guiilermo
Tengo una consulta, quizás ya se habrá contestado en otro hilo de la conversación o en tu blog, ahora mismo tengo la necesidad de migrar el servicio DFS que tengo implementado en un servidor, vamos a llamarlo Serv1 a otro servidor, este servidor destino lo llamaremos Serv2.
Existe algún procedimiento para poder llevar a cabo este movimiento. ?
Cómo siempre, a la espera de tu rápida y oportuna respuesta.
Se me olvido comentar, que en mi red tengo dos Servidores con el servicio DFS y tienen la opción de replicación.
Estaría descontinuando uno de ellos y reponiendo el servidor en otro servidor destino
Nunca he tenido que hacer ese procedimiento, pero supongo que lo más fácil, es quitar uno de la replicación, luego agregar el nuevo y agregarlo al grupo de replicación
Tengo un par de consultas. Actualmente tengo carpetas compartidas tipo \\server1\sharedforder con sus correspondientes accesos del dominio. Los usuarios tienen un disco de red asociado por ejemplo f:\ y donde los archivos excel tienen link internos a estos discos y ubicaciones dentro de las capetas. Quiero migrar esta misma info a sistema DFS. Se puede mantener la misma info?, los usuarios no perderán los accesos?, qué pierdo, qué gano?. Gracias,.
Hola Nelson, estos comentarios son sobre la nota, no son para soporte ni consultoría, sólo oriento cuando puedo. Puedes dirigirte a un foro de soporte, por ejemplo el de Technet en https://social.technet.microsoft.com/Forums/es-ES/home
Buenas Tardes Guillermo, quisiera consultar si este servicio DFS también trabaja sobre discos NAS a los que se les puede asignar permisos NTFS (actualmente hay discos que permiten establecer permisos de este tipo o creo que ya todos lo permiten).
Mi consulta es mas sobre el tema de los enlaces o links para la estructura lógica de carpetas compartidas para saber si puedo agregar un disco de este tipo como si fuera un servidor de archivos.
Hola Jorge, nunca tuve que implementar algo así, por lo que no puedo decirte nada
¡Hola Guillermo! Excelete nota, como todas. De verdad que tu blog es un referencia ¡y lo tengo de primero en mis bookmarks!
Tengo una pregunta, al hacer clic luego de escoger la opción «Domain-based namespace», obtengo el siguiente mensaje de error:
The namespace cannot be queried. The RPC server is unavailable.
Ya revisé:
1. El servicio RPC está ejecutándose en Services.msc
2. El equipo está en el dominio y lo ve sin problemas.
¿Crees que se trata de un problema de FW?
¡Gracias de antemano!
Hola Alexis. Me da que hay problemas con la resolución de nombres DNS
Revisa por ese lado
Hola Guillermo,
Gracias por tu respuesta. Resulta que mi VM no tenía acceso al puerto 445 (SMB) en el domain controller.
Hablé con redes, autorizaron la IP de mi VM para dicho puerto y voilà!
Muchas gracias nuevamente
:)
Trackbacks
[…] la nota anterior “Sistema Distribuido de Archivos (DFS = “Distributed File System”) ¿Realmente lo Conoce?” hemos visto algunos de los términos fundamentales que debemos conocer para interpretar […]