miniatura|Una solució típica d'alta disponibilitat en clúster on es pot utilitzar l'OpenSAF. En una solució com aquesta, on els components abstreuen el programari del maquinari que proporciona serveis, l'Availability Management Framework (AMF) constitueix el nucli del middleware SAF. És l'AMF qui manté l'alta disponibilitat al clúster i reacciona als errors. El comportament en temps d'execució de l'AMF es basa principalment en un fitxer de configuració (anomenat configuració de l'AMF) definit pels integradors de sistemes que dissenyen la solució d'alta disponibilitat. Un sistema de fitxers en clúster (CFS) és un sistema de fitxers que es comparteix muntant-se simultàniament en diversos servidors. Hi ha diversos enfocaments per a l'agrupació en clústers, la majoria dels quals no utilitzen un sistema de fitxers en clúster (només emmagatzematge connectat directament per a cada node). Els sistemes de fitxers en clúster poden proporcionar característiques com ara l'adreçament independent de la ubicació i la redundància, que milloren la fiabilitat o redueixen la complexitat de les altres parts del clúster. Els sistemes de fitxers paral·lels són un tipus de sistema de fitxers en clúster que distribueix dades a través de múltiples nodes d'emmagatzematge, generalment per redundància o rendiment.

Sistema de fitxers de disc compartit Un sistema de fitxers de disc compartit utilitza una xarxa d'àrea d'emmagatzematge (SAN) per permetre que diversos ordinadors obtinguin accés directe al disc a nivell de bloc. El control d'accés i la traducció de les operacions a nivell de fitxer que utilitzen les aplicacions a les operacions a nivell de bloc que utilitza la SAN han de tenir lloc al node client. El tipus més comú de sistema de fitxers en clúster, el sistema de fitxers de disc compartitafegint mecanismes per al control de la concurrènciaproporciona una vista coherent i serialitzable del sistema de fitxers, evitant la corrupció i la pèrdua de dades no desitjada fins i tot quan diversos clients intenten accedir als mateixos fitxers alhora. Els sistemes de fitxers de disc compartit solen utilitzar algun tipus de mecanisme de tanca per evitar la corrupció de dades en cas d'errors de node, ja que un dispositiu sense tanca pot causar corrupció de dades si perd la comunicació amb els seus nodes germans i intenta accedir a la mateixa informació a la qual accedeixen altres nodes.

La xarxa d'àrea d'emmagatzematge subjacent pot utilitzar qualsevol dels diversos protocols a nivell de bloc, com ara SCSI, iSCSI, HyperSCSI, ATA sobre Ethernet (AoE), Fibre Channel, dispositiu de bloc de xarxa i InfiniBand.

Hi ha diferents enfocaments arquitectònics per a un sistema de fitxers de disc compartit. Alguns distribueixen informació de fitxers entre tots els servidors d'un clúster (totalment distribuït).

Sistemes de fitxers distribuïts Els sistemes de fitxers distribuïts no comparteixen l'accés a nivell de bloc al mateix emmagatzematge, sinó que utilitzen un protocol de xarxa. Aquests es coneixen comunament com a sistemes de fitxers de xarxa, tot i que no són els únics sistemes de fitxers que utilitzen la xarxa per enviar dades. Els sistemes de fitxers distribuïts poden restringir l'accés al sistema de fitxers en funció de les llistes d'accés o de les capacitats tant dels servidors com dels clients, depenent de com estigui dissenyat el protocol.

