Sdílet prostřednictvím


Přehled dobře architektuře Azure – Azure Service Fabric

Azure Service Fabric je platforma distribuovaných systémů, která usnadňuje balení, nasazování a správu škálovatelných a spolehlivých mikroslužeb a kontejnerů. Tyto prostředky se nasazují do sady virtuálních nebo fyzických počítačů připojených k síti, která se nazývá cluster.

V Azure Service Fabric existují dva modely clusterů: standardní clustery a spravované clustery.

Standardní clustery vyžadují, abyste společně s řadou podpůrných prostředků definovali prostředek clusteru. Tyto prostředky musí být správně nastaveny při nasazení a správně udržovány v průběhu životního cyklu clusteru. Jinak cluster a vaše služby nebudou správně fungovat.

Spravované clustery zjednodušují operace nasazení a správy. Model spravovaného clusteru se skládá z jednoho prostředku spravovaného clusteru Service Fabric, který zapouzdřuje a abstrahuje základní prostředky.

Tento článek primárně popisuje model spravovaného clusteru kvůli jednoduchosti. Výzvy se však provádějí pro všechny zvláštní aspekty, které platí pro standardní model clusteru .

V tomto článku se seznámíte s osvědčenými postupy architektury pro Azure Service Fabric. Pokyny vycházejí z pěti pilířů špičkové architektury:

  • Spolehlivost
  • Zabezpečení
  • Optimalizace nákladů
  • Provozní dokonalost
  • Efektivita výkonu

Požadavky

  • Pochopení pilířů dobře navržená architektura může pomoct vytvořit vysoce kvalitní, stabilní a efektivní cloudovou architekturu. Podívejte se na stránku přehledu architektury Azure Well-Architected Framework a prohlédněte si pět pilířů špičkové architektury.

  • Základní koncepty architektury Azure Service Fabric a mikroslužeb vám můžou pomoct pochopit kontext osvědčených postupů uvedených v tomto článku.

Spolehlivost

Následující části se týkají aspektů návrhu a doporučení konfigurace, které jsou specifické pro Azure Service Fabric a spolehlivost.

Při diskuzi o spolehlivosti pomocí Azure Service Fabric je důležité rozlišovat mezi spolehlivostí clusteru a spolehlivostí úloh. Spolehlivost clusteru je sdílená odpovědnost mezi správcem clusteru Service Fabric a poskytovatelem prostředků, zatímco spolehlivost úloh je doménou vývojáře. Azure Service Fabric má důležité informace a doporučení pro obě tyto role.

V kontrolním seznamu návrhu a v seznamu níže uvedených doporučení se uvádí, jestli je každá volba použitelná pro architekturu clusteru, architekturu úloh nebo obojí.

Další informace o spolehlivosti clusteru Azure Service Fabric najdete v dokumentaci k plánování kapacity.

Další informace o spolehlivosti úloh Azure Service Fabric najdete v subsystému Spolehlivost, který je součástí architektury Service Fabric.

Kontrolní seznam návrhu

Při rozhodování o návrhu pro Azure Service Fabric si projděte principy návrhu pro přidání spolehlivosti architektury.

  • Architektura clusteru: Pro produkční scénáře používejte skladovou položku Standard. Standardní cluster: Pro produkční scénáře používejte úroveň stálosti Silver (5 virtuálních počítačů) nebo vyšší.
  • Architektura clusteru: Pro důležité úlohy zvažte použití Zóny dostupnosti pro clustery Service Fabric.
  • Architektura clusteru: Pro produkční scénáře použijte nástroj pro vyrovnávání zatížení úrovně Standard. Spravované clustery vytvářejí veřejný Load Balancer úrovně Azure Standard a plně kvalifikovaný název domény se statickou veřejnou IP adresou pro primární i sekundární typy uzlů. Můžete také použít vlastní nástroj pro vyrovnávání zatížení, který podporuje nástroje pro vyrovnávání zatížení SKU Basic i Standard.
  • Architektura clusteru: Vytvořte pro své úlohy další typy sekundárních uzlů.

Doporučení

Projděte si následující tabulku doporučení pro optimalizaci konfigurace Azure Service Fabric pro zajištění spolehlivosti služeb:

