Krajowy Klaster Linuxowy CLUSTERIX jako platforma gridowa do obliczeń wielkiej skali

Post on 02-Feb-2016

35 views 0 download

description

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 - PowerPoint PPT Presentation

Transcript of Krajowy Klaster Linuxowy CLUSTERIX jako platforma gridowa do obliczeń wielkiej skali

Krajowy Klaster Linuxowy CLUSTERIX jako platforma

gridowa do obliczeń wielkiej skali

Roman Wyrzykowski

Instytut Informatyki Teoretycznej i Stosowanej

Politechnika Częstochowska

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

Plan

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

Klastry komputerów PC-Linux

Klaster ACCORD w

PCz

ACCORD:ArchitekturaACCORD:Architektura

Narzędzia do zarządzania i monitorowania klastra

Web Condor InterfaceKompletny system do zarządzania i monitorowaniaklastra zintegrowany z www

POLSKIE PROJEKTY SIECIOWE – PIONIER (1Q05)

Podobne rozwiązanie USA:National Lambda Rail

SIECI NOWEJ GENERACJISIECI NOWEJ GENERACJI

National Lambda Rail

• Docelowo 16 000 mil światłowodu

• Transport: Cisco 15808 (max. 40 kanałów @ 10Gbit/s)

• 4 lambdy (10G Ethernet LAN PHY):

- sieć przełączanego Ethernetu 10Gbit/s (usługi typu LAN i połączenia na poziomie 1Gbit/s)

- krajowa sieć IP

- połączenie dla projektów badawczych (projekty obliczeniowe, teleprezencja itp.),

- Internet2 – eksperymentalna dla badań nad nowymi usługami sieciowymi

SIECI NOWEJ GENERACJI - PORÓWNANIESIECI NOWEJ GENERACJI - PORÓWNANIE

PIONIER

• 3000 km (docelowo 6000 km)

• ADVA (max 32 kanały @ 10 Gb/s)

• 1 lambda (10GEth LAN PHY )

• TAK

• TAK

• TAK

• 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 32- i 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

• Utworzenie środowiska produkcyjnego– Dostarczenie narzędzi i mechanizmów pozwalających na dynamiczną i

automatyczną rekonfigurację infrastruktury – Umożliwi dołączanie kolejnych klastrów lokalnych 32- lub 64-bitowych– Instalacja pilotowa stanowi bazową infrastrukturę szkieletową

połączoną siecią PIONIER

• Rozwój oprogramowania narzędziowego– 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

       

Realizowane zadania

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

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

Gdańsk

Szczecin

Poznań

ZielonaGóra

Wrocław

Opole

Częstochowa

Kraków

Łódź

Lublin

Warszawa

Białystok

CLUSTERIX: Architektura sieci

Bezpieczny dostęp do sieci zapewniają routery ze zintegrowaną funkcjonalnością firewalla

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

PIONIERCore Switch

Clusterix StorageElement

Local ClusterSwitch

ComputingNodes

Access Node

RouterFirewall

Internet NetworkAccess

Communication& NFS VLANs

Internet Network

Backbone Traffic

1 Gbps

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 Komunikacja za pośrednictwem

routera/firewalla

System Monitorujący automatycznie wykrywa nowe zasoby

Nowe klastry udostępniają moc obliczeniową dla użytkowników

PIONIERBackbone Switch

LocalSwitch

RouterFirewall

ClusterixCore

DynamicResources

Internet

Dołączenie klastra dynamicznego

Nodes

Firewall/router

Accessnode

Backbone network

Switch

Local switch Internet

Klaster dynamiczny powinien utworzyć połączenie ze szkieletem za pośrednictwem sieci Internet

Monitoringsystem

Cały proces zarządzany przez system monitorujący Clusterix-a JIMS

Struktura wewnętrzna klastra dynamicznego – nieistotna z punktu widzenia procesu dołączania

Nodes

DYNAMIC CLUSTER

Accessnode

Istotny – publiczny węzeł dostępowy

Połączenie via firewall z węzłem dostep. szkieletu

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

Grid

PBS/Torque, SGE

Globus

Broker - GRMS

Checkpoint restart

Virtual User Account System

CDMSUser Interface

USER

SSH SessionServer

Portal

SSH SessionServer

Wykonanie zadania w systemie CLUSTERIX

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 (1)

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 (GSI-enabled), 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

