Krajowy Klaster Linuxowy CLUSTERIX jako platforma gridowa do obliczeń wielkiej skali Roman Wyrzykowski Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska.

Download Report

Transcript Krajowy Klaster Linuxowy CLUSTERIX jako platforma gridowa do obliczeń wielkiej skali Roman Wyrzykowski Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska.

Krajowy Klaster Linuxowy
CLUSTERIX jako platforma
gridowa do obliczeń wielkiej skali
Roman Wyrzykowski
Instytut Informatyki Teoretycznej i Stosowanej
Politechnika Częstochowska
Plan

Geneza, status, główne założenia projektu i architektura

Instalacja pilotowa

Oprogramowanie zarządzające (middleware)
- technologie i architektura
- integracja klastrów dynamicznych
- system zarządzania zasobami i zadaniami
- zarządzanie kontami użytkowników
- intefejs dostępowy – portale gridowe

Aplikacje pilotowe

Uruchamianie aplikacji numerycznych na przykładzie systemu
NuscaS

Podsumowanie
Klastry komputerów PC-Linux
 Klastry komputerów PC stanowią obecnie dominujący typ
systemów równoległych, przede wszystkim ze względu na
ich niższy koszt niż tradycyjne superkomputery
 Kluczowa rola oprogramowania Open Source, takiego jak
system operacyjny LINUX
 Klastry komputerów PC w Polsce
- pierwszy w TASK - październik 2000 r.
- drugi w Politechnice Częstochowskiej - styczeń 2001 r.
- od 2003 roku dynamiczny rozwój na terenie całej Polski
 Różnorodne architektury procesorów - Intel, AMD,
32- i 64-bitowe
Klaster ACCORD w PCz
ACCORD:
Architektura
Narzędzia do zarządzania i
monitorowania klastra
Web Condor Interface
Kompletny system do zarządzania i monitorowania
klastra zintegrowany z www
SIECI NOWEJ GENERACJI
POLSKIE PROJEKTY SIECIOWE – PIONIER (1Q05)
Podobne rozwiązanie USA:
National Lambda Rail
SIECI NOWEJ GENERACJI - PORÓWNANIE
National Lambda Rail
PIONIER
•
Docelowo 16 000 mil światłowodu
• 3000 km (docelowo 6000 km)
•
Transport: Cisco 15808
(max. 40 kanałów @ 10Gbit/s)
• ADVA (max 32 kanały @ 10 Gb/s)
•
4 lambdy (10G Ethernet LAN PHY):
• 1 lambda (10GEth LAN PHY )
-
sieć przełączanego Ethernetu
10Gbit/s (usługi typu LAN
i połączenia na poziomie 1Gbit/s)
• TAK
-
krajowa sieć IP
• TAK
-
połączenie dla projektów
badawczych (projekty
obliczeniowe, teleprezencja itp.),
• TAK
Internet2 – eksperymentalna dla
badań nad nowymi usługami
sieciowymi
• TAK
-
kanały wirtualne,
2 lambdy – 3Q06
Status projektu CLUSTERIX
 Projekt celowy MNiI „CLUSTERIX - Krajowy Klaster
Linuxowy (National Cluster of Linux Systems)”
 Uczestniczy 12 jednostek z całej Polski (MAN-y
i KDM-y)
 Politechnika Częstochowska jako koordynator
 Faza badawczo-rozwojowa: 01.01.2004 - 30.09.2005
 Faza wdrożeniowa: 01.10.2005 – 30.06.2006
 Ogólny koszt – 5 340 000 zł, w tym dotacja MNiI 2 500 000 zł, reszta to wkład własny uczestników
projektu
Partnerzy
 Politechnika Częstochowska (koordynator)
 Poznańskie Centrum Superkomputerowo-Sieciowe (PCSS)
 Akademickie Centrum Komputerowe CYFRONET AGH, Kraków
 Trójmiejska Akademicka Sieć Komputerowa w Gdańsku (TASK)
 Wrocławskie Centrum Sieciowo-Superkomputerowe (WCSS)
 Politechnika Białostocka
 Politechnika Łódzka
 UMCS w Lublinie
 Politechnika Warszawska
 Politechnika Szczecińska
 Uniwersytet Opolski
 Uniwersytet w Zielonej Górze
