31
Grid Computing Seminar am Institut für verteilte Systeme im WS 07/08 - Forschungstrends im Bereich Verteilte Systeme - Ralf Enderle | 19.11.07

Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Embed Size (px)

Citation preview

Page 1: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid ComputingSeminar am Institut für verteilte Systeme im WS 07/08

- Forschungstrends im Bereich Verteilte Systeme - Ralf Enderle | 19.11.07

Page 2: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 2

Inhalt

– Einleitung

– Konzeptueller Aufbau eines Grid Systems

– Existierende Ansätze / Systeme

– Globus Toolkit

– Fazit

Page 3: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 3

Warum Grid Computing?

• Rechenintensive Anwendungen nehmen stark zu

• Verschiedenste Ressourcen werden benötigt

• Oft arbeiten verschiedene Institutionen an einem Problem

oder auf einer Datenbasis

• Bei der Benutzung von Rechenzentren sind oft

Anpassungen am Code oder der Daten notwendig

Page 4: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 4

Entstehungsgeschichte

• 1965 Multics: „ computing as an utility “

• 1980 Grand Challenge: Erste Konzepte zum Entwurf von

Grid Systemen

• 1990 US Gigabit testbed program

• 1995 FAFNER - Factoring via Network-Enabled

Recursion

• 1995 I-WAY – Information Wide Area Year (Vorläufer des

Globus Toolkits)

Page 5: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 5

Einsatzmöglichkeiten

• Rechenintensive Probleme– Problem in Teilschritten berechnen– spezielle optimierte Rechner im Grid

• Datenintensive Probleme– zentrale Ablage der Daten– temporärer großer Speicherbedarf

• Dynamischer Ressourcenbedarf

• Verleih bzw. Vermietung von (speziellen) Ressourcen wie

Teleskopen oder Analysegeräten

Page 6: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 6

Inhalt

– Einleitung

– Konzeptueller Aufbau eines Grid Systems

– Existierende Ansätze / Systeme

– Globus Toolkit

– Fazit

Page 7: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 7

Konzeptueller Aufbau: Schichtenmodell

Schichtenmodell nach Ian Foster:

Fabric

Connectivity

Resource

Collective

Application

Page 8: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 8

Schichtenmodell – Fabric

• Regelt Zugriff auf Ressourcen

• Mindestanforderung:– Informationsabfrage– Statusabfrage– Kontrolle

• Mehr Funktionalität in einer Fabric-Komponente:– erleichtert die Grid-Entwicklung– erschwert jedoch Integration neuer Ressourcen über diese

Komponente-> es gilt also einen Mittelweg zu finden

Fabric

Connectivity

Resource

Collective

Application

Page 9: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 9

Schichtenmodell – Connectivity

• sichere Kommunikation

• Identifikation der Benutzer/Ressourcen

• Zugriff auf die Ressourcen

• Mindestfunktionalität:– single sign-on– Delegation– Integration lokaler Sicherheitslösungen

Fabric

Connectivity

Resource

Collective

Application

Page 10: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 10

Schichtenmodell – Resource

• Stellt u.a. Mechanismen zur– Initialisierung– Überwachung– Kontrolle– Vergütungvon Ressourcen zur Verfügung-> Es gibt:

InformationsprotokolleManagementprotokolle

• Bedient sich der Fabric-Schicht um auf konkrete lokale

Ressourcen zuzugreifen

Fabric

Connectivity

Resource

Collective

Application

Page 11: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 11

Schichtenmodell – Collective

• Interaktion über Ressourcengrenzen

• Beispiele für Dienste in dieser Schicht:– Directory service– Data replication service– Software discovery service– Monitoring service– ...

• Oft liegen die Dienste als SDK vor-> leichtere Verknüpfung mit der Anwendung

Fabric

Connectivity

Resource

Collective

Application

Page 12: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 12

Schichtenmodell – Application

• Einstiegspunkt für den Entwickler

• Zugriff auf die unteren Schichten-> Möglichkeit der Verknüpfung der Schichten, um die gestellte Aufgabe zu lösen

Fabric

Connectivity

Resource

Collective

Application

Page 13: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 13

Schichtenmodell – Beispiel

Page 14: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 14

Inhalt

– Einleitung

– Konzeptueller Aufbau eines Grid Systems

– Existierende Ansätze / Systeme

– Globus Toolkit

– Fazit

Page 15: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 15

Computing Grids [1]

• Zugriff auf Rechenressourcen

• vor allem aufwendige Berechnungen

• Abarbeitung meist in kleinen Teilschritten

• Parallel zu verarbeitende Probleme skalieren sehr gut

• Beispiel: SETI@home (basierend auf BOINC – Berkeley

Open Infrastructure for Network Computing)– Auswertung der Daten eines Radioteleskopen– Berechnung durch ein Clientprogramm auf (meist)

Heimanwender PCs– Ziel ist die Suche nach außerirdischem intelligenten Leben

Page 16: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 16

Computing Grids [2] - SETI@home

Page 17: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 17

Data Grid

• Dynamischer Speicherplatz

• Zwischen- und Endergebnisse von wissenschaftlichen

Berechnungen

• Oft kombiniert mit Computing Grids

