Open Source im professionellen Einsatz

Die Open-Source-Grid-Umgebung Alien

Alien im Wunderland

Alien (Alice Environment) ist eine Grid-Implementation aus Open-Source-Komponenten. Dieses Cern-Projekt einer kleinen Arbeitsgruppe stellt die Infrastruktur für verteilte Simulationen, Rekonstruktionen und Analysen von sehr umfangreichen Physikdaten bereit.

Alice (A Large Ion Collider Experiment,[1]) ist eines der vier Experimente des Large Hadron Colliders (LHC,[2]), die derzeit am Cern in Genf gebaut werden (siehe Abbildung 1). Wenn das Experiment in Betrieb ist, wird es bis zu 2 Petabyte Daten pro Jahr aufzeichnen - entsprechend rund 25000 handelsüblichen 80-GByte-Platten. Während seiner Laufzeit von 20 Jahren wird es jährlich mehr als eine Milliarde Datenfiles weltweit in über 50 Instituten ablegen.

Abbildung 1: Der Large Hadron Collider an der Grenze zwischen der Schweiz und Frankreich bei Genf. Der Alice-Detektor befindet sich bei Point 2.

Abbildung 1: Der Large Hadron Collider an der Grenze zwischen der Schweiz und Frankreich bei Genf. Der Alice-Detektor befindet sich bei Point 2.

Diese Datenmengen wollen zudem analysiert werden, um die relevanten Informationen zu extrahieren. Bevor der LHC fertig aufgebaut ist, werden die Physiker schon in großem Stil Teilchenkollisionen simulieren, um ein korrektes Design des Detektors zu gewährleisten.

Das Alien-Team[3] (Alien: ALIce ENvironment) entwickelte die Alice-Grid-Umgebung innerhalb des Alice-Projekts als verteilte Computing-Infrastruktur für die Simulation, Rekonstruktion und Analyse von Daten aus dem Experiment. (Der Projektname hat nichts mit dem gleichnamigen Linux-Paketmanager zu tun.)

Alien erlaubt es den Zentren der virtuellen Alice-Organisation (VO), sich als Einheit zu sehen: Jeder erreichbare Rechenknoten vermag einlaufende Programme auszuführen und die Benutzer können verteilte Datensätze als logische Dateien ohne Kenntnis des Speicherorts ansprechen.

Anders als zum Beispiel das European Data Grid (EDG, siehe Artikel in diesem Schwerpunkt) arbeitet an Alien eine vergleichsweise kleine, aber sehr aktive Gruppe von Entwicklern. Gleichwohl bezeichnet die ARDA-Arbeitsgruppe, die sich mit verteilter Analyse für LHC-Experimente beschäftigt, Alien als das Grid-Projekt mit der diesbezüglich besten Funktionalität.

Für die Alice-Benutzer begann das Alien-Grid Ende 2001 mit der Arbeit. Gegenwärtig produzieren sie damit vor allem verteilte Monte-Carlo-Daten sowie Detektorsimulationen und -rekonstruktionen an über 40 Instituten auf vier Kontinenten. Seither liefen unter Alien mehr als 26000 Alice-Jobs, was 40 CPU-Jahren entspricht und mehr als 30 Terabyte Daten produziert hat.

Viel Open Source

Besonderen Wert legten die Alien-Entwickler auf Modularität und Erweiterbarkeit. Darum haben sie die Module und Komponenten funktionell geordnet (siehe Abbildung 2) und auf deren vollkommene Eigenständigkeit geachtet. Anders als das Globus-2-Toolkit ([4], siehe Artikel) setzte Alien von Anfang an auf Webservices. Damit werden künftige Standards wie OGSA und WSRF reibungsarm implementierbar.

Abbildung 2: Alle Alien-Komponenten auf einen Blick.

Abbildung 2: Alle Alien-Komponenten auf einen Blick.

Alien enthält sehr viele Standard-Open-Source-Komponenten. Die Projektmitglieder waren bestrebt, deren vorhandene Funktionalität zu nutzen und sie nur wenig zu modifizieren. Das und "Extreme Programming"-Techniken haben die Software-Entwicklung merklich erleichtert und beschleunigt.

Alien benutzt exzessiv Perl, hauptsächlich wegen der vielen Open-Source-Module. Verfügbar sind zum Beispiel Kryptographie- oder SOAP-Komponenten [5]. Alien zählt einschließlich externer Module etwa drei Millionen Zeilen Code. Nur etwa ein Prozent davon musste das Alien-Team zusätzlich entwickeln.

VO-Konfiguration per LDAP

Die statische Konfiguration einer virtuellen Organisation wird zur Laufzeit von einem LDAP-Konfigurationsserver ausgelesen, was die Beschreibung der Benutzer und ihrer Rollen sowie von vorhandenen Softwarepaketen, Instituten und Grid-Diensten beinhaltet. Der erste Alien-Eckstein war der Filekatalog (siehe Abbildung 3). Er bildet physikalische Filenamen (PFN) auf ihre logischen Pendants (LFN) ab - im Betrieb sieht der Benutzer nur den logischen.

Abbildung 3: Der Alien-Filekatalog bildet physikalische Dateien - egal wo sie liegen - als logische Namen ab.

Abbildung 3: Der Alien-Filekatalog bildet physikalische Dateien - egal wo sie liegen - als logische Namen ab.

Wie der Filekatalog LFNs in PFNs übersetzt, variiert mit der geografischen Lage und den Fähigkeiten des betreffenden Clients. Der Filekatalog hilft auch Daten zu registrieren, abzurufen und zu replizieren.

Im Interface ähnelt der Katalog einem Unix-Filesystem. So kann jeder Benutzer exklusive Lese- und Schreibrechte für seine LFNs vergeben. Dateibeschreibungen sind als Metadaten speicherbar.

Der für Alien vorliegende Filekatalog basiert zwar auf der relationalen Datenbank MySQL, sollte sich aber auch mit anderen SQL-DBs verstehen. Auch darf der Admin Teile des Verzeichnisbaums mit extra Datenbanken bedienen. Zudem können die Datenbanken auf mehreren Maschinen laufen.

Eine andere Zentralkomponente, der Package Manager, verwaltet alle Pakete automatisch, die die virtuellen Organisationen beisteuern. Damit wird es einfach, das System um Software zu erweitern, nach der eine VO verlangt. Die Pakete wissen um ihre Anforderungen an das System und kennen Abhängigkeiten von Paketen und Versionsnummern.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook