sistemas distribuidos
Sistemas de
ficheros
distribuidos
Índice
•
•
•
•
•
•
•
•
Introducción
Estructura de un SFD
Resolución de nombres
Acceso a los datos
Gestión de cache
Gestión de cerrojos
Estudio de ejemplos: NFS, AFS y Coda
Sistemas de ficheros paralelos
– General Parallel File System (GPFS)
– Google File System (GFS)
Sistemas Operativos Distribuidos2
Fernando Pérez Costoya
Conceptos básicos
• Sistema de ficheros distribuido (SFD)
– Sistema de ficheros para sistema distribuido
– Gestiona distintos dispositivos en diferentes nodos ofreciendo a
usuarios la misma visión que un SF centralizado
– Permite que usuarios compartan información de forma transparente
– Misma visión desde cualquier máquina
• Numerosos aspectos similaresa SF centralizados
• Algunos aspectos específicos como por ejemplo:
– Traducción de nombres involucra a varios nodos
– Uso de cache afecta a múltiples nodos
– Aspectos de tolerancia a fallos
Sistemas Operativos Distribuidos
3
Fernando Pérez Costoya
Características deseables del SFD
• Aplicables las correspondientes al SD global:
– Transparencia, fiabilidad, rendimiento,escalabilidad, seguridad.
• Específicamente:
–
–
–
–
Espacio de nombres único
Soporte de migración de ficheros
Soporte para replicación
Capacidad para operar en sistemas “desconectados”
• Una red “partida” o un cliente que usa un sistema portátil
– Soporte de heterogeneidad en hardware y S.O.
– Integración de nuevos esquemas de almacenamiento (SAN)
– Paralelismo en acceso a datos de unfichero
Sistemas Operativos Distribuidos
4
Fernando Pérez Costoya
Estructura del SFD
• Cliente (nodo con aplicación) – Servidor (nodo con disco)
• ¿Cómo repartir funcionalidad de SF entre cliente y servidor?
• Arquitectura “tradicional”
– servidor: proporciona acceso a ficheros almacenados en sus discos
– cliente: pasarela entre aplicación y servidor
• con más o menos funcionalidad(clientes fat o thin)
• Arquitectura “alternativa”
– servidor: proporciona acceso a bloques de disco
– cliente: toda la funcionalidad del SF
– Utilizada en sistemas de ficheros para clusters
• se estudiará más adelante
Sistemas Operativos Distribuidos
5
Fernando Pérez Costoya
Arquitectura del SFD
• Solución basada en arquitectura tradicional parece sencilla:
– SF convencional enservidor
– Exporta servicios locales para abrir, cerrar, leer, escribir, cerrojos,...
• ¿Asunto zanjado? No todo está resuelto:
– Resolución de nombre de fichero:
• Cliente y varios servidores involucrados. ¿Cómo se reparten trabajo?
– Acceso a los datos:
• ¿se transfiere sólo lo pedido? ¿más cantidad? ¿todo el fichero?
• Uso de cache en el cliente. Coherencia entre múltiples caches.
–Gestión de cerrojos:
• ¿Qué hacer si se cae un cliente en posesión de un cerrojo?
– Otros: migración, replicación, heterogeneidad, ...
Sistemas Operativos Distribuidos
6
Fernando Pérez Costoya
Operaciones sobre los ficheros
• Apertura del fichero: Traducción del nombre
– Gestión de nombres
• Lecturas/escrituras sobre el fichero
– Acceso a datos
– Uso de cache
•Establecimiento de cerrojos sobre el fichero
Sistemas Operativos Distribuidos
7
Fernando Pérez Costoya
Gestión de nombres
• Similar a SF convencionales:
– Espacio de nombres jerárquico basado en directorios
– Esquema de nombres con dos niveles:
• Nombres de usuario (pathname) y Nombres internos
– Directorio: Relaciona nombres de usuario con internos
• Nombres de usuario
– Debenproporcionar transparencia de la posición
• Nombre no debe incluir identificación del nodo donde está
triqui.fi.upm.es:/home/fichero.txt
• Nombres internos
– Identificador único de fichero (UFID) utilizado por el sistema
• Puede ser una extensión del usado en SF convencionales.
• Por ejemplo:
id. de máquina + id. disco + id. partición + id. inodo
Sistemas Operativos Distribuidos
8...
Regístrate para leer el documento completo.