Cluster-computing: een geavanceerde vorm van distributed computing
Inleiding
Lees verder na de advertentie

Cluster-computing is een vorm van distributed computing, vergelijkbaar met parallel of grid-computing, maar die een klasse apart vormt vanwege de vele voordelen die het biedt, zoals een hoge beschikbaarheid, load-balancing en High Performance Computing. GIGABYTE Technology presenteert deze tech-guide over cluster computing.
De term ‘cluster’ verwijst naar een groep computers of servers die via een netwerk aan elkaar zijn gekoppeld om een grotere ‘computer’ te vormen. Een computercluster dat gebaseerd is op deze zogenaamde distributed computing architecture, bestaat meestal uit gestandaardiseerde servers, workstations of zelfs consumenten-pc’s, die via LAN of WAN met elkaar verbonden zijn. De inzet van zo’n cluster kan de prestaties en beschikbaarheid van individuele computers verbeteren. Bovendien bieden clusters over het algemeen een betere return on investment dan een grootschalige supercomputer die dezelfde prestaties levert. Om de ‘Top 500’-lijst van supercomputers in de wereld als voorbeeld te nemen: meer dan de helft daarvan maakt gebruik van een of ander cluster-systeem.
Tip!
Ontworpen voor creators en professionals: configureer jouw eigen ASUS ProArt P16 nu.
Meer is beter
‘Verdeel en heers’ is niet alleen een cliché, maar geldt zeker ook voor moderne computers. Computers werkten vroeger met een enkele processor, die alle taken in de vorm van commando’s een voor een verwerkte totdat een opdracht was voltooid. Daarna ging hij verder met de volgende.
Deze methode heeft zijn beperkingen, omdat de prestaties van de processor bepaalden hoe snel de taken konden worden voltooid. De verwerkingssnelheid en de snelheid waarmee de gegevens werden overdragen kon jarenlang worden verhoogd, maar bereikte uiteindelijk een plafond. Een oplossing hiervoor was het concept ‘parallelisme’, waarbij verschillende delen van dezelfde taak, of een aantal onderling verbonden taken, gelijktijdig door meerdere processors werden uitgevoerd.
Cluster- en parallel-computing
Feitelijk is cluster-computing een vorm van parallellisme. Parallellisme is effectief wanneer je meerdere berekeningen die deel uitmaken van dezelfde taak tegelijkertijd moet uitvoeren. De termen distributed- en parallel-computing worden soms door elkaar gebruikt. Het verschil tussen de twee methoden is dat bij parallel computing meerdere processors dezelfde bronnen binnen één computer delen, terwijl het bij distributed computing (waar cluster-computing onder valt) eerder gaat om het gebruik van meerdere computers die samenwerken. Dit wordt gedaan omdat voor sommige computertaken elke node onafhankelijker moet kunnen werken, terwijl voor andere taken juist een hogere mate van interconnectiviteit tussen de nodes nodig is.
Hoe dan ook, parallellisme maakt inmiddels onderdeel uit van de manier hoe wij met technologie werken. Telkens wanneer je een zoekopdracht in je webbrowser invoert, wordt de taak in feite verdeeld over verschillende nodes op verschillende locaties. De nodes voeren hun zoekactie onafhankelijk uit; er is geen communicatie tussen hen nodig. De resultaten worden vervolgens samengevoegd en teruggestuurd naar het apparaat van de gebruiker.
Dit is anders dan bij parallel computing, waarbij doorgaans veel gegevens moeten worden overgedragen tussen de nodes gedurende het proces. Bij parallel computing worden veelal multicore-systemen en gpu’s ter ondersteuning van cpu’s ingezet.
Onder de overkoepelende term distributed computing vallen cluster-computing, peer-to-peer-computing, grid-computing, en andere, meer esoterische methoden. Hier richten we ons echter op cluster-computing.

Distribueer en heers
Cluster-computing, en andere vormen van gedistribueerd computergebruik waarbij taken worden verdeeld over een groot aantal kleinere computersystemen, zijn gebaseerd op een overeenkomstig principe. In multiprocessorsystemen die uit dezelfde geheugenpool putten, kan schaalbaarheid een probleem worden omdat de effectieve bandbreedte van het geheugen het groeiend aantal processors maar moeilijk kan bijhouden. Bovendien belemmert de onvermijdelijke latentie tussen processors de schaalbaarheid van het systeem. Met andere woorden, een systeem dat veel rekenbronnen deelt, loopt het risico dat er steeds meer processors worden toegevoegd zonder dat de prestaties daadwerkelijk verbeteren. Dit is niet alleen niet kosteneffectief, maar levert ook een aanzienlijk slechter rendement op.
Naast prestaties zijn een hogere beschikbaarheid en betrouwbaarheid ook voordelen die een clustercomputersysteem heeft ten opzichte van een enkel systeem. Zelfs de beste hardware kan te lijden hebben onder gebrekkige software, zoals matig geprogrammeerde drivers. Cluster-computing biedt een aanzienlijk voordeel in termen van risicobeheer.

