Opengfs Lustre I Możliwości Ich Działania W Obrębie Klastra Openssi

Opengfs Lustre I Możliwości Ich Działania W Obrębie Klastra Openssi

OpenGFS Lustre i mo»liwo±ci ich dziaªania w obr¦bie klastra OpenSSI Projekt z przedmiotu RSO.A Paweª Sªawomir Kłósek [email protected] 16 czerwca 2005 Spis tre±ci 1 OpenGFS 1 1.1 Macierz dyskowa . 1 1.2 Struktury danych . 1 1.3 Zabezpieczenia przed zagro»eniami nadpisywania plików (locks) . 2 1.4 Zabezpieczenia przed awariami . 2 2 Lustre 1.0 3 2.1 Komponenty systemu . 3 2.2 Granulacja blokad na pliki . 3 2.3 Serwer danych . 4 3 OpenSSI - Cluster File System (CFS) 4 4 Wnioski 4 1 OpenGFS OpenGFS jest systemem plików z ksi¦gowaniem, który umo»liwia współdzielenie jednego urz¡dzenia dyskowego przez kilka komputerów, w taki sposób, »e kilka kom- puterów mo»e korzysta¢ z jednego systemu plików nie nadpisuj¡c sobie wzajemnie danych. 1.1 Macierz dyskowa Współdzielenie urz¡dze« we wcze±niejszych wersjach OpenGFS mo»e si¦ odbywa¢ np. si¦ za pomoc¡ technologii Fibre Channel lub iSCSI. Jednak najwa»niejszym za- ªo»eniem tego rozwi¡zania, jest to, aby wszystkie komputery widziaªy współdzielone urz¡dzenie jako urz¡dzenie w katalogu /dev o takiej samej nazwie. Mo»na to osi¡gn¡¢ poprzez współdzielenie dowolnego urz¡dzenia dost¦pnego jako urz¡dzenie blokowe i odpowiednie zamapowanie urz¡dzenia w systemie plików /dev na ka»dym z komput- erów (odpowiednia wirtualizacja nazw w /dev). Zewn¦trzny zasób dyskowy dzielony nale»y podzieli¢ na trzy partycje 1 1 OPENGFS ´ ok. 4MB na przechowywanie informacji o macierzy (np. informacje konfigu- racyjne) ´ ok. 128MB na przechowywanie zewn¦trznego dziennika (journal) ´ reszta na przechowywanie danych dziennika wewn¦trznego 1.2 Struktury danych Dinodes (distributed inodes), s¡ jednostkami organizacji sªu»¡cymi do przechowywa- nia metadanych (czasem równie» danych je±li plik jest maªy). Ka»dy dinode zajmuje jeden blok. Dinody s¡ tworzone tylko wtedy je±li s¡ potrzebne. Plik Je±li plik jest mniejszy ni» rozmiar pliku minus 232 bajty, plik mo»na przechowa¢ w jednym dinode-zie w formacie: |meta-dane|dane z pliku| Je±li jednak plik jest wi¦kszy to dane w dinodzie s¡ przechowywane w nast¦puj¡cy sposób: |meta-dane|adres 1-go bloku danych|adres 2-go bloku danych|...| . Istnieje jeszcze trzeci format adresowania, niebezpo±redni zamiast adresów bloków z danymi mo»emy przechowywa¢ adresy do bloków z adreasami (do bloków z adresami do bloków z adresami ... ) do bloków z danymi (mo»na si¦ zagª¦bi¢ do 8 razy). Dzi¦ki tym trybom adresowania mo»emy przechowywa¢ bardzo du»e ilo±ci danych [tab 1.] Resorce groups Dane z plików umieszczane s¡ z reguªy blisko siebie w tzw. resorce block-ch, aby zmniejszy¢ liczb¦ ruchów gªowicy nad talerzami dysków. Katalogi Jest kilka metod przechowywania katalogów ´ Bezpo±rednio w dinodach bez tablicy hashuj¡cej ´ W dinodach z tablic¡ hashuj¡c¡ (hash CRC32) ´ W dinodach z adresami bloków tablicy hashuj¡cej. Warto nadmieni¢ dane na dysku s¡ przechowywane w formacie big endian. 1.3 Zabezpieczenia przed zagro»eniami nadpisywania plików (locks) W rozproszonym systemie plików na maszynach wieloprocesorowych nale»y wprowadzi¢ trzy typy blokad: ´ Mi¦dzy komputerami - je±li kilka komputerów chce skorzysta¢ z jednego bloku/pliku. ´ Mi¦dzy kilkoma procesami na jednym komputerze (wykonywana za pomoc¡ oprogramowania G-lock). ´ Wewn¡trz j¡dra systemu je±li kilka w¡tków chce skorzysta¢ z jednej struktury danych. Je±li chodzi o punkt pierwszy, to istniej¡ dwie metody zabezpieczania przed nad- pisywaniem plików jedna zcentralizowana wykonywana za pomoc¡ serwera blokad (lock server), ale wtedy oczywi±cie nie ma tolerancji na uszkodzenie wªa±nie tego serwera blokad, i rozproszona wykonywana za pomoc¡ oprogramowania OpenDLM (Open Distributed Lock Manager), przy którym s¡ z kolei problemy z wydajno±ci¡. Przy centralnym blokowaniu plików wykorzystywany jest protokół memexp, który jest podobny do protokoªu Device Memory Export Protocol (DMEP) jednak»e do 2 2 LUSTRE 1.0 transmisji informacji zamiast szyny SCSI wykorzystywana jest sie¢ lokalna przy wykorzystaniu protokoªu IP. 1.4 Zabezpieczenia przed awariami Aby zabezpieczy¢ system przed awariami spowodowanymi przez awari¦ jednego z komputerów, ka»dy komputer ma swój osobny dziennik zdarze« (journal). Dzienniki mog¡ by¢ lokalne (czyli na partycji 3) lub zewn¦trzne (czyli na partycji 2). Dzienniki s¡ po to rozdzielone, aby uszkodzony komputer nie uszkodziª innych wpisów do dziennika i aby po awarii komputera daªo si¦ szybko przeprowadzi¢ roolback). Zaªo»eniem OpenGFS jest to, »e awaria jednego z komputerów nie uszkodzi meta- danych (wi¦c struktura systemu plików nie ulegnie uszkodzeniu, jednak same dane mog¡ pozosta¢ miejscami uszkodzone). Aby zabezpieczy¢ caªy system przed awariami stosuje si¦ równie» izolowanie ¹le dziaªaj¡cych komputerów oraz ich zdalny restart, w tym celu mo»na wykorzystywa¢ watchdog-i, zdealne wyª¡czenie pr¡du przy zasilaczach programowalnych lub odci¦cie komputera od swich-a Fiber Channel. 2 Lustre 1.0 Lustre jest klastrowym systemem plików, który w odróżnieniu od OpenGFS nie bazuje na jednym komponencie na którym mo»na przechowywa¢ dane. Wedªug zaªo»e« Lus- tre ma by¢ obiektowym systemem plików, w którym obiektami s¡ dyski, komputery, pliki, katalogi itd. 2.1 Komponenty systemu System skªada si¦ z dwóch typów serwerów serwera danych i serwera meta-danych. Serwer metadanych (MDS - metadata Server) Serwer metadanych (MDS - metadata Server) Serwer meta-danych ma zadanie przechowywa¢ caª¡ struktur¦ systemu plików za wyj¡tkiem samych danych. Wedªug producenta testy wydajno±ciowe wykazaªy, »e nawet w bardzo du»ych rozwi¡zaniach jeden serwer meta-danych nie stanowi w¡skiego gardªa. Na serwerach metadanych wykorzystywany jest zmodyfikowany system plików ext3. Serwer danych (OST - Object Stograge Targets) Sªu»y do przechowywania plików (lub fragmentów plików - zale»nie od pliku). Na serwerze danych znajduje si¦ zwykªa partycja ext3 (chocia» zgodnie z dokumentacj¡ mo»e to by¢ równie» JFS, ReiserFS lub XFS). Na partycji znajduj¡ si¦ pliki o nazwach w postacinumerycznej np. „2454213” - które to s¡ numerami obiektów w systemie plików. Serwer-y LDAP Konfiguracja systemu plików mo»e by¢ przechowywana zarówno na ka»dym klien- cie, który chce skorzysta¢ z Lustre, jak równie» na pojedynczym serwerze LDAP. 2.2 Granulacja blokad na pliki Informacja o blokadach na pliki (file locks) jest utrzymywana na serwerach meta- danych. Blokady te mog¡ mie¢ różną granulacj¦ (istnienie pliku, katalog, atrybut, 3 3 OPENSSI - CLUSTER FILE SYSTEM (CFS) sektor). Dzi¦ki temu mo»na zwi¦kszy¢ wydajno±¢ - w zwykªym ext3 je±li n u»ytkown- ików chce utworzy¢ plik w katalogu /tmp, ka»dy z nich musi wykona¢ blokad¦ na /tmp, zaªo»y¢ plik i wykona¢ operacj¦ odblokownia, co mo»e by¢ niew¡tpliwie czasochªonne. W Lustre, mo»liwe jest zrobienie tego caªej tej operacji bez blokowa- nia odpowiedniego katalogu. Zabezpieczenia przed awariami Serwer meta-danych W tej wersji Lustre w sys- temie znajduje si¦ maksymalnie jeden serwer aktywny i jeden system backupowy - który przejmuje rol¦ aktywnego - gdy tylko serwer aktywny przestanie odpowiada¢. Serwer backupowy musi mie¢ mo»liwo±¢ odci¦cia zasilania lub odci¦cia serwera aktywnego od sieci, poniewa» gdyby okazaªo si¦, »e w sieci znajduj¡ si¦ dwa serwery aktywne, mogªo by to doprowadzi¢ do katastrofy. 2.3 Serwer danych System nie jest podatny na awari¦ serwerów danych, i b¦dzie po awarii b¡d¹ po odª¡czeniu serwera danych zachowywaª si¦ dalej stabilnie. Z tym, »e obiekty (pliki) przechowywane na tym serwerze przestan¡ by¢ dost¦pne. W trakcie usuwania awarii, nowe obiekty b¦d¡ tworzone na innych serwerach danych. Serwery danych mog¡ by¢ równie» redundantne, tzn. dwa serwery mog¡ by¢ podpi¦te do jednej macierzy dyskowej i po awarii jednego zawsze ten drugi mo»e pracowa¢ zamiast tego pierwszego. 3 OpenSSI - Cluster File System (CFS) W klastrze OpenSSI przyj¦to zaªo»enie, »e wszystkie zamountowane zasoby (ª¡cznie z devfs i procfs) b¦d¡ dost¦pne w formie plików - do których mo»na si¦ dosta¢ przy wykorzystaniu dowolnego komputera w sieci lokalnej. Domy±lnie w OpenSSI do speªnienia tych zaªo»e« wykorzystywany jest Cluster File System - rozwijany wª¡cznie do projektu OpenSSI. CFS jest wirtualnym systemem plików wykorzystywanym do wspódzielenia za- sobów dyskowych w klastrach OpenSSI. CFS jest przezroczysty je»eli chodzi o podmounowywanie zasobów, tzn. je±li zamountujemy obsªugiwany przez CFS fizyczny system plików (obecnie s¡ to ext2,ext3,jfs) po zamountowaniu jest on przezroczy±cie widoczny na wszystkich komputerach w klastrze. Dodatkowym wariantem CFS-a jest High Availability - Cluster File Sys- tem (HA-CFS). HA-CFS jest systemem plików opartym o macierz dyskow¡, i przy awarii jednego z komputerów podª¡czonych do macierzy macierz automatycznie prze- jmowana jest przez inny podª¡czony do niej komputer. Jest to rozwi¡zanie du»o prost- sze od OpenGFS, gdzie wszystkie komputery podª¡czone do macierzy mogªy z niej jednocze±nie korzysta¢. To rozwi¡zanie doskonale mo»e si¦ sprawdza¢ w klastrach którym głównym przeznaczeniem nie jest szybko±¢ dost¦pu do danych ale np. moc obliczeniowa - a dost¦p do wspólnych danych jest jedynie dodatkiem. Klaster OpenSSI mo»e by¢ jednocze±nie klasterm przechowuj¡cym dane Lustre'a jednak jedynym rozs¡dnym rozwi¡zaniem przy takiej konfiguracji jest korzystanie z lokalnych nie udost¦pnianych przez sie¢ przez CFS systemów plików do prze- chowywania obiektów Lustre'a. Je±li chodzi o korzystanie z zasobów Lustre'a. Mountowanie jest propagowane na wszystkie komputery w klastrze. Mo»na nadmieni¢ równie», »e caªy OpenSSI jest 4 LITERATURA dobrze zintegorowany z Lustre'm np. przy migracji procesów blokady na plikach przenoszone. Na klastrze OpenSSI da si¦ równie» korzysta¢ z danych pochodz¡cych z OpenGFS i Sistina GFS. W tej chwili da si¦ przeprowadzi¢ mountowanie zasobów OpenGFS jako dowoln¡ partycj¦ w systemie. 4 Wnioski Opisane przeze mnie klastrowe systemy plików mo»na podzieli¢ na w zasadzie na 2 kategorie - z centralnym punktem przechowywania informacji OpenGFS i HA-CFS oraz CFS (w CFS mimo, »e dane mog¡ by¢ mountowane na wielu komputerach w klastrze to jednak dla ka»dego z tych zasobów to dane s¡ przechowywane na jednym serwerze z ewentualnym serwerem awaryjnym).

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    5 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us