Dela via


Skala fristående Service Fabric-kluster

Ett Service Fabric-kluster är en nätverksansluten uppsättning virtuella eller fysiska datorer som dina mikrotjänster distribueras till och hanteras från. En dator eller virtuell dator som ingår i ett kluster kallas för en nod. Kluster kan innehålla potentiellt tusentals noder. När du har skapat ett Service Fabric-kluster kan du skala klustret vågrätt (ändra antalet noder) eller lodrätt (ändra nodernas resurser). Du kan skala klustret när som helst, även när arbetsbelastningar körs i klustret. När klustret skalas skalas även dina program automatiskt.

Varför skalar du klustret? Programkrav ändras över tid. Du kan behöva öka klusterresurserna för att möta ökad programarbetsbelastning eller nätverkstrafik eller minska klusterresurser när efterfrågan minskar.

Skala in och ut eller horisontell skalning

Ändrar antalet noder i klustret. När de nya noderna ansluter till klustret flyttar Klusterresurshanteraren tjänster till dem, vilket minskar belastningen på befintliga noder. Du kan också minska antalet noder om klustrets resurser inte används effektivt. När noder lämnar klustret flyttas tjänsterna från dessa noder och belastningen ökar på de återstående noderna. Om du minskar antalet noder i ett kluster som körs i Azure kan du spara pengar eftersom du betalar för antalet virtuella datorer som du använder och inte arbetsbelastningen på dessa virtuella datorer.

  • Fördelar: Oändlig skala, i teorin. Om ditt program är utformat för skalbarhet kan du aktivera obegränsad tillväxt genom att lägga till fler noder. Verktygen i molnmiljöer gör det enkelt att lägga till eller ta bort noder, så det är enkelt att justera kapaciteten och du betalar bara för de resurser du använder.
  • Nackdelar: Program måste utformas för skalbarhet. Programdatabaser och beständighet kan också kräva ytterligare arkitektoniskt arbete för att skala. Tillförlitliga samlingar i tillståndskänsliga Service Fabric-tjänster gör det dock mycket enklare att skala dina programdata.

Med fristående kluster kan du distribuera Service Fabric-kluster lokalt eller i valfri molnleverantör. Nodtyper består av fysiska datorer eller virtuella datorer, beroende på din distribution. Jämfört med kluster som körs i Azure är processen med att skala ett fristående kluster lite mer involverad. Du måste ändra antalet noder i klustret manuellt och sedan köra en uppgradering av klusterkonfigurationen.

Borttagning av noder kan initiera flera uppgraderingar. Vissa noder är märkta med IsSeedNode=”true” tagg och kan identifieras genom att fråga klustermanifestet med hjälp av Get-ServiceFabricClusterManifest. Det kan ta längre tid än andra att ta bort sådana noder eftersom startnoderna måste flyttas runt i sådana scenarier. Klustret måste ha minst tre noder av primär nodtyp.

Varning

Vi rekommenderar att du inte sänker antalet noder under klusterstorleken på tillförlitlighetsnivån för klustret. Detta påverkar möjligheten för Service Fabric System Services att replikeras i klustret och destabiliserar eller förstör eventuellt klustret.

När du skalar ett fristående kluster bör du ha följande riktlinjer i åtanke:

  • Ersättningen av primära noder bör utföras en nod efter en annan, i stället för att ta bort och sedan lägga till i batchar.
  • Innan du tar bort en nodtyp kontrollerar du om det finns noder som refererar till nodtypen. Ta bort dessa noder innan du tar bort motsvarande nodtyp. När alla motsvarande noder har tagits bort kan du ta bort NodeType från klusterkonfigurationen och påbörja en konfigurationsuppgradering med Start-ServiceFabricClusterConfigurationUpgrade.

Mer information finns i skala ett fristående kluster.

Skala upp och ned eller lodrät skalning

Ändrar resurserna (CPU, minne eller lagring) för noder i klustret.

  • Fördelar: Programvaru- och programarkitekturen förblir densamma.
  • Nackdelar: Begränsad skala, eftersom det finns en gräns för hur mycket du kan öka resurserna på enskilda noder. Stilleståndstid eftersom du måste koppla från fysiska eller virtuella datorer för att kunna lägga till eller ta bort resurser.

Nästa steg