clusters voor iedereen - ghent universitygvernaev/slides/cluster2/cluster2.pdf · configureerbaar...
TRANSCRIPT
MOSIXClusters voor iedereen
Geert Vernaeve & Jan De Beule
Ghent University
Mosix: clusters voor iedereen – p.1/10
Clusters voor iedereen?
• Standaard huis-, tuin- en keukenhardware
(d.i. x86 hardware)• Open source software
Mosix: clusters voor iedereen – p.2/10
Clusters voor iedereen?
• Standaard huis-, tuin- en keukenhardware(d.i. x86 hardware)
• Open source software
Mosix: clusters voor iedereen – p.2/10
Clusters voor iedereen?
• Standaard huis-, tuin- en keukenhardware(d.i. x86 hardware)
• Open source software
Mosix: clusters voor iedereen – p.2/10
Wat is mosix?
Patch voor de Linux kernel die vooral loadbalancing aanbiedt.
Processen kunnen migreren van een zwaarbelaste machine naar een minder zwaar belastemachine.
Het geheel gedraagt zich ongeveer als eenmultiprocessor machine.
Mosix: clusters voor iedereen – p.3/10
Wat is mosix?
Patch voor de Linux kernel die vooral loadbalancing aanbiedt.
Processen kunnen migreren van een zwaarbelaste machine naar een minder zwaar belastemachine.
Het geheel gedraagt zich ongeveer als eenmultiprocessor machine.
Mosix: clusters voor iedereen – p.3/10
Wat is mosix?
Patch voor de Linux kernel die vooral loadbalancing aanbiedt.
Processen kunnen migreren van een zwaarbelaste machine naar een minder zwaar belastemachine.
Het geheel gedraagt zich ongeveer als eenmultiprocessor machine.
Mosix: clusters voor iedereen – p.3/10
Migratie van processen
A
B C
� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �
� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �
� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � �� � � � � � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � �� � � � � � �� � � � � � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � �� � � � � � �
� � � � � �� � � � � �� � � � � �
Stel dat er op A drie pro-gramma’s draaien terwijlB en C niets staan tedoen
Mosix: clusters voor iedereen – p.4/10
Migratie van processen
A
B C
� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �
� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �
� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � �� � � � � � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � �� � � � � � �� � � � � � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � �� � � � � � �
� � � � � �� � � � � �� � � � � �
Processen zullen migre-ren naar B en C: loadbalancing. Er blijft tel-kens een deputy achterop A
Mosix: clusters voor iedereen – p.4/10
Migratie van processen
A
B C
� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �
� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �
� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �� � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � �� � � � � � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � �� � � � � � �� � � � � � �
� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � �� � � � � � �� � � � � � �� � � � � � �
� � � � � �� � � � � �� � � � � �
Het kan altijd ingewik-kelder: programma’skunnen ook op B en Cgestart worden
Mosix: clusters voor iedereen – p.4/10
Kenmerken
• Alle nodes zijn gelijkwaardig (geen ‘master’)
• Fork and forget: programma’s hoeven nietspeciaal aangepast te worden
• Grote schaal (van 2 tot 2000 tot . . . nodes)• Nodes mogen sterk verschillen (386 + dual
Pentium IV; trage/snellenetwerkverbindingen)
• Dynamische load balancing• Geen checkpointing (“niet de taak van de
kernel”)
Mosix: clusters voor iedereen – p.5/10
Kenmerken
• Alle nodes zijn gelijkwaardig (geen ‘master’)• Fork and forget: programma’s hoeven niet
speciaal aangepast te worden (threadsworden evenwel niet verspreid maar blijven bijelkaar)
• Grote schaal (van 2 tot 2000 tot . . . nodes)• Nodes mogen sterk verschillen (386 + dual
Pentium IV; trage/snellenetwerkverbindingen)
• Dynamische load balancing• Geen checkpointing (“niet de taak van de
kernel”)
Mosix: clusters voor iedereen – p.5/10
Kenmerken
• Alle nodes zijn gelijkwaardig (geen ‘master’)• Fork and forget: programma’s hoeven niet
speciaal aangepast te worden• Grote schaal (van 2 tot 2000 tot . . . nodes)
• Nodes mogen sterk verschillen (386 + dualPentium IV; trage/snellenetwerkverbindingen)
• Dynamische load balancing• Geen checkpointing (“niet de taak van de
kernel”)
Mosix: clusters voor iedereen – p.5/10
Kenmerken
• Alle nodes zijn gelijkwaardig (geen ‘master’)• Fork and forget: programma’s hoeven niet
speciaal aangepast te worden• Grote schaal (van 2 tot 2000 tot . . . nodes)• Nodes mogen sterk verschillen (386 + dual
Pentium IV; trage/snellenetwerkverbindingen)
• Dynamische load balancing• Geen checkpointing (“niet de taak van de
kernel”)
Mosix: clusters voor iedereen – p.5/10
Kenmerken
• Alle nodes zijn gelijkwaardig (geen ‘master’)• Fork and forget: programma’s hoeven niet
speciaal aangepast te worden• Grote schaal (van 2 tot 2000 tot . . . nodes)• Nodes mogen sterk verschillen (386 + dual
Pentium IV; trage/snellenetwerkverbindingen)
• Dynamische load balancing : draaiendeprocessen migreren over en weer als er eennode meer of minder werk te doen krijgt
• Geen checkpointing (“niet de taak van dekernel”)
Mosix: clusters voor iedereen – p.5/10
Kenmerken
• Alle nodes zijn gelijkwaardig (geen ‘master’)• Fork and forget: programma’s hoeven niet
speciaal aangepast te worden• Grote schaal (van 2 tot 2000 tot . . . nodes)• Nodes mogen sterk verschillen (386 + dual
Pentium IV; trage/snellenetwerkverbindingen)
• Dynamische load balancing• Geen checkpointing (“niet de taak van de
kernel”)Mosix: clusters voor iedereen – p.5/10
Vereisten
• x86 processor
• identieke kernelversie• programma moet paralleliseerbaar zijn• programma mag geen ‘speciale dingen’ doen
• voor het overige weinig beperkingen:hardware mag sterk heterogeen zijn
• . . .
Mosix: clusters voor iedereen – p.6/10
Vereisten
• x86 processor• identieke kernelversie
• programma moet paralleliseerbaar zijn• programma mag geen ‘speciale dingen’ doen
• voor het overige weinig beperkingen:hardware mag sterk heterogeen zijn
• . . .
Mosix: clusters voor iedereen – p.6/10
Vereisten
• x86 processor• identieke kernelversie• programma moet paralleliseerbaar zijn in
verschillende processen (geen threads)
• programma mag geen ‘speciale dingen’ doen
• voor het overige weinig beperkingen:hardware mag sterk heterogeen zijn
• . . .
Mosix: clusters voor iedereen – p.6/10
Vereisten
• x86 processor• identieke kernelversie• programma moet paralleliseerbaar zijn• programma mag geen ‘speciale dingen’ doen
(direkt I/O devices manipuleren, schrijfbaarshared memory, real-time scheduling, . . . )
• voor het overige weinig beperkingen:hardware mag sterk heterogeen zijn
• . . .
Mosix: clusters voor iedereen – p.6/10
Vereisten
• x86 processor• identieke kernelversie• programma moet paralleliseerbaar zijn• programma mag geen ‘speciale dingen’ doen• voor het overige weinig beperkingen:
hardware mag sterk heterogeen zijn
• . . .
Mosix: clusters voor iedereen – p.6/10
Configureerbaar
• B.v. een ‘parasitaire’ node die wel processennaar de rest van de cluster weg migreertmaar geen inkomende processen van anderenodes aanvaardt
• B.v. bureaucomputer om 6 PM volledig in decluster schakelen, om 8 AM in ‘parasitaire’stand
• Diskless cluster: enkel één node heeft eendisk; vanaf deze node worden alle processengestart en de andere nodes staan enkel tewachten op gemigreerde processen
• . . .
Mosix: clusters voor iedereen – p.7/10
Configureerbaar
• B.v. een ‘parasitaire’ node• B.v. bureaucomputer om 6 PM volledig in de
cluster schakelen, om 8 AM in ‘parasitaire’stand
• Diskless cluster: enkel één node heeft eendisk; vanaf deze node worden alle processengestart en de andere nodes staan enkel tewachten op gemigreerde processen
• . . .
Mosix: clusters voor iedereen – p.7/10
Configureerbaar
• B.v. een ‘parasitaire’ node• B.v. bureaucomputer om 6 PM volledig in de
cluster schakelen, om 8 AM in ‘parasitaire’stand
• Diskless cluster: enkel één node heeft eendisk; vanaf deze node worden alle processengestart en de andere nodes staan enkel tewachten op gemigreerde processen
• . . .
Mosix: clusters voor iedereen – p.7/10
Configureerbaar
• B.v. een ‘parasitaire’ node• B.v. bureaucomputer om 6 PM volledig in de
cluster schakelen, om 8 AM in ‘parasitaire’stand
• Diskless cluster: enkel één node heeft eendisk; vanaf deze node worden alle processengestart en de andere nodes staan enkel tewachten op gemigreerde processen
• . . .
Mosix: clusters voor iedereen – p.7/10
Demo
Mosix: clusters voor iedereen – p.8/10
Tools
• Mosix tools: mosmon, mosctl, mtop, . . .
• Standaard Unix tools: dsh, rsync (eventueelgecombineerd), . . .
Mosix: clusters voor iedereen – p.9/10
Tools
• Mosix tools: mosmon, mosctl, mtop, . . .• Standaard Unix tools: dsh, rsync (eventueel
gecombineerd), . . .
Mosix: clusters voor iedereen – p.9/10
openMosix Summit 2005
openMosix Summit 2005
26–27 februari 2005
in Brussel als onderdeel van fosdem (ziehttp://www.fosdem.org/ enhttp://www.openmosix.org)
Mosix: clusters voor iedereen – p.10/10