Vad är programklustering?
I datorer är ett kluster en grupp maskiner, vanligtvis datorer eller servrar, dedikerade till en enda uppgift. Övningen av att gruppera servrar på detta sätt kallas serverklustering. Application clustering är serverklustering som använder ett program för att konfigurera servrarna att klustera. Programvaran skapar en anslutning mellan servrarna som gör att de kan utföra uppgifter som belastningsbalansering, felupptäckt och kompensation för enskilda serverfel.
När ett system använder programklustering, betyder det att det använder ett program som har installerats individuellt i var och en av servrarna för att låta servrarna hantera serverbelastning som om de var en gigantisk server. Applikationen hanterar jobbet med att dirigera data till och från de grupperade servrarna. Programklustering står i kontrast till hårdvaruklastring, som använder en annan hårdvara för att klustera servrar. Typer av hårdvaruklusteringsenheter inkluderar nätverkslådor som gör att en uppsättning servrar kan kommunicera som ett kluster, eller ett klusterkabinett som fysiskt inrymmer och klusterar en serie servrar. När hårdvara används för att klustera en uppsättning servrar, hanterar den i allmänhet samma datauppgifter som ett programklusterprogram.
Belastningsbalansering är processen för att fördela datalasten mellan de tillgängliga servrarna. För servrar som har en webbplats på Internet skulle lastbalansering hjälpa till att bestämma vilken server som svarar på vilken webbtrafik begär. Typer av kluster inkluderar symmetriska kluster och asymmetriska kluster. Symmetriska kluster är kluster som fördelar belastningen jämnt mellan alla anslutna servrar, medan asymmetriska kluster reserverar vissa servrar för när huvudservrarna misslyckas. Eftersom symmetriskt klustrade servrar som får en konstant belastning kan vara mer benägna att misslyckas när de träffas med en extra belastning på grund av att en annan server misslyckas, vilket kan ta ner hela systemet, erbjuder asymmetriska servrar ett större skydd mot totalfel.
Fördelarna med att använda grupperade servrar inkluderar ökad skalbarhet och skydd mot driftstopp. Skalbarhet är förmågan att öka eller minska en viss typ av resurser om systemet behöver krympa eller växa. Programklustering gör ett serversystem skalbart eftersom det gör det möjligt för servrar att enkelt läggas till eller tas bort från klustret.
Eftersom ett serverkluster betyder att flera servrar är dedikerade till samma syfte, kan klustering innehålla mer sömlös, felfri serverfunktion. Detta är viktigt för företag som är beroende av försäljning via sina webbplatser. Till och med kort driftstopp på servern kan orsaka stora ekonomiska förluster för en onlinebutik. När ett företag använder ett serverkluster minskar sannolikheten för drifttid avsevärt eftersom det i allmänhet kräver att flera servrar misslyckas med att ta ner ett kluster av servrar.