Cluster Server

Cluster server,  failover en data replicatie

Om de beschikbaarheid van Windows servers en applicaties te verhogen treft u in de markt een heel scala technieken en "buzz" woorden aan die door elkaar worden gebruikt.

Wilt u direct advies over clustering, failover, replicatie, hoge beschikbaarheid en de (on)mogelijkheden, neem dan even contact op. Het kan u veel tijd schelen en een kostbare (niet werkende) investering besparen.

Dit betreft o.a. clustering, high availability, server clustering, replication, data replication, failover, shared storage, Microsoft cluster service, Microsoft Cluster Server, hot standby,  fault tolerant, server mirror, MSCS, disaster recovery, business continuity, redundant server en server redundancy.

In dit artikel volgt een kort overzicht van de verschillende technieken en toepassingen voor het verbeteren van de beschikbaarheid van servers en applicaties ook wel aangeduid als hoge beschikbaarheid voor Windows Servers (high availability). Hierbij wordt ook speciale aandacht gegeven aan clusters die over een WAN worden "getild" en dienst kunnen doen als uitwijk bij calamiteiten. Dit wordt ookwel een streched cluster genoemd.

TIP: Een applicatie of set van applicaties op een fysieke server een hoge beschikbaarheid geven zonder de complexiteit van MS clustering of vmware met een SAN?

Kijk even op de website van neverfail.nl

Index

  1. Waarom Clustering
  2. Definitie van clustering
  3. Wat is een server cluster?
  4. Toepassingen van een cluster server
  5. Clustering en de relatie met replicatie en failover
  6. Problemen bij een cluster
  7. Microsoft Cluster Server  (MSCS)
  8. Laatste ontwikkelingen Windows clustering
  9. Kosten van een Windows cluster server
  10. Relatie van server clustering met TCO
  11. De alternatieven van een Microsoft Cluster Server
  12. De relatie met VMware en hoge beschikbaarheid (binnenkort beschikbaar)
  13. De toekomst van server clustering
  14. Non stop computing
  15. Conclusies

Waarom clustering?

Dit is de grote justificatie: Men wil hoge beschikbaarheid van servers en applicaties verkrijgen. Een van de methodieken hiervoor is gebruik te maken van server clustering. Hiermee kan men een server en de applicatie een hogere beschibaarheid geven. Clustering is slechts één van de wegen om een server een hoge beschikbaarheid te geven.

Binnenkort meer over de mogelijkheden van hoge beschikbaarheid.voor servers en applicaties waarbij toepassingen komen zoals virtualisatie en cloud computing.

Definitie van clustering

Formeel is clustering het verbinden van twee of meer computers op een wijze waarbij zij zich gedragen als één computer. Clustering wordt toegepast voor parallel processing, load balancing en fault tolerance.

Wat is een server cluster?

In het algemeen bestaat een server cluster uit twee of meer fysieke servers (nodes) die zich als één logische server presenteren. Elke server is reeds voorzien van redundante delen zoals CPU, voeding(dual power), koeling (dual fan), harddisken (RAID), memory (ECC) en een dubbele netwerk interface kaart (NIC). Mocht één server door omstandigheden niet goed functioneren, dan neemt  één van de andere server(s) de taken over. In de markt worden verschillende termen door elkaar gebruikt die wel aan elkaar gerelateerd zijn doch toch wezenlijk verschillend zijn. Dit betreft onder andere: server mirroring, replication server, failover, fault tolerant en standby server.

Toepassingen van een cluster server

Een cluster server wordt ingezet om de beschikbaarheid van systemen te vergroten. Over het algemeen beschermt een cluster tegen hardware problemen. Indien een cluster, bestaande uit twee nodes  "uit elkaar wordt getrokken" en één node op een andere locatie wordt geplaatst, dan kan deze techniek onderdeel uitmaken van een business continuity plan.

Afhankelijk van de gekozen oplossing kan een windows cluster ook bescherming bieden bij applicatieproblemen. Enkele toepassingen zijn o.a.

  1. Microsoft Exchange Cluster
  2. Microsoft FileServer Cluster
  3. Oracle Cluster Server en Oracle Real Application Cluster
  4. Microsoft SQL Cluster
  5. Microsoft IIS Cluster
  6. Sharepoint
  7. BlackBerry
  8. Progress

Uitgebreide informatie hierover is te vinden op de de website van NeverFail

Clustering, failover en data replicatie

Replicatie wordt vaak gebruikt om dynamische data veilig te stellen. Data replicatie is een oplossing waarbij een tape back-up onvoldoende garantie biedt met betrekking tot de restoretijden en database integriteit. Data replicatie biedt onder andere backup van open files. Er zijn geavanceerde data replicatie servers beschikbaar die goede oplossingen bieden voor applicatie specifieke beschikbaarheidsvraagstukken. Een bekende speler op de markt van datareplicatie is Double Take.