La diferència entre un sistema de fitxers distribuït i un magatzem de dades distribuït és que un sistema de fitxers distribuït permet accedir als fitxers utilitzant les mateixes interfícies i semàntica que els fitxers locals.per exemple, muntar/desmuntar, llistar directoris, lectura/escriptura en límits de bytes, model de permisos natiu del sistema. Els magatzems de dades distribuïts, en canvi, requereixen l'ús d'una API o biblioteca diferent i tenen una semàntica diferent (molt sovint la d'una base de dades).

Objectius de disseny Els sistemes de fitxers distribuïts poden aspirar a la "transparència" en diversos aspectes. És a dir, pretenen ser "invisibles" per als programes client, que "veuen" un sistema similar a un sistema de fitxers local. Darrere de les escenes, el sistema de fitxers distribuït s'encarrega de localitzar fitxers, transportar dades i possiblement proporcionar altres funcions que s'enumeren a continuació.

Transparència d'accés : els clients no saben que els fitxers es distribueixen i hi poden accedir de la mateixa manera que s'accedeix als fitxers locals. Transparència d'ubicació : existeix un espai de noms coherent que abasta tant els fitxers locals com els remots. El nom d'un fitxer no indica la seva ubicació. Transparència de concurrència : tots els clients tenen la mateixa vista de l'estat del sistema de fitxers. Això significa que si un procés està modificant un fitxer, qualsevol altre procés del mateix sistema o sistemes remots que accedeixi als fitxers veurà les modificacions de manera coherent. Transparència en cas d'errors : el client i els programes client haurien de funcionar correctament després d'un error del servidor. Heterogeneïtat : el servei d'arxius s'ha de proporcionar a través de diferents plataformes de maquinari i sistemes operatius. Escalabilitat : el sistema de fitxers hauria de funcionar bé en entorns petits (1 màquina, una dotzena de màquines) i també escalar-se amb elegància a entorns més grans (des de centenars fins a desenes de milers de sistemes). Transparència de la replicació : els clients no haurien de ser conscients de la replicació de fitxers realitzada a través de diversos servidors per tal de donar suport a l'escalabilitat. Transparència de migració : els fitxers s'han de poder moure entre diferents servidors sense que el client ho sàpiga.

Història El sistema de temps compartit incompatible utilitzava dispositius virtuals per a l'accés transparent al sistema de fitxers entre màquines a la dècada del 1960. A la dècada del 1970 es van desenvolupar més servidors d'arxius. El 1976, Digital Equipment Corporation va crear el File Access Listener (FAL), una implementació del Data Access Protocol com a part de DECnet Phase II, que es va convertir en el primer sistema de fitxers de xarxa àmpliament utilitzat. El 1984, Sun Microsystems va crear el sistema de fitxers anomenat " Network File System " (NFS), que es va convertir en el primer sistema de fitxers de xarxa basat en el protocol d'Internet àmpliament utilitzat. Altres sistemes de fitxers de xarxa destacats són Andrew File System (AFS), Apple Filing Protocol (AFP), NetWare Core Protocol (NCP) i Server Message Block (SMB), també conegut com a Common Internet File System (CIFS).

El 1986, IBM va anunciar el suport de client i servidor per a l'arquitectura de gestió de dades distribuïdes (DDM) per als ordinadors centrals System/36, System/38 i IBM que executaven CICS. A això va seguir el suport per a IBM Personal Computer, AS/400, ordinadors centrals IBM sota els sistemes operatius MVS i VSE, i FlexOS. DDM també es va convertir en la base de l'arquitectura de bases de dades relacionals distribuïdes, també coneguda com a DRDA.

Hi ha molts protocols de xarxa peer-to-peer per a sistemes de fitxers distribuïts de codi obert per a sistemes de fitxers en clúster de codi tancat o al núvol, per exemple: 9P, AFS, Coda, CIFS/SMB, DCE/DFS, WekaFS, Lustre, PanFS, Google File System, Mnet, Chord Project.

Consideracions de disseny Evitant el punt únic de fallada La fallada del maquinari del disc o d'un node d'emmagatzematge determinat en un clúster pot crear un únic punt de fallada que pot provocar pèrdua de dades o indisponibilitat. La tolerància a fallades i l'alta disponibilitat es poden proporcionar mitjançant la replicació de dades d'un tipus o altre, de manera que les dades romanguin intactes i disponibles malgrat la fallada de qualsevol peça de l'equip. Per exemple, vegeu les llistes de sistemes de fitxers distribuïts tolerants a errors i sistemes de fitxers distribuïts paral·lels tolerants a errors.

Rendiment Una mesura habitual del rendiment d'un sistema de fitxers en clúster és la quantitat de temps necessària per satisfer les sol·licituds de servei. En els sistemes convencionals, aquest temps consisteix en un temps d'accés al disc i una petita quantitat de temps de processament de la CPU. Però en un sistema de fitxers en clúster, un accés remot té una sobrecàrrega addicional a causa de l'estructura distribuïda. Això inclou el temps per lliurar la sol·licitud a un servidor, el temps per lliurar la resposta al client i, per a cada direcció, una sobrecàrrega de CPU per executar el programari de protocol de comunicació.

Concurrència El control de concurrència esdevé un problema quan més d'una persona o client accedeix al mateix fitxer o bloc i el vol actualitzar. Per tant, les actualitzacions del fitxer des d'un client no haurien d'interferir amb l'accés i les actualitzacions d'altres clients. Aquest problema és més complex amb els sistemes de fitxers a causa de les escriptures superposades concurrents, on diferents escriptors escriuen simultàniament a regions superposades del fitxer. Aquest problema normalment es gestiona mitjançant control de concurrència o bloqueig, que pot estar integrat al sistema de fitxers o proporcionat per un protocol addicional.

Història Els mainframes d'IBM dels anys setanta podien compartir discos físics i sistemes d'arxius si cada màquina tingués la seva pròpia connexió de canal a les unitats de control de les unitats. A la dècada del 1980, els clústers TOPS-20 i OpenVMS (VAX/ALPHA/IA64) de Digital Equipment Corporation incloïen sistemes de fitxers de disc compartits.

Referències

Categoria:Informàtica Categoria:Emmagatzematge digital