• Beispiel: Data Grid der EU– bietet z.B. Zugriff auf die Daten des LHC

(Teilchenbeschleuniger) vom Cern– somit wird vielen Wissenschaftlern die Arbeit auf demselben

großen Datenbestand ermöglicht.

Page 18: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 18

Resource Grid

• Bündelung verschiedener Ressourcen

• Computing Grids sowie Data Grids lassen sich dem

Resource Grid unterordnen

• aber auch speziellere Systeme:– Teleskope– Analysegeräte– ...

• Beispiel: Fraunhofer Resource Grid– Ressourcen von mehreren Instututionen der Fraunhofer

Gesellschaft– Zugriff auch für externe Interessenten (Firmen) möglich

Page 19: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 19

Service Grid

• kapseln oft Ressourcen in Services zur einfacheren

Handhabung

• Bereitstellung konkreter Dienste für Aufgaben

• Beispiel: BIS-Grid (Betriebliche Informationssysteme)– Teilprojekt der D-Grid Initiative– Integration von dezentralen Informationssystemen

(CRM, ERP, PDM...)– Also Versuch der Integration von heterogenen

Umgebungen mit Grid-Ansätzen

Page 20: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 20

Information Grid

• Strukturierter und schneller Zugriff auf Informationen

• Integration von heterogenen Datenbeständen

• Herkunft / Speicherart sowie ursprüngliche Aufbereitung

der Daten für den Nutzer transparent-> einheitliche Sicht

• oft bei semantischer Zusatzinformation auch als

Knowledge Grid bezeichnet

Page 21: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 21

Zusammenspiel (nach Reinefeld/Schintke)

Page 22: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 22

Inhalt

– Einleitung

– Konzeptueller Aufbau eines Grid Systems

– Existierende Ansätze / Systeme

– Globus Toolkit

– Fazit

Page 23: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 23

Globus Toolkit V4

• Open Source Toolkit zum Bau von Grid Systemen

• Entstanden aus I-WAY

• Kann einzeln oder komplett eingesetzt werden

• Aufteilung in fünf große Bestandteile:– Security– Data Management– Execution Management– Information Services– Common Runtime

Page 24: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 24

Globus – Komponenten

Page 25: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 25

Globus – Security

• Sicherheitskomponente in Globus: GSI (Grid Security

Infrastructure)

• strikt standardisiertes Sicherheitssystem

• einheitliche Schnittstellen

• Integration von bestehender Sicherheitsinfrastruktur

möglich: z.B. Kerberos / Unix Sicherheitsrichtlinien / ...

• Es wird ein Mapping von bestehenden Systemen in die

GSI vorgenommen

Page 26: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 26

Globus – Data Management

• Datenmanagement in Globus: GridFTP

• Erweiterung des eigentlichen FTP-Protokolls– verlässliches Starten von abgebrochenen Verbindungen– einfaches Monitoring– paralleler Datentransfer– ...

• Eigenschaften: sicher, robust, schnell, effizient

• Durch die Standardisierung Interoperabilität gewährleistet

Das System der Globus Alliance, ein System der University of

Virginia sowie des Fermi Labs konnten in einem Test mit

GridFTP ohne Anpassungen zusammenarbeiten

Page 27: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 27

Globus – Execution Management

• GRAM (Globus Resource Allocation Manager Service)

• zustandsbehafteter Job-Kontrolldienst

• stellt Umgebung für den Job bereit

• Normaler Modus: in-Datei ......... out-Datei

• Aber auch Monitoring während der Ausführung möglich

Page 28: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 28

Globus – Information Service

• MDS (Monitoring and Discovery Service)

• Index service– sammelt Informationen– kann auf Anfrage Auskunft über die gesammelten Daten

geben

• Trigger service– sammelt auch wie der Index service Informationen– bietet die Möglichkeit, auf Ereignisse in den Informationen

direkt zu reagieren und eine andere Aktion anzustoßen

Page 29: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 29

Globus – Common Runtime

• drei unterstützte Runtimes:Python – C – Java

• Exemplarisch: JAVA CoG Kit (Java Commodity Grid Kit)– ermöglicht es wiederverwendbaren Code zu schreiben– Web Services lassen sich einfach ansprechen– viele vordefinierte Interfaces– Unterstützung der GUI-Modellierung (Swing, JSP) für Grid

Anwendungen– Java CoG Kit Desktop : Desktopumgebung um auf dem

Grid zu arbeiten

Page 30: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 30

Globus – Java CoG Kit Desktop

Page 31: Grid Computing - Distributed Systems (Uni Ulm) · PDF fileVermietung von (speziellen) ... -> leichtere Verknüpfung mit der Anwendung Fabric Connectivity Resource Collective ... (CRM,

Grid Computing | Ralf Enderle Seite 31

Grid Computing - Fazit

• einheitliche Bedienung

• Bündelung verschiedenster Ressourcen

• bessere Auslastung der Ressourcen

• Bezahlsysteme integrierbar

• viele Probleme sind fast ausschließlich mit Grid Systemen

zu lösen

• ABER: recht komplex aufzusetzen

-> Eine genaue Untersuchung des jeweiligen

Anwendungskontextes ist nötig! Alternativen prüfen!