Upravit

Sdílet prostřednictvím


Základní architektura pro AKS v Azure Stack HCI

Azure Stack HCI
Windows Server

Tento scénář ukazuje, jak navrhnout a implementovat základní architekturu pro Službu Microsoft Azure Kubernetes Service (AKS) běžící v Azure Stack HCI.

Tento článek obsahuje doporučení pro sítě, zabezpečení, identitu, správu a monitorování clusteru na základě obchodních požadavků organizace. Je součástí směrného plánu architektury sady dvou článků. Tady najdete doporučení pro návrh sítě.

Důležité

Informace v tomto článku se týkají AKS ve službě Azure Stack HCI verze 22H2 a AKS-HCI na Windows Serveru. Nejnovější verze AKS běží na Azure Stack HCI 23H2. Další informace o nejnovější verzi najdete v dokumentaci K AKS ve službě Azure Stack HCI verze 23H2.

Architektura

Následující obrázek ukazuje základní architekturu pro azure Kubernetes Service v clusterech s podporou převzetí služeb při selhání azure Stack HCI nebo Windows Server 2019/2022 datacenter:

Koncepční obrázek základní architektury pro Azure Kubernetes Service ve službě Azure Stack HCI

Stáhněte si soubor aplikace Visio s touto architekturou.

Architektura se skládá z následujících komponent a možností:

  • Azure Stack HCI (22H2). Hyperkonvergované řešení clusteru infrastruktury (HCI), které hostuje virtualizované úlohy Windows a Linuxu a jejich úložiště v hybridním místním prostředí. Cluster Azure Stack HCI se implementuje jako cluster s 2 až 8 uzly.
  • Azure Kubernetes Service (AKS) ve službě Azure Stack HCI Místní implementace AKS, která automatizuje spouštění kontejnerizovaných aplikací ve velkém měřítku.
  • Azure Arc. Cloudová služba, která rozšiřuje model správy založený na Azure Resource Manageru na prostředky mimo Azure, včetně virtuálních počítačů mimo Azure, clusterů Kubernetes a kontejnerizovaných databází.
  • Azure Policy. Cloudová služba, která pomáhá vynucovat standardy organizace a vyhodnotit dodržování předpisů ve velkém, vyhodnocením prostředků Azure (včetně prostředků s podporou Arc) na vlastnosti těchto prostředků do obchodních pravidel. Mezi tyto standardy patří také Azure Policy pro Kubernetes, které aplikují zásady na úlohy spuštěné v clusteru.
  • Azure Monitor Cloudová služba, která maximalizuje dostupnost a výkon vašich aplikací a služeb tím, že poskytuje komplexní řešení pro shromažďování, analýzu a akce na telemetrii z cloudových a místních prostředí.
  • Microsoft Defender for Cloud. Jednotný systém správy zabezpečení infrastruktury, který posiluje stav zabezpečení vašich datových center a poskytuje pokročilou ochranu před hrozbami napříč hybridními úlohami v cloudu a v místním prostředí.
  • Azure Automation Poskytuje cloudovou službu automatizace a konfigurace, která podporuje konzistentní správu napříč prostředími Azure a prostředími mimo Azure.
  • Velero. Opensourcový nástroj, který podporuje zálohování na vyžádání a plánované zálohování a obnovuje všechny objekty v clusteru Kubernetes.
  • Azure Blob Storage. Široce škálovatelné a zabezpečené úložiště objektů pro úlohy nativní pro cloud, archivy, datová jezera, vysokovýkonné výpočetní prostředí a strojové učení.

Komponenty

Podrobnosti scénáře

Potenciální případy použití

  • Implementujte vysoce dostupné úlohy založené na kontejnerech v místní implementaci Kubernetes AKS.
  • Automatizace spouštění kontejnerizovaných aplikací ve velkém měřítku
  • Nižší celkové náklady na vlastnictví (TCO) prostřednictvím řešení certifikovaných Microsoftem, cloudové automatizace, centralizované správy a centralizovaného monitorování.

Certifikovaný hardware

Použijte hardware certifikovaný pro Azure Stack HCI, který poskytuje nastavení secure boot, United Extensible Firmware Interface (UEFI) a trusted Platform Module (TPM). Požadavky na výpočetní prostředky závisí na aplikaci a počtu pracovních uzlů, které běží v AKS v clusteru. K zajištění vysoké dostupnosti použijte několik fyzických uzlů pro nasazení Azure Stack HCI nebo alespoň dva uzly clusteru s podporou převzetí služeb při selhání windows Serveru Datacenter. Vyžaduje se, aby všechny servery měly stejný výrobce a model s použitím 64bitových procesorů Intel Nehalem, AMD EPYC nebo novějších kompatibilních procesorů s překladem adres druhé úrovně (SLAT).

Strategie nasazení clusteru

AKS zjednodušuje místní nasazení Kubernetes tím, že poskytuje průvodce nebo rutiny PowerShellu, které můžete použít k nastavení Kubernetes a základních doplňků Azure Stack HCI. Cluster AKS má v Azure Stack HCI následující komponenty:

  • Cluster pro správu Nasaďte cluster pro správu na vysoce dostupný virtuální počítač, který běží v Azure Stack HCI nebo clusteru s podporou převzetí služeb při selhání windows Serveru 2019/2022 Datacenter. Cluster pro správu zodpovídá za nasazení a správu několika clusterů úloh a zahrnuje následující komponenty:
    • Server rozhraní API. Komunikuje s nástroji pro správu.
    • Nástroj pro vyrovnávání zatížení Spravuje pravidla vyrovnávání zatížení pro server rozhraní API clusteru pro správu.
  • Clustery úloh. Implementujte vysoce dostupné komponenty řídicí roviny a součásti pracovních uzlů. Kontejnerizované aplikace běží v clusteru úloh. K zajištění izolace aplikací můžete nasadit až osm clusterů úloh. Cluster úloh se skládá z následujících komponent:
    • Řídicí rovina. Běží v linuxové distribuci a obsahuje komponenty serveru API pro interakci s rozhraním Kubernetes API a distribuovaným úložištěm klíč-hodnota atd. pro ukládání všech konfigurací a dat clusteru.
    • Nástroj pro vyrovnávání zatížení Běží na virtuálním počítači s Linuxem a poskytuje služby s vyrovnáváním zatížení pro cluster úloh.
    • Pracovní uzly. Spusťte v operačním systému Windows nebo Linux, který hostuje kontejnerizované aplikace.
    • Prostředky Kubernetes Pody představují jednu instanci vaší aplikace, která má obvykle mapování 1:1 s kontejnerem, ale některé pody můžou obsahovat více kontejnerů. Nasazení představují jeden nebo více identických podů. Pody a nasazení jsou logicky seskupeny do oboru názvů, který řídí přístup ke správě prostředků.

Síťové požadavky

Kubernetes poskytuje abstraktní vrstvu virtuálním sítím připojením uzlů Kubernetes k virtuální síti. Poskytuje také příchozí a odchozí připojení podů prostřednictvím komponenty kube-proxy . Platforma Azure Stack HCI poskytuje další zjednodušení nasazení konfigurací virtuálního počítače nástroje pro vyrovnávání zatížení HAProxy .

Poznámka:

Informace o tom, jak navrhnout a implementovat koncepty sítě pro nasazení uzlů AKS v clusterech Azure Stack HCI a Windows Server, najdete v druhém článku této série Architektura sítě.

Architektura používá virtuální síť, která přiděluje IP adresy pomocí jedné z následujících možností sítě:

  • Statické sítě IP. Používá statický definovaný fond adres pro všechny objekty v nasazení. Přidává další výhody a zaručuje, že úlohy a aplikace jsou vždy dostupné. Jedná se o doporučený způsob.
  • Sítě DHCP. Přiděluje dynamické IP adresy uzlům Kubernetes, základním virtuálním počítačům a nástrojům pro vyrovnávání zatížení pomocí serveru DHCP (Dynamic Host Configuration Protocol).