Een failover server bestaat uit een actieve server en een passieve server. Zij vormen een serverpaar of tandem waarbij de passieve server de actieve server kan overnemen. Deze overname kan handmatig of automatisch plaatsvinden. Tussen de actieve en passieve server vindt data replicatie plaats zodat beide servers een exacte kopie van elkaar zijn of zij maken gebruik van een shared disk. Het serverpaar is aangesloten op een privé netwerk (ten behoeve van server controle) en een publiek netwerk (de clients).

Het privé netwerk wordt over het algemeen aangeduid met "heartbeat" network en vormt de "navelstreng" tussen de actieve en passive server. Tijdens de "switch" worden de lopende processen netjes afgesloten en wederom geactiveerd op de passieve server. In de praktijk duurt een switchover enkele minuten to circa 15 minuten. Tijdens de "switch" is er geen gebruikersactiviteit mogelijk. Een failover die specifiek is ingericht voor een kritische applicatie is één van de alternatieven voor een server cluster. 
<meer over windows failover systemen>

Clustering problemen

De meeste cluster implementaties ondervinden problemen indien het clusterpaar fysiek niet dicht bij elkaar staat. Een cluster beschermt alleen tegen hardware fouten en niet tegen gebruiksfouten, software gebreken, noodzakelijke upgrades en manipulatie. De ondersteuning van tape-libraries en CDROM -array's is beperkt in clustering software. De grootste nadelen van clustering zijn complexiteit en kosten. Hier liggen veel mogelijkheden voor de concurrenten van Microsoft Server Cluster.

Microsoft Cluster Server

Tijdens de introductie van Windows NT 4.0 is server clustering beschikbaar gekomen onder de naam Wolfpack (1997). Het betrof versie 1.0 van MSCS. Onder NT 4.0 kon men maximaal 2 servers onderbrengen in een cluster. Bij Windows 2000 (advanced server/datacenter) is dit opgeschroefd naar maximaal 4 nodes in een cluster. Clustering van Windows server 2003 is alleen mogelijk met de enterprise of datacenter edition van Windows server 2003 . De applicaties die men  gaat verdelen over de nodes dienen "cluster aware" te zijn. Elke cluster node zal dan een deel van de client requests uitvoeren. Bij cluster aware applicaties wordt de workload verdeeld over de verschillende nodes (loadbalancing). Applicaties die "cluster aware" zijn worden binnen Microsoft aangeduid met enterprise edition. Applicaties die niet cluster aware zijn draaien op slechts één node. Hier kan men een failover scenario toepassen om de beschikbaarheid te verhogen.

De relatie van clustering met TCO

In het artikel over TCO wordt een directe relatie gelegd met de downtime van een systeem. De downtime heeft een grote inpact op de Total Cost of Ownership. Met name bij kritische systemen kunnen de kosten van het niet beschikbaar zijn behoorlijk oplopen. Clustering, failover en datareplicatie kunnen de beschikbaarheid van een kritisch systeem aanzienlijk verbeteren.

Server Clustering en disaster recovery

Zodra men hoge beschikbaarheid wil realiseren in combinatie met een zogeheten co-locatie. Dan dient u op uw tellen te passen. Microsoft Clustering wordt een erg kostbare oplossing als u een zogeheten streched cluster wil gaan toepassen. Een streched cluster is een cluster waarbij één node op een andere locatie staat.  Dit scenario wordt vaak toegepast bij de implementatie van een disaster recovery plan.

De alternatieven van een Microsoft Server Cluster

In de praktijk kan een Microsoft server cluster een behoorlijk kostbare voorziening zijn. De kosten worden o.a. bepaald door de enterprise licenties, shared disk space (SAN) en de implementatie / onderhoud van Windows Server Cluster. Kosten kunnen worden gereduceerd door bijvoorbeeld iSCSI toe te passen. Er zijn verder diverse alternatieven voor Microsoft Server Clustering waarbij de kosten aanzienlijk lager liggen en waarbij toch een hoge beschikbaarheid kan worden gegarandeerd.

Eén van de alternatieven betreft de oplossingen van Neverfail. Neverfail maakt het mogelijk om in een aantal situaties de kosten van een Micrososft Server Cluster terug te brengen tot slechts 20% van de totale kosten. Er zijn diverse alternatieven beschikbaar. Het beste alternatief is afhankelijk van uw situatie.

Indien u interesse heeft in een overzicht van de mogelijkheden van high availability, clustering en disaster recovery voor Windows servers, neem dan contact met ons op.