High Availability, Load Balancing en High Performance
De complexiteit van een cluster-omgeving kan sterk variëren. Een eenvoudig dual node-systeem kan uit slechts twee onderling verbonden computers bestaan. Clusters kunnen worden gebruikt voor zakelijke doeleinden, of ze kunnen de data-intensieve berekeningen op zich nemen die bij wetenschappelijk onderzoek gebruikelijk zijn. Op basis van deze kenmerken kunnen clusters worden gecategoriseerd als High Availability Clusters, Load Balancing Clusters, of High Performance Computing Clusters. Zoals de namen al suggereren, bieden de verschillende typen clusters verschillende voordelen.
- High Availability Clusters
Het belangrijkste verkoopargument van high availability clusters is dat als een node binnen het cluster uitvalt, diens taken automatisch worden overgenomen door een andere node. Nodes binnen het cluster kunnen ook offline worden gehaald voor onderhoud zonder het werk van het hele cluster negatief te beïnvloeden. Op deze manier blijft de dienstverlening constant en ononderbroken.
- Load Balancing Clusters
Een gelijke verdeling van de belasting binnen een cluster is belangrijk. Een load balancer wordt gebruikt om de werklast over verschillende nodes te verdelen. Wanneer je bijvoorbeeld in je webbrowser naar iets zoekt, wordt de zoekopdracht in feite over verschillende nodes verdeeld, wat de zoekactie aanzienlijk versnelt. Load balancing-technieken verschillen per toepassing; zo maken High Availability Clusters en Load Balancing Clusters gewoonlijk gebruik van dezelfde load balancing-methoden.
- High Performance Computing Clusters
In de jaren negentig werd een groep consumenten-pc’s via een LAN aan elkaar gekoppeld en het Beowulf-cluster gecreëerd – het eerste voorbeeld van een High Performance Computing (HPC) Cluster gemaakt van goedkope hardware. Dergelijke clusters beschikken over superieure parallelle rekencapaciteiten, waardoor zij met name geschikt zijn voor wetenschappelijk onderzoek.
De enorme hoeveelheden gegevens die door de nodes worden gegenereerd, worden naar elkaar overgebracht via de uiterst efficiënte, razendsnelle Message Passing Interface (MPI). Hoe de MPI automatisch de soorten nodes binnen het cluster detecteert, hoe de netwerktopologie wordt gekoppeld aan de infrastructuur van de computernode en hoe toepassingen worden geoptimaliseerd afhankelijk van de algehele bandbreedte en latentie – al deze vragen moeten worden beantwoord voordat een HPC-cluster kan worden samengesteld.

GIGABYTE servers: de aanbevolen keuze voor cluster-computing
GIGABYTE Technology is een industrieleider op het gebied van high-performance servers en houdt de vinger aan de pols in de laatste ontwikkelingen in diverse verticale markten. GIGABYTE biedt een volledig assortiment serveroplossingen die kunnen worden ingezet in verschillende nodes en cluster-systemen, zodat GIGABYTE-klanten kunnen kiezen uit een groot aantal flexibele opties.

GIGABYTE kan ook advies en diensten leveren aan klanten die een enorm aantal nodes moeten beheren, en die zich bezighouden met werkzaamheden zoals het opschalen of afschalen van systemen, de installatie van nieuwe besturingssystemen of het uitrollen van nieuwe applicaties. GIGABYTE kan IT-managers helpen bovenop hun cluster-computersystemen te blijven zitten en alles soepel te laten verlopen.
Hier zijn enkele GIGABYTE server oplossingen die ten zeerste aanbevolen worden voor alle cluster-computing behoeften:
Control nodes
Control nodes helpen de gebruiker om het gehele cluster te beheren. Daarvoor is een dergelijk systeem sterk afhankelijk van krachtige rekenprestaties. GIGABYTE’s H-serie High Density Servers en G-serie GPU Servers bieden toonaangevende high density processorconfiguraties, aangedreven door de nieuwste Intel Xeon Scalable-processors of AMD Epyc-processors. De servers bieden grote opslagcapaciteit en ondersteuning voor verschillende soorten GPGPU-versnellers.
Computing nodes
Net als control nodes, vertrouwen computing nodes op krachtige processors. Naast de genoemde G-serie GPU-servers en H-serie High Density-servers, biedt GIGABYTE ook W-serie towerservers/workstations, die als standalone-chassis worden geleverd en eenvoudiger aan te passen en op te schalen zijn.
Bedrijfskritische workloads en betrouwbare connectiviteit
GIGABYTE’s R-serie rackservers bieden een optimale balans tussen efficiëntie en betrouwbaarheid die ideaal is voor bedrijfskritische workloads. Deze veelzijdige oplossingen zijn verkrijgbaar in verschillende formfactors en ondersteunen netwerk- en communicatiearchitecturen, waaronder Ethernet, InfiniBand (IB) en Omni-Path.
Filesharing en opslagnodes
GIGABYTE’s S-serie storageservers beschikken over maximaal 60 bays. Virtualisatietechnieken zoals Software Defined Storage (SDS) helpen te voldoen aan een verscheidenheid van verschillende prestatie-, capaciteits- en kostengerelateerde vereisten.
GIGABYTE biedt ook het GIGABYTE Server Management (GSM), een eigen remote management console (RMC) voor meerdere servers, die gratis verkrijgbaar is. GSM kan worden gebruikt met alle GIGABYTE-servers en ondersteunt Windows en Linux. GSM omvat een complete reeks systeembeheerfuncties, zoals GSM Server, een softwareprogramma waarmee een groot cluster servers in realtime op afstand kan worden beheerd; GSM CLI, een opdrachtregelinterface voor remote beheer; GSM Agent, een softwareprogramma dat informatie ophaalt van elk knooppunt; GSM Mobile, een mobiele app die beheerders in realtime van statusupdates voorziet; en GSM Plugin, een applicatieprogramma-interface die gebruikers toegang biedt tot VMware vCenter voor realtime monitoring en management van serverclusters.
Tip!
Ben je opzoek naar nieuwe hardware, software of accessoires?
Je vindt het in onze computerwinkel!


Praat mee