Fond virtuálních IP adres je rozsah vyhrazených IP adres, které se používají k přidělování IP adres serveru rozhraní API clusteru Kubernetes a ke službám Kubernetes.

K získání dalších síťových funkcí, jako jsou zásady sítě a řízení toku, použijte Project Calico pro Kubernetes.

Požadavky na úložiště

Pro každý server v clusteru použijte stejné typy jednotek, které mají stejnou velikost a model. Azure Stack HCI funguje s přímo připojenými přílohami SATA (Serial Attached SCSI), SAS (Serial Attached SCSI), Non-Volatile Memory Express (NVMe) nebo trvalými paměťovými jednotkami, které jsou fyzicky připojené k jednomu serveru. U svazků clusteru používá HCI softwarově definovanou technologii úložiště (Prostory úložiště s přímým přístupem) ke kombinování fyzických jednotek ve fondu úložiště kvůli odolnosti proti chybám, škálovatelnosti a výkonu. Aplikace, které běží v Kubernetes ve službě Azure Stack HCI, často očekávají, že pro ně budou dostupné následující možnosti úložiště:

  • Obsahy. Představuje způsob, jak ukládat, načítat a uchovávat data napříč pody a prostřednictvím životního cyklu aplikace.
  • Trvalé svazky. Prostředek úložiště vytvořený a spravovaný rozhraním API Kubernetes, který může existovat po celou dobu životnosti jednotlivého podu.

Zvažte definování tříd úložiště pro různé úrovně a umístění za účelem optimalizace nákladů a výkonu. Třídy úložiště podporují dynamické zřizování trvalých svazků a definují hodnotu reclaimPolicy , která určuje akci základního prostředku úložiště pro správu trvalých svazků při odstranění podu.

Správa AKS v Azure Stack HCI

AKS ve službě Azure Stack HCI můžete spravovat pomocí následujících možností správy:

  • Centrum pro správu Systému Windows. Nabízí intuitivní uživatelské rozhraní pro operátora Kubernetes pro správu životního cyklu clusterů Azure Kubernetes Service v Azure Stack HCI.
  • PowerShell. Usnadňuje stahování, konfiguraci a nasazování AKS v Azure Stack HCI. Modul PowerShellu také podporuje nasazování, konfiguraci dalších clusterů úloh a překonfigurování existujících clusterů.

Požadavky služby Active Directory

Integrujte AKS v clusterech s podporou převzetí služeb při selhání Azure Stack HCI nebo Windows Server Datacenter s prostředím Doména služby Active Directory Services (AD DS) pro zajištění optimální správy. Pokud je to možné, použijte samostatné organizační jednotky pro servery a služby AKS v Azure Stack HCI, abyste zajistili podrobnější řízení přístupu a oprávnění. Integrace služby Active Directory se službou Azure Kubernetes Service ve službě Azure Stack HCI umožňuje uživateli na počítači připojeném k doméně s Windows připojit se k serveru rozhraní API (pomocí kubectl) pomocí přihlašovacích údajů jednotného přihlašování (SSO).

Doporučení

Následující doporučení platí pro většinu scénářů. Pokud nemáte konkrétní požadavek, který je přepíše, postupujte podle doporučení.

Integrace AKS v nasazeních HCI se službou Azure Arc

