wtorek, 31 sierpnia 2010

ISM - NAS - Network Attached Storage

Po dokładnym opisaniu środowiska SAN i protokołu FC, przyszła kolej na następny sposób na dostęp do danych - NAS. Zanim jednak skupimy się na samym NASie trochę teorii i historii na temat plików i dostępu do nich w środowisku sieciowym.

Plik (file) jest to zorganizowana struktura do przechowywania danych, widziana z poziomu systemu operacyjnego jako całość.

Współdzielenie plików (file sharing) to przechowywanie i dostęp do plików poprzez sieć. Przykładem współdzielenia plików jest np protokół FTP , gdzie transfer plików odbywa się poprzez system o architekturze klient/serwer, innym przykładem jest DFS ( Distributed file system ).
Typowym modelem współdzielenia plików jest wykorzystanie do tego specjalnych protokołów działających także w architekturze klient/serwer. Dwoma najbardziej znanymi protokołami do zdalnego dostępu i współdzielenia plików są NFS (dla systemów Unixowych) i CIFS ( dla systemów Windowsowych).


Jak zmieniały się metody współdzielenia plików:

Na początku komputery nie były połączone i wymiana plików odbywała się na dyskietkach lub płytach cd. Kolejny etap to połączenie komputerów w sieć i przesyłanie sobie plików, potem rozwiązania wykorzystujące serwery plików. Obecnie nie ma potrzeby angażowania dodatkowych hostów pełniących rolę dedykowanych serwerów plikowych, pliki można pobierać bezpośrednio z macierzy NASowych.

NAS ( Network Attached Storage ) - jest to urządzenie ( macierz ) podpięte do sieci (LAN) które jest w stanie współdzielić znajdujące się na nim pliki. Użycie NASa umożliwia zrezygnowanie z dodatkowej warstwy dedykowanych serwerów plików. NASy używają protokołu TCP/IP do przesyłania danych przez sieć, oraz protokołów CIFS i NFS dla zdalnego dostępu do plików. Kolejną zaletą używania NASów jest bardzo łatwa skalowalność takiego środowiska.
Urządzenia NAS mają zwykle wbudowane swoje własne systemy operacyjne zoptymalizowane do wymiany i udostępniania plików.


Zalety NASa:
  • dostęp do danych niezależny  od użytego OSa na systemie klienckim
  • większa wydajność
  • większa skalowalność
  • scentralizowane zasoby storage
  • ułatwione zarządzanie
  • wyższa niezawodność i dostępność
  • większa kontrola nad dostępem do danych

Składniki systemu NAS:
  • NAS head ( zawiera CPU i pamięć)
  • Karty sieciowe (NIC)
  • System operacyjny zarządzający NASem
  • Protokoły NFS I CIFS
  • Protokoły do zarządzania dyskami ( np: ATA, SCSI, FC)

Protokoły do współdzielenia plików:

NFS (Network File System):

Jest protokołem działającym w architekturze klient/serwer i pozwala jednemu hostowi przeglądać, przechowywac i zmieniąc pliki znajdujące się w zdalnej lokacji tak jakby były przechowywane na nim. Używa RPC (Remote Procedure Calls ) do komunikacji między hostami.
Wymaga zainstalowanego NFS klienta.

CIFS (Common Internet File System):

Podobniej jak NFS działa w architekturze klient/serwer , stanowi rozbudowaną wersję protokołu SMB ( Server Messaage Block). Wykorzystuje blokady (lock) do zapobiegania nadpisywania plików przy jednoczesnym używaniu go przez wiele osób. Schemat nazwenictwa w CIFS: \\server\share


Przepływ danych w środowisku NAS:

Z punktu widzenia klienta NAS:

Aplikacja ---> OS ---> I/O Redirect --->NFS/CIFS --->TCP/IP Stack ---> NIC
Karta sieciowa wysyła dane poprzez sieć IP

Z punktu widzenia NAS device:

Dane zostają odebrane przez kartę sieciową
NIC ---> TCP/IP Stack ---> NFS/CIFS ---> NAS OS ---> Network Protocol ---> Storage Interface
Następnie Storage Interface wysyła dane blokowo do macierzy.


NAS Implementations:

NAS może być zaimplementowane na dwa sposoby: zintegrowany i gateway

NAS zintegrowany zawiera w sobie zarówno NAS head jak i macierz na której dane są przechowywane , obydwa te komponenty mieszczą się w pojedyńczej obudowie i są zarządzane przez jedno oprogramowanie.

W gateway NASie - macierz i NAS head są niezależne , a między nimi znajduje się sieć FC SAN w której dane są przesyłane blokowo. Zarządzanie tego typu rozwiązaniem jest zwykle bardziej skomplikowane ( osobne systemy dla head i macierzy). Zaletą gateway NASów jest ich większa i łatwiejsza skalowalność w porównaniu do NASów zintegrowanych.

Integrated NAS:
Ten typ NASa może być bezpośrednio podpięty do sieci IP. To jak konkretne urządzenia są popodpinane w samym NASie zależy od jego modelu - NAS head może być podłączona do storage za pomocą wewnętrznych połączeń SCSI lub bezpośrednio do FC HBA.

Gateway NAS:
Front end w gateway NASie wygląda podobnie jak w rozwiązaniach zintegrowanych, backend to sieć SAN. Implementując tego rodzaju NASa należy przestrzegać standardowych praktyk stostowanych przy udostępnianiu danych poprzez SAN takich jak multipathing , niezależne fabrice i równomierne rozłożenie ruchu po wszystkich ścieżkach. Przed wdrożeniem gateway NASa dobrze jest przeanalizować istniejącą konfigurację SANa i rodzaj danych jakie w nim się przesyła. Rekomenduje się rozdzielić dysku używane w SANie od tych które będą używane przez NASa.





NAS mamy już z głowy ale w kolejnym rozdziale wróci nasz dobry znajomy sieć SANowska.
Tym razem jednak dane nie będą przesyłane światłowodami ale poprzez sieć IP ( tak jak NAS )
Mówiąc konkretnie przyjrzymy się takim rozwiązaniom jak iSCSI , FCOE i FCIP



3 komentarze:

  1. "większa wydajność
    większa skalowalność
    wyższa niezawodność i dostępność
    większa kontrola nad dostępem do danych"
    W porównaniu z czym?

    OdpowiedzUsuń
  2. Dobry komentarz :D
    Brzmi to trochę śmiesznie bez napisania w odniesieniu do czego wyliczamy zalety NASów.

    Te porównania dotyczą trzymania danych/plików na centralnej macierzy NAS w porównaniu do przechowywania ich na lokalnych komputerach każdego z użytkowników.

    Większa wydajność:
    Macierz NAS ma dużo większą wydajność niż pojedynczy dysk w laptopie/komputerze użytkownika.

    Większa skalowalność:
    Dużo łatwiej dodać/odjąć zasoby dyskowe pojedynczemu użytkownikowi, gdy są one składowane centralnie niż w przypadku gdy fizycznie są na dysku wewnętrznym jego komputera

    Wyższa niezawodność i dostępność:
    Macierze są lepiej zabezpieczone przed awariami niż dyski i komputery (używane struktury RAID, redundatntne komponenty itd...)

    Większa kontrola:
    Dużo łatwiej możemy (jako administrator danych) zarządzać nimi gdy są one przechowywane centralnie niż u każdego z pracowników osobno. Nadawanie/odbieranie uprawnień, brak ryzyka utraty danych na wypadek np: kradzieży laptopa itd...

    OdpowiedzUsuń
  3. Od razu teraz to wygląda lepiej :)

    Pozdrawiam

    OdpowiedzUsuń