Doporučení ke službě Azure Service Fabric Výhoda
Architektura clusteru: Pro produkční scénáře používejte skladovou položku Standard. Tato úroveň zajišťuje, že poskytovatel prostředků udržuje spolehlivost clusteru. Standardní cluster: Spravovaný cluster skladové položky Standard poskytuje ekvivalent úrovně stálosti Silver. Abyste toho dosáhli pomocí standardního modelu clusteru, budete muset použít 5 virtuálních počítačů (nebo více).
Architektura clusteru: Zvažte použití Zóny dostupnosti pro clustery Service Fabric. Spravovaný cluster Service Fabric podporuje nasazení, která přesahují více Zóny dostupnosti za účelem zajištění odolnosti zóny. Tato konfigurace zajistí vysokou dostupnost důležitých systémových služeb a vašich aplikací, aby se chránily před kritickými body selhání.
Architektura clusteru: Zvažte použití služby Azure API Management k zveřejnění a snižování zátěže napříč funkcemi pro rozhraní API hostovaná v clusteru. Služba API Management se může integrovat s Service Fabric přímo.
Architektura úloh: Pro stavové scénáře úloh zvažte použití Reliable Services. Model Reliable Services umožňuje vašim službám zůstat v nespolehlivá prostředí, kde vaše počítače selžou nebo dojde k problémům se sítí, nebo v případech, kdy samotné služby narazí na chyby a chyby nebo selhání. U stavových služeb se váš stav zachová i v případě selhání sítě nebo jiných selhání.

Další návrhy najdete v tématu Principy pilíře spolehlivosti.

Zabezpečení

Následující části se týkají aspektů návrhu a doporučení konfigurace, které jsou specifické pro Azure Service Fabric a zabezpečení.

Při diskusi o zabezpečení pomocí Azure Service Fabric je důležité rozlišovat mezi zabezpečením clusteru a zabezpečením úloh. Zabezpečení clusteru je sdílená odpovědnost mezi správcem clusteru Service Fabric a jeho poskytovatelem prostředků, zatímco zabezpečení úloh je doménou vývojáře. Azure Service Fabric má důležité informace a doporučení pro obě tyto role.

V kontrolním seznamu návrhu a v seznamu níže uvedených doporučení se uvádí, jestli je každá volba použitelná pro architekturu clusteru, architekturu úloh nebo obojí.

Další informace o zabezpečení clusteru Azure Service Fabric najdete ve scénářích zabezpečení clusteru Service Fabric.

Další informace o zabezpečení úloh Azure Service Fabric najdete v tématu o zabezpečení aplikací a služeb Service Fabric.

Kontrolní seznam návrhu

Při rozhodování o návrhu pro Azure Service Fabric si projděte principy návrhu pro přidání zabezpečení do architektury.

  • Architektura clusteru: Ujistěte se, že jsou skupiny zabezpečení sítě (NSG) nakonfigurované tak, aby omezovaly tok provozu mezi podsítěmi a typy uzlů. Ujistěte se, že jsou otevřené správné porty pro nasazení aplikací a úlohy.
  • Architektura clusteru: Při použití úložiště tajných kódů Service Fabric k distribuci tajných kódů použijte k šifrování hodnot samostatný certifikát šifrování dat.
  • Architektura clusteru: Nasaďte klientské certifikáty přidáním do služby Azure Key Vault a odkazováním na identifikátor URI ve vašem nasazení.
  • Architektura clusteru: Povolte integraci Microsoft Entra pro váš cluster, aby uživatelé měli přístup k Service Fabric Exploreru pomocí svých přihlašovacích údajů Microsoft Entra. Nedistribuujte klientské certifikáty clusteru mezi uživatele pro přístup k Průzkumníkovi.
  • Architektura clusteru: Pro ověřování klientů použijte certifikáty klientů jen pro čtení a/nebo ověřování Microsoft Entra.
  • Architektury clusteru a úloh: Vytvořte proces pro monitorování data vypršení platnosti klientských certifikátů.
  • Architektury clusterů a úloh: Udržujte samostatné clustery pro vývoj, přípravu a produkci.

Doporučení

Při optimalizaci konfigurace Azure Service Fabric pro zabezpečení zvažte následující doporučení:

Doporučení ke službě Azure Service Fabric Výhoda
Architektura clusteru: Ujistěte se, že jsou skupiny zabezpečení sítě (NSG) nakonfigurované tak, aby omezovaly tok provozu mezi podsítěmi a typy uzlů. Můžete mít například instanci služby API Management (jednu podsíť), front-endovou podsíť (přímo vystavit web) a back-endovou podsíť (přístupná jenom pro front-end).
Architektura clusteru: Nasazení certifikátů služby Key Vault do škálovacích sad virtuálních počítačů clusteru Service Fabric Centralizace ukládání tajných klíčů aplikací ve službě Azure Key Vault umožňuje řídit jejich distribuci. Key Vault výrazně snižuje riziko nechtěného úniku tajných klíčů.
Architektura clusteru: Použijte seznam řízení přístupu (ACL) na klientský certifikát pro váš cluster Service Fabric. Použití seznamu ACL poskytuje další úroveň ověřování.
Architektura clusteru: Pomocí požadavků na prostředky a omezení můžete řídit využití prostředků napříč uzly v clusteru. Vynucování limitů prostředků pomáhá zajistit, aby jedna služba nespotřebovala příliš mnoho prostředků a nestála další služby.
Architektura úloh: Šifrování hodnot tajných kódů balíčku Service Fabric Šifrování tajných hodnot poskytuje další úroveň zabezpečení.
Architektura úloh: Zahrnutí klientských certifikátů do aplikací Service Fabric Aplikace používají klientské certifikáty k ověřování a poskytují příležitosti k zabezpečení na úrovni clusteru i úloh.
Architektura úloh: Ověřování aplikací Service Fabric v prostředcích Azure pomocí spravované identity Použití spravované identity umožňuje bezpečně spravovat přihlašovací údaje v kódu pro ověřování v různých službách, aniž byste je uložili místně na vývojářské pracovní stanici nebo ve správě zdrojového kódu.
Architektury clusteru a úloh: Při hostování nedůvěryhodných aplikací dodržujte osvědčené postupy Service Fabric. Dodržování osvědčených postupů poskytuje standard zabezpečení, který je potřeba dodržovat.

Další návrhy najdete v tématu Principy pilíře zabezpečení.

Azure Advisor vám pomůže zajistit a zlepšit zabezpečení Azure Service Fabric. Doporučení najdete v části Azure Advisor tohoto článku.

Definice zásad

Azure Policy pomáhá udržovat organizační standardy a vyhodnocovat dodržování předpisů napříč vašimi prostředky. Při konfiguraci Azure Service Fabric mějte na paměti následující předdefinované zásady:

  • Clustery Service Fabric by měly mít nastavenou vlastnost ClusterProtectionLevel na EncryptAndSignhodnotu . Toto je výchozí hodnota pro spravované clustery a nedá se změnit. Standardní cluster: Ujistěte se, že jste nastavili clusterProtectionLevel na EncryptAndSignhodnotu .
  • Clustery Service Fabric by měly používat pouze ID Microsoft Entra pro ověřování klientů.

Všechny předdefinované definice zásad související s Azure Service Fabric jsou uvedené v předdefinovaných zásadách – Service Fabric.

Optimalizace nákladů

Následující části zahrnují aspekty návrhu a doporučení konfigurace specifické pro Azure Service Fabric a optimalizaci nákladů.

Při diskusi o optimalizaci nákladů pomocí Azure Service Fabric je důležité rozlišovat mezi náklady na prostředky clusteru a náklady na prostředky úloh. Prostředky clusteru jsou sdílenou odpovědností mezi správcem clusteru Service Fabric a jejich poskytovatelem prostředků, zatímco prostředky úloh jsou doménou vývojáře. Azure Service Fabric má důležité informace a doporučení pro obě tyto role.

V kontrolním seznamu návrhu a v seznamu níže uvedených doporučení se uvádí, jestli je každá volba použitelná pro architekturu clusteru, architekturu úloh nebo obojí.

Pokud chcete optimalizovat náklady na cluster, přejděte do cenové kalkulačky Azure a z dostupných produktů vyberte Azure Service Fabric . V kalkulačce můžete otestovat různé konfigurace a platební plány.

Další informace o cenách úloh Azure Service Fabric najdete v ukázkovém procesu výpočtu nákladů pro plánování aplikací.

Kontrolní seznam návrhu

Při rozhodování o návrhu pro Azure Service Fabric si projděte principy návrhu pro optimalizaci nákladů na architekturu.

  • Architektura clusteru: Vyberte odpovídající skladovou položku virtuálního počítače.
  • Architektura clusteru: Použijte odpovídající typ a velikost uzlu.
  • Architektury clusteru a úloh: Použijte odpovídající vrstvu a velikost spravovaného disku.

Doporučení

Projděte si následující tabulku doporučení pro optimalizaci konfigurace Azure Service Fabric pro náklady:

