Kontrolní seznam připravenosti k produkci

Je vaše aplikace a cluster připravené k převzetí produkčního provozu? Spuštění a testování aplikace a cluster nemusí nutně znamenat, že je připravený přejít do produkčního prostředí. Pokračujte v bezproblémovém provozu aplikace a clusteru pomocí následujícího kontrolního seznamu. Důrazně doporučujeme, aby byly všechny tyto položky odškrtnuté. Samozřejmě můžete použít alternativní řešení pro konkrétní položku řádku (například vlastní diagnostické architektury).

Požadavky pro produkční prostředí

  1. Osvědčené postupy Azure Service Fabric: Návrh aplikací, zabezpečení, sítě, plánování kapacity a škálování, infrastruktura jako kód a monitorování a diagnostika.
  2. Pokud používáte programovací model Reliable Actors a vyžadujete zabezpečenou komunikaci mezi službami, nakonfigurujte nastavení FabricTransport.
  3. Pro clustery s více než 20 jádry nebo 10 uzly vytvořte vyhrazený primární typ uzlu pro systémové služby. Přidejte omezení umístění pro rezervaci primárního typu uzlu pro systémové služby.
  4. Pro primární typ uzlu použijte skladovou položku D2v2 nebo vyšší. Doporučujeme vybrat skladovou položku s alespoň 50 GB kapacitou pevného disku.
  5. Produkční clustery musí být zabezpečené. Příklad nastavení zabezpečeného clusteru najdete v této šabloně clusteru. Používejte běžné názvy certifikátů a vyhněte se používání certifikátů podepsaných svým držitelem.
  6. Přidejte omezení prostředků u kontejnerů a služeb, aby spotřebovávali více než 75 % prostředků uzlu.
  7. Seznamte se s úrovní odolnosti a nastavte ji. Pro typy uzlů se spuštěnými stavovými úlohami a požadovanými pro produkční prostředí se doporučuje úroveň odolnosti silver nebo vyšší.
  8. Seznamte se s úrovní spolehlivosti typu uzlu a vyberte ji. Doporučuje se stříbro nebo vyšší spolehlivost a vyžaduje se pro produkční prostředí.
  9. Zátěž a škálování otestujte úlohy, abyste identifikovali požadavky na kapacitu pro váš cluster.
  10. Vaše služby a aplikace se monitorují a protokoly aplikací se generují a ukládají s upozorněním. Podívejte se například na přidání protokolování do aplikace Service Fabric a monitorování kontejnerů pomocí protokolů služby Azure Monitor.
  11. Cluster se monitoruje pomocí upozorňování (například pomocí protokolů služby Azure Monitor).
  12. Základní infrastruktura škálovací sady virtuálních počítačů se monitoruje pomocí upozorňování (například pomocí protokolů služby Azure Monitor.
  13. Cluster má vždy primární a sekundární certifikáty (takže se nezamknete).
  14. Udržujte samostatné clustery pro vývoj, přípravu a produkci.
  15. Upgrady aplikací a upgrady clusteru se nejprve testují ve vývojovém a přípravném clusteru.
  16. Vypněte automatické upgrady v produkčních clusterech a zapněte ho pro vývojové a přípravné clustery (podle potřeby vrácení zpět).
  17. Vytvořte cíl bodu obnovení (RPO) pro vaši službu a nastavte proces zotavení po havárii a otestujte ho.
  18. Naplánujte škálování clusteru ručně nebo programově.
  19. Naplánujte opravu uzlů clusteru.
  20. Vytvořte kanál CI/CD tak, aby se vaše nejnovější změny průběžně testovaly. Například použití Azure DevOps nebo Jenkinse
  21. Otestujte své vývojové a přípravné clustery při zatížení pomocí služby Analýza chyb a navozte řízený chaos.
  22. Naplánujte škálování aplikací.

Pokud používáte programovací model Service Fabric Reliable Services nebo Reliable Actors, je potřeba zkontrolovat následující položky:

  1. Upgradujte aplikace během místního vývoje, abyste zkontrolovali, že kód služby respektuje token zrušení v RunAsync metodě a zavření vlastních naslouchacích procesů komunikace.
  2. Vyhněte se běžným nástrahám při používání Reliable Collections.
  3. Monitorujte čítače výkonu paměti .NET CLR při spouštění zátěžových testů a zkontrolujte vysoké míry růstu uvolňování paměti nebo zprovoznění haldy.
  4. Udržujte offline zálohování Reliable Services a Reliable Actors a otestujte proces obnovení.
  5. Počet instancí virtuálního počítače Primary NodeType by měl být v ideálním případě roven minimální úrovni spolehlivosti clusterů; podmínky, kdy je vhodné překročit minimální úroveň, zahrnuje: dočasně při vertikálním škálování skladové položky Primární nodeTypes Virtual Machine Scale Set.

Volitelné osvědčené postupy

I když výše uvedené seznamy jsou předpokladem pro přechod do produkčního prostředí, měly by se zvážit i následující položky:

  1. Připojte se k modelu stavu Service Fabric pro rozšíření integrovaného vyhodnocení stavu a generování sestav.
  2. Nasaďte vlastní sledovací centrum, které monitoruje zatížení vaší aplikace a hlásí zatížení pro vyrovnávání prostředků.

Další kroky