Co to jest grid?

Transkrypt

Co to jest grid?
Gridy
Janina Mincer-Daszkiewicz
Systemy rozproszone
MSUI, II rok
Materiały i rysunki zaczerpnięto z
następujących źródeł
1. Ian Foster, What is the grid? A three point checklist, 2002.
2. Susan Schwarz, An overview of grid computing, prezentacja
3. Ed Seidel, Introduction to grid computing, prezentacja
4. Rajkumar Buyya, Grid Computing, prezentacja, www.gridbus.org
5. Ian Foster, strona domowa, www-fp.mcs.anl.gov/~foster/
6. Strona domowa projektu Globus, www.globus.org
7. Prace Fostera, www.globus.org/research/papers.html#OGSA
8. Inne strony: www.grid.org, www.gridcomputing.com,
www.gridforum.org
Co to jest grid?
• Grid obliczeniowy to infrastruktura sprzętowa i programowa,
która w sposób niezawodny, spójny, rozproszony i tani zapewnia
dostęp do zasobów obliczeniowych.
• Grid zapewnia ściśle kontrolowane współdzielenie zasobów i
rozwiązywanie problemów w dynamicznych organizacjach
wirtualnych, w skład których wchodzi wiele różnych instytucji.
To właśnie precyzyjnie zdefiniowane reguły współdzielenia (kto,
co, pod jakimi warunkami) określają zbiór jednostek i instytucji,
które tworzą wirtualną organizację.
• Współdzielenie nie dotyczy prostej wymiany plików, lecz raczej
bezpośredniego dostępu do komputerów, oprogramowania,
danych i innych zasobów.
• Wspólna infrastruktura i wymiana jest możliwa dzięki
standardowym protokołom
Grid jest systemem, który ...
• koordynuje dostęp do zasobów, które nie podlegają centralnej
kontroli ...
(grid integruje i steruje zasobami i użytkownikami, którzy istnieją w różnych
domenach, rozwiązując problemy bezpieczeństwa, członkostwa, rozliczania
itp., które pojawiają się w takich okolicznościach; wpp mamy do czynienia
z systemem lokalnego zarządzania)
• ... przy użyciu standardowych, otwartych, protokołów i
interfejsów ogólnego przeznaczenia ...
(gridy buduje się z zastosowaniem ogólnych protokołów, rozwiązujących
problemy autentykacji, autoryzacji, lokalizowania zasobów, dostępu do
zasobów; standardowych i otwartych; wpp mamy system ukierunkowany na
konkretne zastosowanie)
• ... w celu dostarczenia usługi o niebanalnej jakości
(jakość może dotyczyć czasu odpowiedzi, przepustowości, bezpieczeństwa,
wspólnego przydziału zasobów różnych typów zgodnie z żądaniami użytk.)
Co zatem NIE JEST gridem, a co JEST?
• Systemy takie jak Sun Grid Engine, Platform Load Sharing
Facility, Veridian Portable Batch System po zainstalowaniu na
komputerze równoległym lub sieci lokalnej zapewniają wysoką
jakość usługi – nie są to gridy, gdyż posiadają pełną wiedzę o
stanie systemu i żądań użytkowników oraz całkowicie nimi sterują
• Web nie jest (jeszcze) gridem – posługuje się co prawda
otwartymi i standardowymi protokołami, ale nie koordynuje
dostępu do zasobów na tyle, by zapewnić pożądaną jakość usług
• Przykłady (prawie) gridów: wielowęzłowe procesy szeregujące
jak Platform MultiCluster; rozproszone systemy obliczeniowe jak
Condor, Entropia, UnitedDevices; systemy P2P jak Gnutella;
rozproszona instalacja Storage Resource Broker (wspiera
rozproszony dostęp do zasobów)
• Znakomita analogia: Electric Power Grid
Ewolucja, nie rewolucja
Grid można postrzegać jako rozwiązanie, które wyrosło z
wielu innych, znanych i popularnych, w drodze ewolucji:
•
•
•
•
•
•
•
•
Jak Web, gridy ukrywają złożoność
Inaczej niż Web, który głównie wspiera komunikację, gridy umożliwiają pełną
współpracę przy realizacji wspólnych celów biznesowych
Jak P2P, obliczenia gridowe umożliwiają użytkownikom współdzielenie
plików
Inaczej niż P2P, gridy wspierają współdzielenie na zasadzie wielu-do-wielu,
nie tylko plików, ale także innych zasobów
Jak klastry i rozproszone obliczenia, gridy łączą zasoby obliczeniowe
Inaczej iż klastry i rozproszone obliczenia, które wymagają fizycznej
bliskości i jednorodnego środowiska operacyjnego, gridy mogą być
rozproszone geograficznie i niejednorodne
Jak technologie wirtualizacji, gridy wspierają wirtualizację zasobów IT
Inaczej niż technologie wirtualizacji, które wirtualizują pojedynczy system,
gridy wirtualizują rozrzucone zasoby IT
Gridy na świecie
Cardiff/UK
Portsmoth/UK
Manchester, UK
Cambridge, UK
TI-Tech/Tokyo
ETL/Tsukuba
AIST/Tsukuba
ANL/Chicago
USC-ISC/LA
UTK/Tennessee
UVa/Virginia
Dartmouth/NH
BU/Boston
UCSD/San Diego
Santiago/Chile
EUROPE:
ZIB/Germany
PC2/Germany
AEI/Germany
Lecce/Italy
CNR/Italy
Calabria/Italy
Pozman/Poland
Lund/Sweden
CERN/Swiss
CUNI/Czech R.
Vrije: Netherlands
Kasetsart/Bangkok
Singapore
U. Of Melbourne
Monash U.
VPAC/Melbourne
U. Of Sydney
Przykłady gridów
• GridLab Testbed
– Dziesięć maszyn w Europie dla deweloperów narzędzi gridowych
• European Union Data Grid
– grid do zastosowań w fizyce wysokich energii, naukach środowiskowych,
bioinformatyce (www.eu-datagrid.org)
• Access Grid
– Zasoby multimedialne oraz interfejsy do środowisk wizualizacyjnych i usług
gridowych (www.accessgrid.org), używany w ponad 150 instytucjach na
świecie
• NFS PACI Grid
• TeraGrid (www.teragrid.org)
– Łączy główne centra akademickie w USA, na potrzeby otwartych badań
naukowych
• Information Power Grid (www.ipg.nasa.gov)
– Wysokiej wydajności grid obliczeniowy NASA
Zasoby Teragrida
• Argonne National Lab (198 procesorów)
• Cal Tech (64 procesory)
• NCSA (512 procesorów)
• Pittsburg Supercomputing Center (3000
procesorów)
• San Diego Supercomputing Center (500
procesorów)
NSF PACI Grid
Access Grid
NorduGrid
Korzyści z obliczeń gridowych
• Użycie zasobów rozproszonych po całym świecie
– Dostęp do większej mocy obliczeniowej
– Lepszy dostęp do danych
– Użycie nadmiarowych cykli
• Obliczenia na nowym poziomie złożoności i nowej skali
• Lepsza współpraca wirtualnych organizacji (grup organizacji
wykorzystujących grida do współdzielenia zasobów)
Stan bieżący
• Dziesiątki projektów gridowych do obliczeń naukowych i
technicznych w akademickich środowiskach badawczych
• Porozumienie w kwestii kluczowych pojęć i technologii (Global
Grid Forum)
• Open source Globus Toolkit – standard głównych protokołów i
usług
• Dużo pieniędzy idzie na różnego rodzaju projekty gridowe
• Gwałtownie rośnie zainteresowanie biznesu
• Dalsza potrzeba rozwijania standardów udostępniania usług
gridowych
• Wymaga znacznego szkolenia użytkowników
Przygotowanie programu do wykonania
na gridzie
• Mnóstwo pracy z przygotowaniem programu
• trzeba zaadoptować nowe algorytmy do obliczeń
równoległych
• trzeba zmienić interfejs użytkownika
• Trzeba budować program na innej architekturze
• Trzeba przesłać program i dane na różne komputery
• Kwestie bezpieczeństwa i licencji
• Wymaga biegłości w administrowaniu
• W większości oparta na systemach uniksowych
Jak przebiega wykonanie programu na gridzie
• Użytkownik dostarcza żądanie poprzez GUI
• program
• system operacyjny i inne wymagania
• dane wejściowe
• Grid odnajduje i przydziela zasoby w celu spełnienia
żądania
• Grid monitoruje realizację żądania
• przenosi zadanie, gdy zasoby staną się niedostępne
lub ulegną awarii
• Grid zawiadamia użytkownika, gdy wyniki są gotowe
Warstwy oprogramowania
Przeglądarka lub okno shellowe
(interfejs użytkownika)
Klient Globus na stacji roboczej użytkownika (dostarcz zadanie)
Serwer Globus na węźle Master
(zarządca zadań)
Zarządcy kolejek i planiści na węźle Master
Programy wykonywane na klastrach grida
Rozwój gridowych standardów
Managed shared
virtual systems
Research
Open Grid
Services Arch
Web services, etc.
Internet
standards
Custom
solutions
1990
Real standards
Multiple implementations
Globus Toolkit
Defacto standard
Single implementation
1995
2000
2005
Slide courtesy of Ian Foster, Argonne National Labs
2010
Przykład usługi gridowej
1a. Request to Registry
for sources of data
about “x”
1b. Registry
responds with
Factory handle
SOAP/HTTP
Registry
service creation
API interactions
2a. Request to Factory for access
to database
Factory
Client
2c. Factory returns
handle of GDS to
client
3a. Client queries GDS with
XPath, SQL, etc
3c. Results of query returned to
client as XML
2b. Factory creates
GridDataService to manage
access
Grid Data
Service
XML /
Relationa
l
database
3b. GDS interacts with database
Główne usługi gridowe
• Bezpieczeństwo
• autentykacja: weryfikowanie tożsamości użytkownika
• autoryzacja: ustalanie i wymuszanie praw i przywilejów
użytkownika
• bezpieczeństwo grida: dostęp poprzez pojedynczy punkt
autentykacji ze stacji roboczej użytkownika
• Jednolite nazewnictwo:
• wymagane w celu przeroczystego dostępu do zasobów
niezależnie od ich położenia
• musi być unikatowe w całym gridzie
• nie należy obarczać użytkowników szczegółami dostępu do
zasobów
Usługi informacyjne
• Information and Data directory services
• dostęp do danych i informacji w całym gridzie
• standardowe metody dostępu do informacji o
obciążeniu procesora, szerokości pasma w sieci,
składowych aplikacji
• Wykrywanie i udostępnianie zasobów
• jak usługa siebie opisuje?
• jak się reklamuje? jak informuje gridowych brokerów
o swoim istnieniu?
• jak znaleźć usługę podają zbiór jej własności?
QoS – Quality of Service
• Grid składa się z dynamicznych składowych
• składowe uruchomione z początkowym zbiorem
warunków
• jak można zachować te warunki?
• analiza zależności
• może wymagać migracji
• migruj i rozpocznij wykonanie od początku
• migruj i kontynuuj z tego samego stanu
• zachowaj informację o stanie
• punkty kontrolne
Inne usługi gridowe
• Szeregowanie
• aplikacje składają się z różnych części
• trzeba je efektywnie szeregować w dostępie do różnych
zasobów
• Obsługa zdarzeń
• Monitorowanie
• skąd wiadomo, że składowa nadal żyje: monitory typu heart
beat, sieć agentów do monitorowania grida
• Obsługa sytuacji awaryjnych i pomoc użytkownikowi
• Jednolity interfejs, rozliczanie, współpraca przy
współużytkowaniu zasobów
Potrzebne są wewnątrz gridowe protokoły
• Rozwój protokołów nadzoruje Global Grid Forum
• Powstał de facto standard: Globus Toolkit
• W trakcie definiowania jest Open Grid Services Architecture
(OGSA), która modernizuje i rozszerza protokoły wchodzące w
skład Globus Toolkit – jest to odpowiedź na nowe wymagania,
także obejmujące usługi webowe
• OGSA cieszy się poparciem dużych firm, takich jak IBM,
Microsoft, Platform, Sun, Avaki, Entropia, United Devices
• W przyszłości żeby zasób mógł stać się częścią grida będzie
musiał implementować protokoły OGSA (tak jak zasób dostępny
w Internecie musi implementować protokół IP)
Otwarte usługi gridowe
• Połączenie usług webowych i gridowych
• WS-Resource Framework (2004)
konwencje określające zarządzanie stanem w celu umożliwienia
aplikacjom odszukiwania, sprawdzania i korzystania z zasobów
„stanowych” w standardowy sposób
• Web services description language (WSDL)
Format XML do opisu usług sieciowych jako zbioru punktów końcowych
obsługujących komunikaty zawierające informację typu „dokument”
lub typu „procedura”
• Umożliwia różnorodne implementacje za wspólnym interfejsem
• Używa standardów do opisu, odszukania, zarządzania usługą
• Globus i inne oprogramowanie gridowe przystosowane do
używania OGS
Usługi zapewniane przez Globus Toolkit
• Bezpieczeństwo (GSI)
– usługa bezpieczeństwa (autentykacji) oparta na PKI
• Dostarczanie zadań i zarządzanie nimi (GRAM)
– jednolite dostarczanie zadań
• Usługi informacyjne (MDS)
– usługi informacyjne oparte na LDAP
• Zarządzanie zdalnymi plikami (GASS)
– usługa dostępu do zdalnej pamięci
• Katalog zdalnych danych i narzędzia do zarządzania
– wspierane przez Globus 2.0 dostarczony w 2002
Przykłady z konferencji TNC2011
• TERENA – http://www.terena.org
Trans-European Research and Education Networking Association
offers a forum to collaborate, innovate and share knowledge in
order to foster the development of Internet technology,
infrastructure and services to be used by the research and
education community.
• TNC2011 – TERENA Networking Conference, Maj 2011
• Dwie ciekawe prezentacje panelowe nt zastosowań gridów
Przykłady z konferencji TNC2011
LHC Computing: After the first year with data
Ian Bird, CERN
Ian Bird will talk about the successful first year of LHC data
taking, demonstrating that the Worldwide LHC Computing
Grid (WLCG) computing infrastructure is able to support the
huge volumes of data and large scale distributed analysis
required. His talk will illustrate how the LHC experiments
and the 150 or so computing centres involved collaborate
successfully, and give a brief overview of the technical
implementation of the distributed computing infrastructure,
mentioning some of the key successes and lessons learned.
Finally, Ian Bird will describe the evolution of the
collaboration and the infrastructure to make use of evolving
technologies and address areas of concern.
Przykłady z konferencji TNC2011
Computer networking and molecular eyes
Jaroslav Koča, Central European Institute of Technology
The talk will bring us into the micro- and nanoworld, where
things like viruses or bacteria are extremely huge objects. It
will be shown how these objects may recognize other objects,
especially human cells. To be able to influence these
nanoworld processes, e.g., to design new antiviral and
antibacterial drugs, one has to be able to understand them on
molecular and atomic level. Computer simulations and
modeling may help substantially within this direction.
However, corresponding calculations are usually very
intensive and using a grid of computers via networking is a
big plus.
Podsumowanie i wnioski
• Obliczenia gridowe staną się platformą obliczeniową nowej
generacji do rozwiązywania problemów dużej skali.
• Zarządzanie zasobami jest trudnym zadaniem, gdyż systemy
muszą dobrze dostosowywać się do potrzeb, być skalowalne,
konkurencyjne, … i zapewniać QoS.
• Istnieje już infrastruktura do obsługi przydziału zasobów i
sterowania dostępem do nich, u podłoża których leży
“obliczeniowa ekonomia”
• Kluczem do sukcesu mierzonego liczbą gridowych
zastosowań jest istnienie łatwych w użyciu narzędzi do
tworzenia gridowych aplikacji

Podobne dokumenty