Doporučení ke službě Azure Service Fabric Výhoda
Architektura clusteru: Vyhněte se skladovým úrovním virtuálních počítačů s nabídkami dočasných disků. Service Fabric ve výchozím nastavení používá spravované disky, takže vyhněte se nabídkám dočasných disků, abyste za nepotřebné prostředky neplatili.
Architektura clusteru: Pokud potřebujete vybrat určitou skladovou položku virtuálního počítače z důvodů kapacity a stane se, že nabízí dočasný disk, zvažte použití dočasné podpory disků pro bezstavové úlohy. Nastavte na maximum prostředky, za které platíte. Použití dočasného disku místo spravovaného disku může snížit náklady na bezstavové úlohy.
Architektury clusterů a úloh: Sladění výběru skladové položky a velikosti spravovaného disku s požadavky na úlohy Při porovnávání výběru s požadavky na úlohy zajistíte, že nebudete platit za nepotřebné prostředky.

Další návrhy najdete v tématu Principy pilíře optimalizace nákladů.

Provozní dokonalost

Následující části se týkají aspektů návrhu a doporučení konfigurace, které jsou specifické pro Azure Service Fabric a efektivitu provozu.

Při diskuzi o zabezpečení pomocí Azure Service Fabric je důležité rozlišovat mezi provozem clusteru a provozem úloh. Operace clusteru je sdílená odpovědnost mezi správcem clusteru Service Fabric a poskytovatelem prostředků, zatímco operace úloh je doménou vývojáře. Azure Service Fabric má důležité informace a doporučení pro obě tyto role.

V kontrolním seznamu návrhu a v seznamu níže uvedených doporučení se uvádí, jestli je každá volba použitelná pro architekturu clusteru, architekturu úloh nebo obojí.

Kontrolní seznam návrhu

Při rozhodování o návrhu pro Azure Service Fabric si projděte principy návrhu pro efektivitu provozu.

  • Architektura clusteru: Příprava řešení pro monitorování clusteru
  • Architektura clusteru: Zkontrolujte zásady stavu clusteru v modelu stavu Service Fabric.
  • Architektura úloh: Příprava řešení pro monitorování aplikací
  • Architektura úloh: Zkontrolujte zásady stavu typu aplikace a služby v modelu stavu Service Fabric.
  • Architektury clusterů a úloh: Příprava řešení pro monitorování infrastruktury
  • Architektury clusteru a úloh: Návrh clusteru s kanály sestavení a verze pro kontinuální integraci a nasazování

Doporučení

Projděte si následující tabulku doporučení pro optimalizaci konfigurace Azure Service Fabric pro zajištění efektivity provozu:

Doporučení ke službě Azure Service Fabric Výhoda
Architektura úloh: Monitorování úloh pomocí Application Insights Application Insights se integruje s platformou Azure, včetně Service Fabric.
Architektury clusteru a úloh: Vytvořte proces pro monitorování data vypršení platnosti klientských certifikátů. Key Vault například nabízí funkci, která odesílá e-mail, když x% uplynula životnost certifikátu.
Architektury clusterů a úloh: V případě předprodukčních clusterů můžete pomocí nástroje Azure Chaos Studio přejít k přerušení služeb při selhání instance škálovací sady virtuálních počítačů. Cvičení scénářů přerušení služeb vám pomůže pochopit, co je v infrastruktuře ohrožené, a jak co nejlépe zmírnit problémy, pokud k nim dojde.
Architektury clusteru a úloh: Monitorování událostí infrastruktury clusteru a kontejneru pomocí služby Azure Monitor Azure Monitor se dobře integruje s platformou Azure, včetně Service Fabric.
Architektury clusteru a úloh: Využijte Azure Pipelines pro řešení kontinuální integrace a nasazování. Azure Pipelines se dobře integruje s platformou Azure, včetně Service Fabric.

Další návrhy najdete v tématu Principy pilíře efektivity provozu.

Efektivita výkonu

Následující část se věnuje doporučením konfigurace, která jsou specifická pro Azure Service Fabric a efektivitu výkonu.

Při diskuzi o zabezpečení pomocí Azure Service Fabric je důležité rozlišovat mezi provozem clusteru a provozem úloh. Výkon clusteru je sdílená odpovědnost mezi správcem clusteru Service Fabric a jeho poskytovatelem prostředků, zatímco výkon úloh je doménou vývojáře. Azure Service Fabric má důležité informace a doporučení pro obě tyto role.

V kontrolním seznamu návrhu a v seznamu níže uvedených doporučení se uvádí, jestli je každá volba použitelná pro architekturu clusteru, architekturu úloh nebo obojí.

Další informace o tom, jak může Azure Service Fabric snížit problémy s výkonem úloh s čítači výkonu Service Fabric, referenčními osvědčenými postupy monitorování a diagnostiky pro Azure Service Fabric.