Założenia projektu

Głównym celem realizacji projektu jest opracowanie narzędzi
oraz mechanizmów umożliwiających wdrożenie produkcyjnego
środowiska gridowego,

W konfiguracji bazowej udostępnia ono infrastrukturę lokalnych
klastrów PC-Linux o architekturze 64-bitowej, połączonych
szybką siecią kręgosłupową zapewnianą przez sieci PIONIER

Do infrastruktury bazowej podłączone zostaną zarówno
istniejące, jak i nowe klastry, o zróżnicowanej architekturze 32i 64-bitowej

W wyniku powstanie rozproszony klaster PC nowej generacji o
dynamicznie zmieniającej się wielkości, w pełni operacyjny i
zintegrowany z istniejącymi usługami, udostępnionymi przez inne
projekty powstałe w ramach programu PIONIER
Realizowane zadania
•
Utworzenie środowiska produkcyjnego
–
–
–
•
Rozwój oprogramowania narzędziowego
–
–
–
–
–
–
–
•
Dostarczenie narzędzi i mechanizmów pozwalających na
dynamiczną i automatyczną rekonfigurację infrastruktury
Umożliwi dołączanie kolejnych klastrów lokalnych 32- lub 64bitowych
Instalacja pilotowa stanowi bazową infrastrukturę szkieletową
połączoną siecią PIONIER
Zarządzanie danymi
System rozdziału zasobów z predykcją, monitorowanie
Zarządzanie kontami użytkowników i organizacjami wirtualnymi
Bezpieczeństwo
Zarządzanie zasobami sieciowymi, IPv6
Interfejs użytkownika oraz administratora
Dynamiczne równoważenie obciążenia, mechanizm punktów
kontrolnych
Rozwój aplikacji gridowych
–
–
–
–
–
Modelowanie zjawisk termomechanicznych w krzepnących
odlewach
Symulacja przepływów transonicznych wokół skrzydła samolotu
Symulacje wielkiej skali przepływu krwi w mikrokapilarach
metodą cząstek
Modelowanie molekularne
Dynamiczna wizualizacja terenu 3D z danych przestrzennych
CLUSTERIX:
Architektura
Instalacja pilotowa (1)
 12 klastrów lokalnych stanowi szkielet systemu
 Klastry lokalne budowane w oparciu o 64-bitowe
procesory Intel Itanium2 1,4 GHz wyposażone w
pamięci podręczne o wielkości 3 MB
 2 lub 4 GB pamięci operacyjnej RAM na procesor
 Komunikacja wewnątrz klastrów lokalnych oparta o
Gigabit Ethernet i InfiniBand (lub Myrinet)
 Komunikacja pomiędzy klastrami lokalnymi odbywa się
za pomocą dedykowanych kanałów 1 Gb/s
udostępnianych przez sieć PIONIER
Instalacja pilotowa (2)
 252 x IA-64 w szkielecie
Gdańsk
Szczecin
Białystok
Poznań
Zielona
Góra
Warszawa
Łódź
Wrocław
Lublin
Częstochowa
Opole
Kraków
 800 x IA-64 w
konfiguracji testowej 4,5 TFLOPS
 3000+ km włókien
optycznych o
przepustowości 10Gbps
(technologia DWDM)
 w pełni wdrożone protokoły
IPv4 oraz IPv6
CLUSTERIX:
Architektura sieci
 Bezpieczny dostęp do sieci
zapewniają routery ze
zintegrowaną
funkcjonalnością firewalla
Local Cluster
Switch
PIONIER
Core Switch
Access Node
1 Gbps
 Użycie dwóch VLAN-ów
umożliwia separację zasobów
obliczeniowych od szkieletu
sieci
 Wykorzystanie dwóch sieci z