Pokud chcete minimalizovat celkových nákladů na vlastnictví, integrujte nasazení AKS se službou Azure Arc. Zvažte použití následujících služeb Azure:

  • Azure Monitor Container Insights. Monitoruje výkon úloh kontejnerů, které běží na clusterech s Linuxem i Windows. Shromažďuje metriky paměti a procesoru z kontrolerů, uzlů a kontejnerů prostřednictvím rozhraní API metrik. Pomocí přehledů kontejnerů můžete identifikovat využití paměti a procesoru, zjistit celkový výkon podu, porozumět chování clusteru a nakonfigurovat výstrahy pro proaktivní monitorování.
  • Možnosti automatizace AKS poskytuje širokou škálu možností automatizace s aktualizacemi operačního systému v kombinaci s úplnými aktualizacemi zásobníku, včetně firmwaru a ovladačů poskytovaných dodavateli a partnery Azure Stack HCI. Windows PowerShell můžete spustit místně z jednoho ze serverů Azure Stack HCI nebo vzdáleně z počítače pro správu. Integrace se službou Azure Automation a Azure Arc usnadňuje širokou škálu scénářů automatizace pro virtualizované a kontejnerizované úlohy.
  • Velero a Azure Blob Storage. Velero je opensourcový nástroj, který podporuje zálohování na vyžádání, plánované zálohování a obnovení všech objektů v clusteru Kubernetes pro všechny prostředky definované a uložené v databázi atd. jako definici vlastních prostředků Kubernetes (CRD). Poskytuje zálohování prostředků a svazků Kubernetes pro celý cluster nebo část clusteru pomocí oborů názvů nebo selektorů popisků. Uložte sadu záloh vytvořenou pomocí nástroje Velero v účtu úložiště Azure v kontejneru objektů blob.
  • Kubernetes Service s podporou Azure Arc Poskytuje reprezentaci AKS Azure Resource Manageru v clusteru Azure Stack HCI. Nasaďte agenty s podporou Azure Arc do oboru názvů Kubernetes, abyste shromáždili protokoly a metriky, shromáždili metadata clusteru, verzi clusteru a počet uzlů a zajistili, že agenti vykazují optimální výkon.
  • Azure Policy. Nasaďte a vynucujte integrované zásady zabezpečení v clusteru AKS pomocí služby Azure Policy. K vynucení GitOps můžete použít také vlastní definici zásad, což je postup deklarace požadovaného stavu konfigurace Kubernetes (nasazení, obory názvů atd.) v úložišti Git.
  • Azure Policy pro Kubernetes Spravujte interní zásady clusteru implementované gatekeeperem, nasadí definici zásad do clusteru jako šablonu omezení a hlásí stav dodržování předpisů clusterů Kubernetes z jednoho místa.
  • Azure RBAC. Slouží k přiřazení rolí a ke správě přístupu k Kubernetes s podporou Azure Arc.

Důležité informace

Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.

Spolehlivost

  • Implementujte vysoce dostupný virtuální počítač pro cluster pro správu a několik hostitelů v clusteru Kubernetes, aby splňovalo minimální úroveň dostupnosti pro úlohy.
  • Zálohování a obnovení clusterů úloh pomocí Velero a Azure Blob Storage Definujte cíle dostupnosti a obnovení tak, aby splňovaly obchodní požadavky.
  • Nasazení AKS používají clustering s podporou převzetí služeb při selhání a migraci za provozu pro zajištění vysoké dostupnosti a odolnosti proti chybám. Migrace za provozu je funkce Hyper-V, která umožňuje transparentně přesouvat spuštěné virtuální počítače z jednoho hostitele Hyper-V do jiného bez vnímaných výpadků.
  • Nakonfigurujte nasazení tak, aby používala funkce Kubernetes, jako jsou nasazení, mapování spřažení a sady replik, a zajistěte odolnost podů ve scénářích přerušení.
  • Měli byste zajistit, aby se služby odkazované v části Architektura podporovaly v oblasti, do které je služba Azure Arc nasazená.
  • Zvažte omezení využití veřejných imagí kontejnerů a načítejte pouze z registrů kontejnerů, pro které máte kontrolu nad smlouvou SLA, jako je ACR.

Zabezpečení

Zaměřte se na celý zásobník zabezpečením hostitele a kontejnerů.