Kontrolní seznam návrhu

  • Architektura clusteru: Vylučte procesy Service Fabric z programu Windows Defender za účelem zlepšení výkonu.
  • Architektura clusteru: Vyberte odpovídající skladovou položku virtuálního počítače.
  • Architektura úloh: Rozhodněte se, jaký programovací model použijete pro své služby.
  • Architektury clusteru a úloh: Použijte odpovídající vrstvu a velikost spravovaného disku.

Doporučení

Zvažte následující doporučení k optimalizaci konfigurace Azure Service Fabric pro zajištění efektivity výkonu:

Doporučení ke službě Azure Service Fabric Výhoda
Architektura clusteru: Vylučte procesy Service Fabric z programu Windows Defender za účelem zlepšení výkonu. Antivirová ochrana v programu Windows Defender je ve výchozím nastavení nainstalovaná na Windows Serveru 2016 a 2019. Pokud chcete snížit dopad na výkon a režii na spotřebu prostředků, které vzniknou programem Windows Defender, a pokud vaše zásady zabezpečení umožňují vyloučit procesy a cesty pro opensourcový software, můžete vyloučit.
Architektura clusteru: Zvažte použití automatického škálování pro váš cluster. Automatické škálování poskytuje velkou elasticitu a umožňuje přidání nebo snížení počtu uzlů na vyžádání na sekundární typ uzlu. Toto automatizované a elastické chování snižuje režii správy a potenciální obchodní dopad monitorováním a optimalizací objemu uzlů obsluhovaných úloh.
Architektura clusteru: Zvažte použití akcelerovaných síťových služeb. Akcelerované síťové služby umožňují vysoce výkonnou cestu, která obchází hostitele z cesty k datům, což snižuje latenci, zpoždění a využití procesoru u nejnáročnějších síťových úloh.
Architektura clusteru: Zvažování použití šifrování na hostiteli místo služby Azure Disk Encryption (ADE). Tato metoda šifrování zlepšuje ADE tím, že podporuje všechny typy a image operačního systému, včetně vlastních imagí, pro vaše virtuální počítače šifrováním dat ve službě Azure Storage.
Architektura úloh: Projděte si programovací modely Service Fabric a rozhodněte se, jaký model bude nejlépe vyhovovat vašim službám. Service Fabric podporuje několik programovacích modelů. Každý má své vlastní výhody a nevýhody. Znalost dostupnýchprogramovacích modelů vám může pomoct při navrhování služeb, které jsou nejlepší.
Architektura úloh: V případě potřeby využijte volně svázané mikroslužby pro vaše úlohy. Používání mikroslužeb umožňuje využívat funkce Service Fabric na maximum.
Architektura úloh: V případě potřeby využijte architekturu řízenou událostmi pro vaše úlohy. Použití architektury řízené událostmi umožňuje využívat funkce Service Fabric na maximum.
Architektura úloh: Využití zpracování na pozadí pro úlohy, kde je to vhodné. Použití zpracování na pozadí umožňuje využívat funkce Service Fabric na maximum.
Architektury clusteru a úloh: Projděte si různé způsoby škálování řešení v Service Fabric. Škálování můžete použít k povolení maximálního využití prostředků pro vaše řešení.

Další návrhy najdete v tématu Principy pilíře efektivity výkonu.

Doporučení Azure Advisoru

Azure Advisor je individuální cloudový konzultant, který vám pomůže postupovat podle osvědčených postupů pro optimalizaci nasazení Azure. Tady je několik doporučení, která vám pomůžou zlepšit spolehlivost, zabezpečení, nákladovou efektivitu, výkon a efektivitu provozu při používání Azure Service Fabric.

Zabezpečení

  • Clustery Service Fabric by měly mít nastavenou vlastnost ClusterProtectionLevel na EncryptAndSignhodnotu . Toto je výchozí hodnota pro spravované clustery a nedá se změnit. Standardní cluster: Ujistěte se, že jste nastavili clusterProtectionLevel na EncryptAndSignhodnotu .
  • Clustery Service Fabric by měly používat pouze ID Microsoft Entra pro ověřování klientů.

Další materiály

Seznam všech možností, které máte při vytváření a údržbě clusteru, najdete v článku s možnostmi konfigurace spravovaného clusteru Azure Service Fabric.

Projděte si základní informace o architektuře aplikací Azure, kde najdete pokyny k vývoji úloh. Service Fabric je sice možné používat výhradně jako platformu pro hostování kontejnerů, ale díky dobře navrženým úlohám využívá plnou funkčnost Service Fabric.

Další kroky

Při vytváření spravovaného clusteru Service Fabric pomocí šablony ARM nebo webu Azure Portal použijte tato doporučení: