Clusterix Data Management System (CDMS) Łukasz Kuczyński lkucz@icis.pcz.pl Politechnika Czestochowska Instytut Informatyki Teoretycznej i Stosowanej
Cechy systemu przeźroczysty dostęp do danych wysoki poziom bezpieczeństwa przesyłanych i składowanych danych niezawodność - przejmowanie kontroli przez zapasowe instancje brokera obsługa list kontroli dostępu możliwość kompresji składowanych danych optymalizacja dostępu do danych równoważenie obciążenia
Przezroczysty dostęp do danych Podsystem Transportowy został zaimplementowany jako warstwa pomiędzy aplikacjami użytkownika a systemem CDMS. Takie podejście pozwala na: ukrycie niskopoziomowych mechanizmów dostępu do danych możliwość dodawania nowej funkcjonalności bez konieczności wprowadzania zmian w aplikacjach klienckich implementację inteligentnych metod dostępu do danych
Bezpieczeństwo danych W celu zapewnienia wysokiego poziomu bezpieczeństwa przesyłanych i składowanych wykorzystane zostały następujące mechanizmy: uwierzytelniania i autoryzacji (w oparciu o GSI), możliwość szyfrowania danych (opcjonalnie), delegacja uprawnień (single--sign--on) Aby zwiększyć stopień bezpieczeństwa składowanych danych zastosowano: listy kontroli dostępu (ACL), transformacje nazw przechowywanych plików (MD5)
Budowa systemu
Scenariusz kopiowania danych (1)
Scenariusz kopiowania danych (2)
Scenariusz kopiowania danych (3)
Scenariusz kopiowania danych (4)
Scenariusz kopiowania danych (5)
Scenariusz kopiowania danych (6)
Interface użytkownika (1) Dostęp do zasobów systemu jest możliwy poprzez interfejs WebService i protokół SOAP. Rozwiązanie takie pozwala na uniezależnienie aplikacji klienckich od języka programowania oraz systemu operacyjnego. Przykładowymi aplikacjami wykorzystującymi interface systemu CDMS są: pakiet narzędzi administracyjnych zaimplementowany w jezyku C dla platformy Linux/Unix portlet GridSphere zaimplementowany w Javie.
Interface użytkownika (2) Interface użytkownika pozwala na: tworzenie katalogów usuwanie plików / katalogów zmianę nazwy wyświetlanie listy plików / katalogów transfer danych pomiędzy komputerem klienta a CDMS wewnętrzne kopiowanie danych zarządzanie użytkownikami i grupami zarządzanie systemem udziałów (quota)
Komendy użytkownika końcowego cdms_adduser - dodawanie użytkowników cdms_mkdir - tworzenie katalogów cdms_cp - kopiowanie danych cdms_rm - usuwanie plików i katalogów cdms_lstree - wyświetlanie drzewa katalogów cdms_find - wyszukiwanie plików cdms_info - informacje o stanie CDMS cdms_ln - tworzenie dowiązań symbolicznych cdms_quota - zarządzania systemem udziałów
Tworzenie konta użytkownika
Uprawnienia plików i kotalogów (1) Schemat uprawnień systemu CDMS składa sie z czterech sekcji. Pierwsza z nich specyfikuje rodzaj zasobu: d - katalog f - plik l - link symboliczny Pozostałe trzy sekcje to uprawnienia właściciela, grupy oraz pozostałych użytkowników systemu.
Uprawnienia plików i kotalogów (2) System posiada zaimplementowane następujące uprawnienia: r - odczyt w - zapis (dotyczy zawartości pliku) c - tworzenie nowych obiektów ( dotyczy tylko katalogów) e - kasowanie m - modyfikacja nazwy/atrybutów S - super uprawnienia
Tworzenie katalogów
Transfer danych
Wyświetlanie drzewa katalogów
Wyszukiwanie danych
Usuwanie danych
Sprawdzanie zarejestrowanych SE
Integracja CDMS z brokerem GRMS (1) Przykładowy opis zadania z wykorzystaniem protokołu gsiftp <grmsjob appid="task"> <simplejob> <executable type="single" count="1"> <file name="exec-file" type="in"> <url>gsiftp://access.pcss.clusterix.pl/~/test.sh</url> </file> <stdout> <url>gsiftp://access.pcss.clusterix.pl/~/stdout</url> </stdout> </executable> </simplejob> </grmsjob>
Integracja CDMS z brokerem GRMS (2) Przykładowy opis zadania z wykorzystaniem CDMS <grmsjob appid="task"> <simplejob> <executable type="single" count="1"> <file name="exec-file" type="in"> <url>cdms:///test.sh</url> </file> <stdout> <url>cdms:///stdout</url> </stdout> </executable> </simplejob> </grmsjob>