Upravit

Sdílet prostřednictvím


Základní architektura pro AKS v Azure Local

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 Local.

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 ve Windows Serveru. Nejnovější verze AKS běží na Operačním systému Azure Stack HCI verze 23H2. Další informace o nejnovější verzi najdete v dokumentaci k AKS v operačním systému Azure Stack HCI verze 23H2.

Architektura

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

koncepční obrázek základní architektury pro službu Azure Kubernetes Service v místním Azure

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 verze 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í. Místní instance Azure se implementuje jako cluster s 2 až 8 uzly.
  • Azure Kubernetes Service (AKS) v MístnímAzure . 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 místní prostředí Azure, který poskytuje nastavení zabezpečeného spouštění, rozhraní UEFI (United Extensible Firmware Interface) a čipu TPM (Trusted Platform Module). 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í místního Azure nebo alespoň dvou uzlů 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 místních doplňků Azure. Cluster AKS má v Místním Azure následující komponenty:

  • Cluster pro správu Nasaďte cluster pro správu na virtuální počítač s vysokou dostupností, který běží v místním Azure 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 . Místní platforma Azure poskytuje další zjednodušení nasazení konfigurací virtuálního počítače HAProxy nástroje pro vyrovnávání zatížení.

Poznámka:

Informace o tom, jak navrhovat a implementovat koncepty sítě pro nasazování uzlů AKS do místních clusterů Azure a Windows Serveru, 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 Local 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 v Azure Local, č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 Local

AKS v Azure Local 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 místním prostředí Azure.
  • PowerShell. Usnadňuje stahování, konfiguraci a nasazování AKS v Azure Local. 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í místního azure nebo Windows Serveru Datacenter s prostředím služby Active Directory Domain 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 Local, abyste zajistili podrobnější řízení přístupu a oprávnění. Integrace služby Active Directory se službou Azure Kubernetes Service v Azure Local umožňuje uživateli na počítači připojeném k doméně s Windows připojit se k serveru rozhraní API (s 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 místními dodavateli a partnery Azure. Windows PowerShell můžete spustit místně z jednoho z místních počítačů Azure 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 místní instanci Azure. 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 Local, který poskytuje nastavení zabezpečeného spouštění, rozhraní 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í. Pokud chcete ověřit řešení, navštivte místní řešení Azure.
  • 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í

  • Pomocí rozšíření poskytovatele tajných kódů služby Azure Key Vault ve službě AKS v Azure Local můžete dále chránit tajné kódy používané 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 v centru windows Admin Center poskytuje rozhraní řízené průvodcem, které vás provede vytvořením místní instance Azure. 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 místních virtuálních počítačů Azure.
  • 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

  • Pro lepší dostupnost a výkon aplikací, zjednodušenou správu a provoz a snížení celkových nákladů na vlastnictví použijte hardware certifikovaný pro Místní prostředí Azure.
  • Seznamte se s místními limity AKS v Azure. 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 Local 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% místní kapacity Azure 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 Local distribuuje pracovní uzly pro každý fond uzlů v cílovém clusteru pomocí logiky místního umístění Azure.
  • 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 Local.
  • 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