dedykowaną przepustowością
1 Gbps pozwala poprawić
efektywność zarządzania
ruchem w klastrach lokalnych
Clusterix Storage
Element
Backbone Traffic
Computing
Nodes
Internet Network
Communication
& NFS VLANs
Internet Network
Access
Router
Firewall
Oprogramowanie zarządzające
systemem CLUSTERIX - technologie
 Tworzone oprogramowanie bazuje na Globus Toolkit 2.4 oraz WEB
serwisach
- możliwość powtórnego wykorzystania tworzonego oprogramowania
- zapewnia interoperacyjność z innymi systemami gridowymi na
poziomie serwisów
 Technologia Open Source, w tym LINUX (Debian, jadro 2.6.x) oraz
systemy kolejkowe (Open PBS, SGE)
- oprogramowanie Open Source jest bardziej podatne na integrację
zarówno z istniejącymi, jak i z nowymi produktami
- dostęp do kodu źródłowego projektu ułatwia dokonywania zmian i ich
publikację
- większa niezawodność i bezpieczeństwo
 Szerokie wykorzystanie istniejących modułów programowych, np.
brokera zadań z projektu GridLab, po dokonaniu niezbędnych
adaptacji i rozszerzeń
Integracja klastrów dynamicznych:
Założenia
 Klastry dynamiczne (zewnętrzne) mogą być w prosty
sposób (automatycznie) dołączane do szkieletu
systemu CLUSTERIX aby:
– zwiększyć dostępną moc obliczeniową
– wykorzystać zasoby klastrów zewnętrznych w
momentach, gdy są one nieobciążone (noce,
weekendy …)
– zapewnić skalowalność infrastruktury systemu
Integracja klastrów
dynamicznych: Architektura
 Nowe klastry weryfikowane pod
względem:
• zainstalowanego
oprogramowania
• certyfikatów SSL
Local
Switch
PIONIER
Backbone Switch
Internet
 Komunikacja za pośrednictwem
routera/firewalla
 System Monitorujący
automatycznie wykrywa
nowe zasoby
Clusterix
Core
 Nowe klastry udostępniają moc
obliczeniową dla użytkowników
Router
Firewall
Dynamic
Resources
Dołączenie klastra
dynamicznego
Access
node
Access
node
Nodes
Nodes
Local
switch
Internet
Firewall/
router
 Struktura wewnętrzna klastra dynamicznego –
nieistotna z punktu widzenia procesu dołączania
 Istotny – publiczny węzeł dostępowy
Switch
Monitoring
system
Backbone
network
DYNAMIC CLUSTER
 Klaster dynamiczny powinien utworzyć połączenie ze
szkieletem za pośrednictwem sieci Internet
 Połączenie via firewall z węzłem dostep. szkieletu
 Cały proces zarządzany przez system monitorujący
Clusterix-a JIMS
Podsumowanie:
Instalacja szkieletowa:
- 250+ procesów Itanium2 rozproszonych pomiędzy
12 klastrami lokalnymi na terenie Polski
Możliwość dołączenia klastrów dynamicznych z zewnątrz
(klastry na Uczelniach, w kampusach)
- maksymalna instalacja zawierająca 800+ procesorów Itanium2
(4,5 Tflops) – jeszcze bez wykorzystania procedury
automatycznego dołączenia
Wykonanie zadania w
systemie CLUSTERIX
User Interface
Virtual User Account System
Broker - GRMS
Portal
CDMS
Globus
SSH
SSHSession
Session
Server
Server
PBS/Torque, SGE
Checkpoint restart
USER
Grid
GRMS (1)
 GRMS (Grid Resource Management System) jest systemem
zarządzania zasobami i zadaniami w projekcie CLUSTERIX
 Został stworzony w ramach projektu GridLab
 Głównym zadaniem systemu GRMS jest zarządzanie całym
procesem zdalnego zlecania zadań obliczeniowych do różnych
systemów kolejkowych obsługujących klastry lokalne
 GRMS został zaprojektowany jako zbiór niezależnych
komponentów zajmujących się różnymi aspektami procesu
zarządzania zasobami, wykorzystujących serwisy niskiego
poziomu
GRMS (2)
 GRMS bazuje na serwisach dostępnych w pakiecie Globus