Zabezpečení infrastruktury

  • Použijte certifikovaný hardware Azure Stack HCI, který poskytuje nastavení zabezpečeného spouštění, UEFI a TPM. Tyto technologie v kombinaci se zabezpečením založeným na virtualizaci (VBS) pomáhají chránit úlohy citlivé na zabezpečení. Navštivte řešení Azure Stack HCI pro ověřená řešení.
  • Pomocí zabezpečeného spouštění se ujistěte, že server spouští pouze software, který je důvěryhodný výrobcem originálního vybavení.
  • Pomocí rozhraní UEFI můžete řídit proces spouštění serveru.
  • Pomocí čipu TPM můžete ukládat kryptografické klíče a izolovat všechny hardwarové funkce související se zabezpečením.
  • Nástroj BitLocker Drive Encryption umožňuje šifrování neaktivních uložených svazků Prostory úložiště s přímým přístupem.
  • Nakonfigurujte zásady sítě Calico tak, aby definovaly pravidla izolace sítě mezi kontejnery.
  • Pokud chcete zvýšit požadavky na zabezpečení, zvažte nasazení clusteru úloh na vyhrazeném windows serveru.
  • K centrální správě nastavení zabezpečení pro servery a clustery použijte Microsoft Defender pro cloud dostupný prostřednictvím Centra pro správu Windows. Poskytuje ochranu před hrozbami pro clustery Kubernetes s podporou Arc. Rozšíření Microsoft Defender for Cloud shromažďuje data z uzlů v clusteru a odesílá je do back-endu Azure Defenderu for Kubernetes v cloudu za účelem další analýzy.
  • Zabezpečená komunikace s certifikáty
  • Pomocí modulu plug-in Key Management Server (KMS) obměňte šifrovací klíče úložiště tajných kódů Kubernetes (etcd).

Zabezpečení aplikací

  • Rozšíření zprostředkovatele tajných kódů služby Azure Key Vault ve službě AKS ve službě Azure Stack HCI můžete použít k další ochraně tajných kódů používaných různými aplikacemi tím, že je uložíte do služby Azure Key Vault.
  • Pomocí doplňku Open Service Mesh AKS zabezpečte komunikaci mezi službami tím, že povolíte vzájemné tls (mTLS). Tento doplněk můžete také použít k definování a provádění jemně odstupňovaných zásad řízení přístupu pro služby.
  • Pomocí azure Policy pro Kubernetes vynucujte zásady zabezpečení clusteru, jako jsou například žádné privilegované pody.
  • Použijte službu Azure Container Registry, která obsahuje kontrolu ohrožení zabezpečení v úložišti kontejneru.
  • Používejte účty zabezpečení spravované skupinami pro úlohy Windows s hostitelem, který není připojený k doméně. (Platí jenom pro Windows Server.)

Zabezpečení kontejneru

  • Posílení hostitelského prostředí a prostředí démona odebráním nepotřebných služeb
  • Udržujte tajné kódy mimo image a připojte je pouze přes orchestrační modul kontejnerů.
  • Zabezpečte image ve službě Azure Container Registry, která podporuje kontrolu ohrožení zabezpečení a RBAC.
  • Používejte izolaci kontejnerů a vyhněte se spouštění kontejnerů v privilegovaném režimu, aby útočníci zabránili eskalaci oprávnění v případě ohrožení kontejneru.

Optimalizace nákladů

  • Pomocí cenové kalkulačky Azure můžete odhadnout náklady na služby používané v architektuře. Část Optimalizace nákladů v architektuře Microsoft Azure Well-Architected Framework popisuje další osvědčené postupy. Další informace najdete v tématu Podrobnosti o cenách.
  • Zvažte implementaci hyperprocesingu na fyzickém počítači, abyste optimalizovali náklady, protože fakturační jednotka AKS je virtuální jádro.

Provozní dokonalost

  • Průvodce vytvořením clusteru Vyzkoušejte zjednodušené prostředí pro zřizování a správu pomocí Centra pro správu Windows. Průvodce vytvořením clusteru ve Windows Admin Center poskytuje rozhraní řízené průvodcem, které vás provede vytvořením clusteru Azure Stack HCI. Průvodce vytvořením clusteru je kompromisem pro usnadnění a vytváření skriptů pro nasazení, které můžete spravovat pomocí správy zdrojového kódu pro auditování a opakovatelnost napříč několika nasazeními. Podobně Windows Admin Center zjednodušuje proces správy virtuálních počítačů Azure Stack HCI.
  • Azure Arc. Integrace se službou Azure Arc nebo řadou služeb Azure, které poskytují další možnosti správy, údržby a odolnosti (například Azure Monitor a Log Analytics).
  • GitOps. Místo ruční konfigurace komponent Kubernetes použijte automatizované nástroje k použití konfigurací v clusteru Kubernetes, protože tyto konfigurace se kontrolují do zdrojového úložiště. Tento proces se často označuje jako GitOps a oblíbená řešení GitOps pro Kubernetes zahrnují Flux a Argo CD. V této architektuře doporučujeme použít rozšíření GitOps poskytované Microsoftem, které je založené na fluxu.
  • Open Service Mesh (OSM) s podporou Služby Azure Arc. Jednoduchá rozšiřitelná síť nativních cloudových služeb, která uživatelům umožňuje jednotnou správu, zabezpečení a získání funkcí pozorovatelnosti pro vysoce dynamická prostředí mikroslužeb.

Efektivita výkonu

  • Využijte hardware certifikovaný pro Azure Stack HCI pro lepší dostupnost a výkon aplikací, zjednodušenou správu a provoz a nižší celkové náklady na vlastnictví.
  • Seznamte se s limity AKS v Azure Stack HCI. Microsoft podporuje AKS v nasazeních azure Stack s maximálně osmi fyzickými servery na cluster, osm clusterů Kubernetes a 200 virtuálních počítačů.
  • Škálování AKS v Azure Stack HCI závisí na počtu pracovních uzlů a cílových clusterů. Pokud chcete správně nakódovat hardware pro pracovní uzly, musíte předvídat počet podů, kontejnerů a pracovních uzlů v cílovém clusteru. Měli byste zajistit, aby alespoň 15 % kapacity Azure Stack HCI bylo rezervováno pro plánované i neplánované selhání. Z hlediska efektivity výkonu efektivně využívají výpočetní prostředky ke splnění systémových požadavků a k zachování této efektivity při vývoji změn poptávky a technologií. Obecně platí, že pokud jeden uzel přejde během údržby do režimu offline nebo během neplánovaného selhání, může mít zbývající uzly dostatečnou kapacitu ke správě zvýšeného zatížení.
  • Pokud používáte mnoho služeb Kubernetes v každém cílovém clusteru, zvažte zvětšení velikosti virtuálního počítače nástroje pro vyrovnávání zatížení.
  • AKS v Azure Stack HCI distribuuje pracovní uzly pro každý fond uzlů v cílovém clusteru pomocí logiky umístění Azure Stack HCI.
  • Naplánujte rezervace IP adres pro konfiguraci hostitelů AKS, clusterů úloh, serverů rozhraní API clusteru, služeb Kubernetes a aplikačních služeb. Microsoft doporučuje rezervaci minimálně 256 IP adres pro nasazení AKS v Azure Stack HCI.
  • Zvažte implementaci kontroleru příchozího přenosu dat, který funguje ve vrstvě 7 a používá inteligentnější pravidla k distribuci provozu aplikací.
  • Implementujte optimalizaci výkonu sítě pro přidělování šířky pásma provozu.
  • Akceleraci grafického procesoru (GPU) můžete použít pro rozsáhlé úlohy.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autoři:

Další přispěvatelé:

Další kroky