GRMS (2)

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)

Funkcjonalność systemu GRMS

<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 >

Klaster lokalny Grid !!!

Główne (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.

Zarządzanie kontami

użytkowników w Gridach

Dotychczas użytkownik musiał posiadać oddzielne konto fizyczne na każdej maszynie

System Wirtualnych Użytkowników (VUS)

john jsmith

smithacc01

foo

jsmith

js

System zarządzania System zarządzania zasobamizasobami

++System Wirtualnych System Wirtualnych

UżytkownikówUżytkowników

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

VUS dla Gridu

Grid Node

Plug-in

GAM – GlobusAuthorisation Module

Grid Accounting

Webservice interface

Storage subsystem

SAIS- Site AccountingInformation System

Webservice interface

Storage subsystem

VOIS – VirtualOrganizationInformation System

Webservice interface

Storage subsystem

VOIS – VirtualOrganizationInformation System

Webservice interface

Storage subsystem

SAIS- Site AccountingInformation System

Webservice interface

Storage subsystem

Grid Node

Plug-in

GAM – GlobusAuthorisation Module

Grid Accounting

Webservice interface

Storage subsystem

VOIS – VirtualOrganizationInformation System

Webservice interface

Storage subsystem

Architektura systemu

Autoryzacja - przykładV

O h

iera

rchy

Acc

ount

gr

oups

VO

adm

ins

secu

rity

polic

yN

ode

adm

in

secu

rity

polic

y

Grid Node

guests common powerlogin: login: login: login: login:

login: login: login:

login: login:login:

Clusterix

TUC Cyfronet PSNC

Scientists operators programmers staff Lab_users

Clusterix

TUC Cyfronet PSNC

scientists operators programmers staff Lab_users

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

VUS: Podsumowanie

Grid

PBS/Torque, SGE

Globus

Broker - GRMS

Checkpoint restart

Virtual User Account System

CDMSUser Interface

USER

SSH SessionServer

Portal

SSH SessionServer

Wykonanie zadania 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

Bazowy scenariusz wykonywania zadań w systemie CLUSTERIX

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)

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

Aplikacje pilotowe

W.Dzwinel, K.Boryczko

AGH, Institute of Computer Science

Symulacje wielkiej skali przepływów krwi w mikrokapilarach

(dyskretne modele cząstkowe)

(5x106 cząstek, 16 procesorów)

Powstawanie Powstawanie skrzepów krwiskrzepów krwi

Przewidywanie struktur Przewidywanie struktur białekbiałekAdam Liwo, Cezary Czaplewski, Stanisław Adam Liwo, Cezary Czaplewski, Stanisław

OłdziejOłdziejDepartment of ChemistryDepartment of Chemistry,, University of University of

GdanskGdansk

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

SymulacjeSymulacje przepływówprzepływów w w aeronautyce aeronautyce --

autorskie oprogramowanie autorskie oprogramowanie HADRONHADRON

Prof. Jacek RokickiProf. Jacek Rokicki

Politechnika Politechnika WarszawskaWarszawska

36 x 106 węzłów

3060 x 106 równań nielin.

Projekt HiReTT (1999-2003)

Symulacje wielkiej skali Symulacje wielkiej skali zagadnień zagadnień 3D 3D mechaniki mechaniki

płynówpłynów

Nano-Nano-Technologie 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

PakietPakiet NuscaSNuscaS

Politechnika CzęstochowskaTomasz Olas olas@icis.pcz.pl

Dziedziny zastosowań: różnorodne zjawiska termomechaniczne:

przepływ ciepła, krzepniecie odlewów, naprężenia, pękanie odlewów na gorąco, itd.

Siatka MESSiatka MES oraz jej oraz jej

dekompozycjadekompozycja

Modelowanie Modelowanie krzepnięcia odlewów krzepnięcia odlewów

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ń

Scenariusze wykorzystania zasobów w środowisku gridowym

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)

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 (1)

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

Podsumowanie (2)

Hot Tearing modeling

Microscopic application(sequential)

Manager module

Solidification application(parallel application using MPI)

Stress application(parallel application using MPI)

...

Microscopic application(sequential)

Microscopic application(sequential)

Microscopic application(sequential)

Dziękuję za uwagę !Dziękuję za uwagę !www: https://clusterix.pl

Roman Wyrzykowskiroman@icis.pcz.pl