(GRAM, GridFTP) oraz w systemie zarządzania danymi CDMS
i systemie monitorującym JIMS
 GRMS udostępnia interfejs w formie web-serwisu (GSIenabled), przez który mogą się do niego odwoływać wszyscy
klienci (portale, klienci linii komend lub aplikacje)
 Wszystkie wymagania użytkowników są specyfikowane przy
pomocy specjalnych dokumentów XML, nazywanych opisami
zadań GJD (GRMS Job Description), przy czym są one
wysyłane do GRMS’a jako komunikaty SOAP poprzez
połączenia GSI
Funkcjonalność systemu
GRMS
Z punktu widzenia końcowego użytkownika funkcjonalność
systemu GRMS można podzielić na:
 zlecanie zadań użytkownika i ich kontrolowanie
 listowanie zadań użytkownika z uwzględnieniem zadanych
kryteriów
 zarządzanie zadaniami – migracja, zatrzymywanie,
wznowienie, usuniecie
 pobieranie informacji o zadaniach
 znajdowanie zasobów spełniających wymagania użytkownika
 zarządzanie powiadamianiem (notyfikacja)
<grmsjob appid="psolidify">
<simplejob>
<resource>
<localrmname>pbs</localrmname>
<hostname>access.pcss.clusterix.pl</hostname>
</resource>
<executable type="mpi" count="6">
<file name="exec" type="in">
<url>file:////home/users/olas/opt/bin/psolidify</url>
</file>
<arguments>
<value>/home/users/olas/calc/solid/large/40000/40000</value>
</arguments>
<stdout>
<url>gsiftp://access.pcz.clusterix.pl/~/tmp/zad/out</url>
</stdout>
<stderr>
<url>gsiftp://access.pcz.clusterix.pl/~/tmp/zad/err</url>
</stderr>
</executable>
</simplejob>
</grmsjob >
Zarządzanie kontami
użytkowników w Gridach
Klaster lokalny
Główne




 Grid !!!
(z naszej perspektywy)
problemy to:
Problemy z zarządzaniem kontami użytkowników
Kwestia rozliczenia wykorzystanych zasobów
Niekompatybilność systemów kolejkowych
Problemy z transferem plików
Integracja użytkowników z systemem w sposób przezroczysty
i wygodny jest niezbędna w celu osiągnięcia maksymalnych
korzyści.
System Wirtualnych Użytkowników
(VUS)
Dotychczas użytkownik musiał posiadać oddzielne konto
fizyczne na każdej maszynie
john
js
jsmith
jsmith
foo
System zarządzania
zasobami
acc01
+
smith
System Wirtualnych
Użytkowników
VUS dla Gridu
Globus
PBS
VUS dla Gridu
 Zbiór ogólnodostępnych kont, które mogą być
przyporządkowane kolejnym zadaniom
 Możliwość zgłaszania zadań do innych maszyn i
klastrów lokalnych
 Automatyczny transfer plików
 Uproszczona administracja kontami użytkowników
 Pełna informacja rozliczeniowa o wykorzystaniu kont
Architektura systemu
VOIS – Virtual
Organization
Information System
Webservice interface
Grid Node
GAM – Globus
Authorisation Module
Storage subsystem
Plug-in
Grid Accounting
SAIS- Site Accounting
Information System
Webservice interface
Storage subsystem
Webservice interface
VOIS – Virtual
Organization
Information System
Storage subsystem
Webservice interface
Storage subsystem
SAIS- Site Accounting
Information System
VOIS – Virtual
Organization
Information System
Webservice interface
Grid Node
GAM – Globus
Authorisation Module
Plug-in
Storage subsystem
Grid Accounting
Webservice interface
Storage subsystem
Webservice interface
Storage subsystem
Autoryzacja - przykład
Clusterix
TUC
Cyfronet
Scientists
scientists
operators
PSNC
programmers
staff
Grid Node
guests
login:
login:
login:
common
login:
login:
login:
login:
login:
login:
power
login:
login:
Lab_users
VUS: Podsumowanie
 Pozwala stworzyć produkcyjne środowisko gridowe
 Łączy lokalne i globalne polityki zarządzania
