Dela via


Checklista för produktionsberedskap

Är ditt program och kluster redo att ta produktionstrafik? Att köra och testa ditt program och klustret betyder inte nödvändigtvis att det är redo att gå i produktion. Se till att programmet och klustret fungerar smidigt genom att gå igenom följande checklista. Vi rekommenderar starkt att alla dessa objekt checkas av. Självklart kan du välja att använda alternativa lösningar för ett visst radobjekt (till exempel dina egna diagnostikramverk).

Förutsättningar för produktion

  1. Metodtips för Azure Service Fabric: Programdesign, säkerhet, nätverk, kapacitetsplanering och skalning, infrastruktur som kod och övervakning och diagnostik.
  2. Konfigurera FabricTransport-inställningar om du använder programmeringsmodellen Reliable Actors och kräver säker kommunikation mellan tjänster.
  3. För kluster med fler än 20 kärnor eller 10 noder skapar du en dedikerad primär nodtyp för systemtjänster. Lägg till placeringsbegränsningar för att reservera den primära nodtypen för systemtjänster.
  4. Använd en D2v2 eller högre SKU för den primära nodtypen. Vi rekommenderar att du väljer en SKU med minst 50 GB hårddiskkapacitet.
  5. Produktionskluster måste vara säkra. Ett exempel på hur du konfigurerar ett säkert kluster finns i den här klustermallen. Använd vanliga namn för certifikat och undvik att använda självsignerade certifikat.
  6. Lägg till resursbegränsningar för containrar och tjänster så att de inte förbrukar mer än 75 % av nodresurserna.
  7. Förstå och ange hållbarhetsnivån. Silver eller högre hållbarhetsnivå rekommenderas för nodtyper som kör tillståndskänsliga arbetsbelastningar och som krävs för produktion.
  8. Förstå och välj tillförlitlighetsnivån för nodtypen. Silver eller högre tillförlitlighet rekommenderas och krävs för produktion.
  9. Belastnings- och skalningstesta dina arbetsbelastningar för att identifiera kapacitetskrav för klustret.
  10. Dina tjänster och program övervakas och programloggar genereras och lagras med aviseringar. Se till exempel Lägga till loggning i ditt Service Fabric-program och Övervaka containrar med Azure Monitor-loggar.
  11. Klustret övervakas med aviseringar (till exempel med Azure Monitor-loggar).
  12. Den underliggande vm-skalningsuppsättningsinfrastrukturen övervakas med aviseringar (till exempel med Azure Monitor-loggar.
  13. Klustret har alltid primära och sekundära certifikat (så att du inte blir utelåst).
  14. Underhålla separata kluster för utveckling, mellanlagring och produktion.
  15. Programuppgraderingar och klusteruppgraderingar testas först i utvecklings- och mellanlagringskluster.
  16. Inaktivera automatiska uppgraderingar i produktionskluster och aktivera det för utveckling och mellanlagring av kluster (återställning efter behov).
  17. Upprätta ett mål för återställningspunkt (RPO) för din tjänst och konfigurera en haveriberedskapsprocess och testa den.
  18. Planera för att skala klustret manuellt eller programmatiskt.
  19. Planera för att korrigera dina klusternoder.
  20. Upprätta en CI/CD-pipeline så att dina senaste ändringar kontinuerligt testas. Du kan till exempel använda Azure DevOps eller Jenkins
  21. Testa dina utvecklings- och mellanlagringskluster under belastning med tjänsten för felanalys och orsaka kontrollerat kaos.
  22. Planera för skalning av dina program.

Om du använder programmeringsmodellen Service Fabric Reliable Services eller Reliable Actors måste följande objekt vara avcheckade:

  1. Uppgradera program under lokal utveckling för att kontrollera att din tjänstkod respekterar annulleringstoken i RunAsync metoden och stänger anpassade kommunikationslyssnare.
  2. Undvik vanliga fallgropar när du använder Reliable Collections.
  3. Övervaka .NET CLR-minnesprestandaräknare när du kör belastningstester och kontrollera om det finns höga nivåer av skräpinsamling eller skenande heaptillväxt.
  4. Underhåll offlinesäkerhetskopiering av Reliable Services och Reliable Actors och testa återställningsprocessen.
  5. Instansantalet för den primära nodetype-virtuella datorn bör helst vara lika med minimivärdet för klustertillförlitlighetsnivån. villkor när det är lämpligt för att överskrida nivåminimum omfattar: tillfälligt vid vertikal skalning av din primära NodeTypes Virtual Machine Scale Set SKU.

Valfria metodtips

Även om ovanstående listor är förutsättningar för att gå i produktion, bör följande objekt också beaktas:

  1. Anslut till Service Fabric-hälsomodellen för att utöka den inbyggda hälsoutvärderingen och rapporteringen.
  2. Distribuera en anpassad vakthund som övervakar programmet och rapporterar belastningen för resursutjämning.

Nästa steg