kontami
 Redukuje narzuty na administrację
 Udostępnia pełną informację na temat
wykorzystania zasobów
 Wspiera różnorodne scenariusze dostępu do Gridu
– dla użytkownika końcowego, właściciela zasobów,
managera organizacji
Wykonanie zadania w
systemie CLUSTERIX
User Interface
Virtual User Account System
Broker - GRMS
Portal
CDMS
Globus
SSH
SSHSession
Session
Server
Server
PBS/Torque, SGE
Checkpoint restart
USER
Grid
Bazowy scenariusz wykonywania
zadań w systemie CLUSTERIX
1. Użytkownik zleca zadanie do systemu GRMS za pośrednictwem
np. portalu, przekazując opis zadania GJD
2. GRMS wybiera optymalny zasób do uruchomienia zadania,
zgodnie z opisem zadania (hardware/software)
3. VUS odpowiada za mapowanie uprawnień użytkownika (user
credentials) na konta fizyczne w klastrach lokalnych
4. Transfer danych wejściowych i plików wykonywalnych (staging):
a) dane wejściowe opisywane przy pomocy logicznego lub
fizycznego pobierane są z systemu CDMS ( CLUSTERIX Data
Management System)
b) pliki wykonywalne, w tym również skrypty (GRMS + CDMS)
5. Wykonanie zadania
6. Po zakończeniu zadania wyniki przekazywane są do CDMS;
wykorzystywane konta fizyczne są „czyszczone” przez VUS
Interfejs dostępowy:
Portale gridowe


Wymagania w stosunku do interfejsu dostępowego :
- możliwość łatwego dostosowania do potrzeb użytkowników
- wydajność
- bezpieczeństwo
Opracowano SSH Session Framework z następującymi właściwościami:
- oparcie interfejsu GUI o interfejs „command-line”
- wykorzystanie portletów GridSphere oraz parserów zdefiniowanych w
języku XML
- architektura rozproszona
- łatwa adaptacja istniejących aplikacji do wykonywania w Gridzie
- instalacja przezroczysta dla systemu gridowego (run-time)
- niezawodność
- wsparcie dla VRML, X3D, SVG, formatów graficznych (jpeg, png)
Aplikacje pilotowe

Ponad 20 aplikacji użytkownika końcowego

Wśród zaproponowanych aplikacji można wyróżnić
następujące typy zadań:
-
zadania jednoprocesowe
sekwencja zadań jednoprocesowych
-
zadania równoległe uruchamiane na jednym klastrze
lokalnym
-
sekwencja zadań równoległych uruchamianych na
jednym klastrze lokalnym
-
meta-aplikacje rozproszone uruchamiane na więcej
niż jednym klastrze lokalnym - MPICH-G2
Symulacje wielkiej skali
przepływów krwi w mikrokapilarach
(dyskretne modele cząstkowe)
W.Dzwinel, K.Boryczko
AGH, Institute of Computer Science
Powstawanie
skrzepów krwi
(5x106 cząstek, 16 procesorów)
Przewidywanie struktur białek
Adam Liwo, Cezary Czaplewski, Stanisław Ołdziej
Department of Chemistry, University of Gdansk
Selected UNRES/CSA results from 6th Community Wide Experiment on the
Critical Assessment of Techniques for Protein Structure Prediction
December 4-8, 2004
left - experimental structure, right - predicted structure
Symulacje przepływów w aeronautyce
autorskie oprogramowanie HADRON
Prof. Jacek Rokicki
Politechnika Warszawska
Symulacje wielkiej skali
zagadnień 3D mechaniki płynów
Projekt HiReTT
(1999-2003)
36 x 106
węzłów
3060 x 106
równań nielin.
Nano-Technologie
Michał Wróbel, Aleksander Herman
TASK & Politechnika Gdańska
XMD testing target:
a planetary gear device
containing 8297 atoms
(C, F, H, N, O, P, S and Si)
designed by
K. E. Drexler and R. Merkle
●
XMD - pakiet oprogramowania Open Source do symulacji
zagadnień dynamiki molekularnej dla nano-urządzeń oraz
nano-systemów
Pakiet NuscaS
Politechnika Częstochowska
Tomasz Olas [email protected]
Dziedziny zastosowań:
różnorodne zjawiska termomechaniczne:
przepływ ciepła, krzepniecie odlewów,
naprężenia, pękanie odlewów na gorąco, itd.
Modelowanie krzepnięcia
odlewów
Siatka MES oraz jej
dekompozycja
Scenariusze wykorzystania
zasobów w środowisku gridowym
 Grid jako zbiór zasobów:
broker zadań znajduje zasób (klaster lokalny)
spełniający wymagania użytkownika, który zostaje
wykorzystany do uruchomienia zadania
 Równoległe uruchomienie w środowisku
gridowym (meta-aplikacja):
– standardowe równoległe zadanie obliczeniowe zostaje
uruchomione na geograficznie odległych zasobach
– aplikacja dostosowuje się do środowiska Grid, na którym
zostaje uruchomiona, w celu zwiększenia efektywności
obliczeń
MPICH-G2
 W systemie CLUSTERIX do uruchamiania meta-aplikacji
wykorzystywane jest środowisko MPICH-G2 jako gridowa
implementacja standardu MPI (wersja 1.1)
 Opiera się ona na Globus Toolkit, który służy do autoryzacji,
tworzenia procesów i ich kontroli
 MPICH-G2 umożliwia połączenie wielu systemów
komputerowych (klastrów), potencjalnie o o różnej
architekturze, w celu uruchomienia aplikacji MPI
 W celu zwiększenia wydajności możliwe jest wykorzystan9ie
lokalnych wersji MPI dostosowanych do konkretnych
architektur sieciowych (np. MPICH-GM)
CLUSTERIX jako
system heterogeniczny
 Hierarchiczna architektura systemu CLUSTERIX
 Złożoność zagadnienia przystosowania aplikacji do jej
efektywnego wykonania w środowisku CLUSTERIX
 Konstrukcja komunikatora w MPICH-G2 może być
wykorzystana w celu uwzględnienia hierarchicznej architektury
systemu, umożliwiając adaptację zachowania aplikacji do
właściwości takiej architektury
System NuscaS –
zrównoleglanie obliczeń
Równoległe rozwiązywanie
układu równań (1)
 Zastosowano metodę sprzężonych gradientów
 Algorytm zaproponowany przez Meisela i Meyera
z jednym punktem synchronizacji
 Zaimplementowano nakładanie się w czasie operacji
obliczeniowych i komunikacyjnych
Równoległe rozwiązywanie
układu równań (2)
Wyniki wydajnościowe (1)
Wyniki wydajnościowe (2)
Podsumowanie (1)
 W chwili obecnej pierwsza wersja oprogramowania
zarządzającego dla systemu CLUSTERIX jest już
dostępna
 Trwa intensywne testowanie modułów oprogramowania i
ich współdziałania
 Demo na SC’05
 Bardzo istotne dla nas:
- przyciągnięcie perspektywicznych użytkowników z
nowymi aplikacjami
- włączenie nowych klastrów dynamicznych
- działalność szkoleniowa
Podsumowanie (2)
 Pokazano że środowisko CLUSTERIX jest wydajną
platformą do wykonywania obliczeń numerycznych
 Pełne wykorzystanie jego potencjału przez meta-aplikacje
wymaga w większości przypadków uwzględnienia jego
hierarchicznej struktury
 Plany na najbliższą przyszłość (NuscaS)
- wersja równoległa systemu NuscaS 3D
- checkpointing
- wdrożenie kompleksowej aplikacji z równoległością na
wielu poziomach przeznaczonej do modelowania pękania
odlewów na gorąco
Hot Tearing modeling
Solidification application
(parallel application using MPI)
Manager
module
Stress application
(parallel application using MPI)
...
Microscopic application
Microscopic
application
(sequential)
Microscopic
application
(sequential)
Microscopic
application
(sequential)
(sequential)
Dziękuję za uwagę !
www: https://clusterix.pl
Roman Wyrzykowski
[email protected]