Důležité informace o úložišti pro Azure Kubernetes Service (AKS)

Aby vaše organizace nebo podnik mohli spouštět konkrétní úlohy aplikací, musí navrhnout vhodné funkce na úrovni platformy Azure Kubernetes Service (AKS). Tyto úlohy pravděpodobně mají různé požadavky na úložiště. Při výběru správného řešení úložiště pro vaši aplikaci máte několik aspektů, včetně výkonu, dostupnosti, obnovitelnosti, zabezpečení a nákladů. Cílem tohoto článku je provést výběr správné možnosti nebo kombinace možností pro vaši úlohu.

Kubernetes může spouštět bezstavové i stavové úlohy. Stavové úlohy často vyžadují řešení úložiště pro ukládání stavu. AKS podporuje více integrovaných možností nativního úložiště, mezi které patří spravované databáze, disky (nebo bloky) a soubory a úložiště objektů blob (nebo objektu). Každá z těchto možností nabízí různé skladové položky, velikosti a charakteristiky výkonu. Výběr správné možnosti vyžaduje pečlivé zvážení.

Tento článek popisuje faktory a možnosti, které je potřeba vzít v úvahu v části Vybrat správnou službu úložiště a aspekty návrhu. Poskytuje konkrétní doporučení v doporučeních k návrhu.

Výběr správné služby úložiště

Volba správných skladových položek a velikostí pro počáteční nasazení vyžaduje určitá vyhodnocení a případně testovací prostředí pro testování konceptu nebo testovací prostředí. Toto jsou základní pokyny, které vám pomůžou začít s úložištěm pro AKS:

  • Strukturovaná data: Pro strukturovaná data, která vaše aplikace může ukládat do spravované databáze, která je k dispozici na platformě (například Azure SQL), doporučujeme použít spravovanou databázi.

  • Nestrukturovaná data: Pro nestrukturovaná data, jako jsou fotky, videa a textové dokumenty, použijte úložiště objektů blob. Aplikace to může provést pomocí objektů blob, které jsou připojené jako soubory prostřednictvím systému souborů NFS (Network File System) nebo přístupné jako virtuální systém souborů pomocí BlobFuse. Případně může vaše aplikace přímo číst a zapisovat do úložiště objektů blob.

  • Sdílená data aplikací Pro sdílená data aplikací, která vyžadují vysoký výkon, použijte Azure NetApp Files nebo úroveň Premium služby Azure Files. Pro sdílená konfigurační data, která vyžadují pouze omezený výkon, použijte úroveň Standard služby Azure Files.

  • Šířka pásma pro požadavky aplikace a úložiště Ujistěte se, že uzly mají dostatečnou šířku pásma pro zpracování požadavků aplikací i požadavků na úložiště. Provoz úložiště prochází přes síťový zásobník, ať už je protokol pro přenosy protokol SMB (Server Message Block) nebo NFS.

  • Nízká latence, vysoká IOPS. Disky použijte pro úložiště, pokud vaše aplikace potřebuje konzistentně nízkou latenci pro aplikace pro zasílání zpráv a vysoké vstupně-výstupní operace za sekundu (IOPS) a vysokou propustnost pro spouštění vlastních databází v Kubernetes. Pokud chcete dosáhnout nejlepšího výkonu, zvažte použití disků SSD Úrovně Premium, Azure Premium SSD v2 nebo Azure Ultra Disk Storage.

Aspekty návrhu

Při návrhu úložiště pro AKS je potřeba vzít v úvahu následující aspekty. Zvažte, kde se v prostředí AKS vyžaduje úložiště, a určete nejlepší řešení pro každý požadavek.

Disky operačního systému

U disků operačního systému zvažte následující faktory:

  • Dočasné disky pro operační systém Každý virtuální počítač v Azure vyžaduje pro svůj operační systém disk. Vzhledem k tomu, že uzly Kubernetes jsou dočasné, AKS ve výchozím nastavení používá dočasné disky s operačním systémem na podporovaných velikostech virtuálních počítačů. Další informace o dočasných discích operačního systému najdete v tématu Dočasný operační systém.

  • Spravované disky pro operační systém Pokud je vaše úloha vyžaduje, můžete místo toho pro uzly v clusteru AKS použít běžné spravované disky. To podporuje úlohy, které vyžadují trvalá data na jednotce operačního systému. Další informace o možnostech trvalého úložiště najdete v tématu Možnosti úložiště pro aplikace ve službě Azure Kubernetes Service (AKS).

  • Určení velikosti spravovaných disků Pokud jako disk s operačním systémem vyberete spravovaný disk, ujistěte se, že má odpovídající velikost pro podporu požadavků operačního systému, systému Kubernetes a úloh. Další informace o možnostech a rozdílech najdete v tématu Typy spravovaných disků Azure.

Data aplikací

Některé úlohy potřebují konzistentní úložiště dat pro ukládání aplikačních dat. Pokud vaše aplikace vyžaduje databázi, zvažte prozkoumání spravovaných databází v Azure, které zahrnují následující možnosti:

Řešení úložiště v AKS

Pokud spravovaná databáze nevyhovuje potřebám vaší aplikace, zvažte použití jiné možnosti úložiště, která je dostupná pro AKS k ukládání konzistentních dat. Mezi možnosti patří disková řešení, dočasné disky, řešení založená na souborech, úložiště objektů blob a další možnosti, které nejsou popsané v tomto článku.

Disková řešení

Disky nebo blokové úložiště jsou ideální pro ukládání dat přímo na nezpracované blokové zařízení. Diskové úložiště je ideální pro ukládání dat pro databáze, které jsou hostiteli clusteru Kubernetes. Spravované disky v Azure představují řešení pro získání blokového úložiště.

  • Statické nebo dynamicky vytvořené diskové úložiště Zvažte, jestli chcete použít statický disk, který je vytvořený mimo AKS, nebo jestli chcete, aby služba AKS dynamicky vytvářela diskové úložiště jako pod nebo pody. Úložiště, které se vytváří dynamicky, lze také dynamicky odstranit. Další informace naleznete v tématu:

  • Redundance a výkon Zvažte redundanci úložiště a výkon, který vaše úloha vyžaduje. Další informace naleznete v tématu:

  • Sdílený disk. Zvažte, jestli potřebujete sdílený disk. Další informace o možnostech najdete v tématu Sdílení spravovaného disku Azure.

  • Velikost uzlu pro disky a propustnost Zvažte velikost uzlu Kubernetes. Musí být dostatečně velký, aby podporoval jak počet disků, tak požadavky na agregovanou propustnost. Informace o velikostech a vlastnostech najdete v tématu Velikosti virtuálních počítačů v Azure.

  • Velikost disku a požadovaný výkon Zvažte, jestli je spravovaný disk vhodný pro požadavky na výkon vaší úlohy. Zvýšení výkonu při zvýšení velikosti disku pro disky HDD úrovně Standard, SSD úrovně Standard a SSD úrovně Premium v1. Další informace o spravovaných discích najdete v tématu Typy spravovaných disků Azure.

Řešení dočasných disků

Zvažte, jestli vaše aplikace vyžaduje trvalé, dočasné úložiště nebo místo, kde chcete používat vysoce výkonné jednotky ve virtuálních počítačích optimalizovaných pro úložiště. Pokud se chcete připojit k dočasnému svazku, můžete použít buď prázdnou možnostDir v Kubernetes, nebo ovladač pro dočasný místní svazek CSI. Pro dočasné data, jako je například pomocné místo, doporučujeme prázdnýdir . Pro úložiště v řadě virtuálních počítačů optimalizovaných pro úložiště doporučujeme používat csI s dočasným místním svazkem. Další informace o ovladačích CSI najdete v tématu Ovladače rozhraní služby Container Storage (CSI) ve službě Azure Kubernetes Service (AKS).

Řešení založená na souborech

Zvažte, jestli vaše pody potřebují sdílet systém souborů. Sdílený systém souborů je ideální pro aplikační a konfigurační data, která se čtou a sdílejí více pody v clusteru Kubernetes. Úložiště souborů zpřístupňuje sdílený systém souborů prostřednictvím systému souborů NFS nebo PROTOKOLU SMB/Common Internet File System (CIFS). Azure má dvě řešení pro souborové úložiště: Soubory Azure a Azure NetApp Files.

Soubory Azure

U služby Azure Files zvažte následující možnosti:

  • Statická nebo dynamicky vytvořená sdílená složka Zvažte, jestli chcete použít statickou sdílenou složku vytvořenou mimo AKS, nebo jestli chcete, aby služba AKS vytvořila sdílenou složku dynamicky vaším jménem. Další informace naleznete v tématu:

  • Výkon úrovně Standard nebo Premium. Vyhodnoťte, jestli je dostatečný standardní výkon nebo jestli potřebujete výkon premium ze služby Azure Files.

  • SMB/CIFS nebo NFS. Pokud chcete získat přístup ke službě Azure Files, vyhodnoťte, jestli má vaše úloha používat rozhraní API pro výchozí protokol, SMB/CIFS nebo jestli vaše úloha vyžaduje podporu systému souborů NFS.

  • Síťový model pro přístup. Představte si síťový model, který chcete použít pro přístup ke službě Azure Files: přístup přes přímou veřejnou IP adresu, koncový bod služby nebo privátní propojení.

Azure NetApp Files

Pro Azure NetApp Files zvažte následující možnosti:

Blob Storage

Vezměte v úvahu množství nestrukturovaných dat, která vaše aplikace potřebuje uložit. Služba Azure Blob Storage je přístupná prostřednictvím rozhraní HTTP API nebo prostřednictvím sad SDK. Připojení úložiště objektů blob jako systému souborů do kontejneru nebo podu je ideální pro úlohy aplikací, které mají obrovské objemy nestrukturovaných dat, jako jsou soubory protokolů, obrázky, dokumenty, streamovaná média a data zotavení po havárii.

  • Redundance dat Zvažte, která redundance dat vyhovuje vaší aplikaci. Další informace najdete v článku Možnosti redundance Azure Storage. Redundance dat se vybere na úrovni účtu úložiště.

  • Úroveň výkonu. Zvažte, jakou úroveň výkonu úložiště objektů blob vaše aplikace vyžaduje. Další informace najdete v tématu Horká, studená a archivní úroveň přístupu pro data objektů blob.

  • Metoda ověřování pro přístup. Zvažte, jakou metodu ověřování by vaše aplikace měla použít pro přístup k úložišti objektů blob: klíč úložiště, SAS nebo ID Microsoft Entra. Další informace najdete v tématu Autorizace přístupu k datům ve službě Azure Storage.

  • Rozhraní API pro abstrakci úložiště objektů blob Zvažte, které rozhraní API se má použít. Aplikace, které přistupují k úložišti objektů blob, obvykle používají rozhraní API v aplikaci prostřednictvím jedné ze sad SDK, které abstrahují interakci s úložištěm objektů blob z clusteru Kubernetes. Další informace o knihovnách pro různé programovací jazyky najdete v tématu Úvod do služby Azure Blob Storage.

  • Statické nebo dynamicky vytvořené úložiště objektů blob Zvažte, jestli chcete použít kontejner statického úložiště objektů blob, který je vytvořený mimo AKS, nebo pokud chcete, aby služba AKS kontejner úložiště objektů blob dynamicky vytvářela vaším jménem. Další informace naleznete v tématu:

  • Ovladač pro přístup k úložišti. Zvažte, jak má vaše aplikace přistupovat k úložišti objektů blob. Pokud k němu chcete přistupovat jako k systému souborů, můžete v Kubernetes použít ovladač CSI objektu blob. Tento ovladač umožňuje přístup k úložišti objektů blob prostřednictvím protokolu NFSv3 nebo ovladačem fuse.

Další řešení úložiště

Pokud vaše aplikace vyžaduje něco, co není popsané v tomto článku, zvažte jiné typy úložiště. V Azure existuje několik specializovaných řešení úložiště, která se dají integrovat s Kubernetes. Tento článek tyto informace nepopisuje, ale následující seznam uvádí možná řešení:

  • Azure HPC Cache. HpC Cache zrychluje přístup k datům pro úlohy vysokovýkonné výpočetní techniky (HPC). Díky ukládání souborů do mezipaměti v Azure přináší Azure HPC Cache do vašich stávajících pracovních postupů škálovatelnost, jaká je možná u cloud computingu. Další informace najdete v tématu Integrace služby Azure HPC Cache se službou Azure Kubernetes Service.

  • Azure Data Lake Storage Gen2. Data Lake Storage Gen2 je speciální typ úložiště objektů blob, který je optimalizovaný pro úlohy s velkými objemy dat, jako je Hadoop a Spark. Další informace najdete v tématu Úvod do Azure Data Lake Storage Gen2.

Doporučení k návrhu

Tato část obsahuje doporučení založená na tom, co se pro zákazníky Azure osvědčilo.

  • Použijte Azure Private Link. Pro zabezpečení doporučujeme použít Azure Private Link pro všechna řešení úložiště, která ho podporují. Azure Private Link umožňuje přístup ke službám Azure, jako je Azure Storage a SQL Database, a služby hostované v Azure přes privátní koncový bod ve vaší virtuální síti. Další informace najdete v tématu Co je Azure Private Link?

  • Pro operační systém používejte dočasné disky. Pro disky s operačním systémem doporučujeme používat dočasné disky. Pokud chcete tuto funkci využít, vyberte velikost virtuálního počítače, která má dostatečně velký dočasný disk. Další informace najdete v tématu Dočasné disky s operačním systémem pro virtuální počítače Azure.

  • Používejte spravované databáze. Pro data aplikací doporučujeme používat spravované databáze. Seznam možností databáze najdete v tématu Typy databází v Azure.

Následující části popisují další doporučení pro disky Azure, soubory Azure a úložiště objektů blob.

Disky Azure

Pro disky Azure doporučujeme následující možnosti návrhu:

  • Použijte disky Premium nebo Ultra. Ve většině případů doporučujeme disky Premium nebo Ultra k zajištění odpovídajícího výkonu. Další informace najdete v tématu Azure Disk Storage.

  • Velikost uzlu pro disky a propustnost Doporučujeme zajistit, aby velikost uzlu Kubernetes byla dostatečně velká, aby podporovala počet disků a množství agregované propustnosti. Informace o velikostech a vlastnostech najdete v tématu Velikosti virtuálních počítačů v Azure.

  • Vytvořte snímky trvalých svazků. Doporučujeme pořizovat snímky trvalých svazků, a to buď kvůli zřízení nových svazků, které jsou předem naplněné daty snímku, nebo obnovení existujícího svazku do předchozího stavu pomocí funkce snímku ovladače CSI disků Azure. Další informace najdete v tématu Snímky svazků.

  • Vyhněte se prokládání disků mezi disky. Doporučujeme vyhnout se prokládání mezi více disky v Kubernetes.

  • Použijte PV/PVC. V Kubernetes doporučujeme používat PV a PVC k dynamickému vytváření disků tam, kde je to potřeba. Další informace o trvalém úložišti najdete v tématu Možnosti úložiště pro aplikace ve službě Azure Kubernetes Service (AKS).

Soubory Azure

Pro Azure Files doporučujeme následující možnosti návrhu:

  • Zvolte Premium. Pokud je výkon kritický, doporučujeme použít úroveň Premium.

  • Vytvořte vyhrazené účty úložiště. Doporučujeme pro sdílené složky poskytnout vyhrazené účty úložiště.

  • Zvolte statické nebo dynamicky vytvořené sdílené složky. Doporučujeme pečlivě zvážit, jestli chcete, aby AKS vytvářela sdílené složky nebo jestli je chcete vytvořit staticky mimo Kubernetes. Úložiště, které se vytváří dynamicky, lze také dynamicky odstranit. Další informace o dynamickém vytváření sdílených složek AKS najdete v tématu Dynamické vytváření a používání trvalého svazku se službou Azure Files.

Azure NetApp Files

Pro Azure NetApp Files doporučujeme následující možnosti návrhu:

  • Zvolte úroveň výkonu na základě požadavků aplikace. Azure NetApp Files nabízí 3 úrovně výkonu, které nabízejí různé třídy výkonu. Další informace najdete v tématu Důležité informace o výkonu pro službu Azure NetApp Files.

  • Vytvořte fondy kapacity ve stejné oblasti Azure jako cluster AKS. Další informace najdete v tématu Vytvoření fondu kapacity pro Azure NetApp Files.

  • Pro fondy kapacity použijte typ Automatické QoS.

  • Naplánujte síť. Pro návrh sítě existují dvě možnosti:

    1. Pokud používáte stejnou virtuální síť pro AKS a Azure NetApp Files, vytvořte vyhrazenou podsíť pro Azure NetApp Files a delegujte ji na Microsoft.NetApp/Volumes.
    2. Pokud používáte různé virtuální sítě, vytvořte mezi nimi partnerský vztah virtuálních sítí.

Blob Storage

Pro úložiště objektů blob doporučujeme následující možnosti návrhu:

  • Pro rozhraní s úložištěm použijte sadu SDK. K rozhraní s úložištěm objektů blob doporučujeme použít sadu SDK na úrovni aplikace.

  • Pro rozhraní s úložištěm použijte csI se systémem souborů NFS. Pokud nemůžete použít sadu SDK na úrovni aplikace pro rozhraní s úložištěm objektů blob, doporučujeme použít možnost NFS v3 v ovladači CSI objektu blob. Další informace najdete v tématu Použití ovladače rozhraní CSI (Container Storage Interface) služby Azure Blob Storage.

  • Pro přístup použijte ID Microsoft Entra. Pro autorizaci přístupu k úložišti objektů blob doporučujeme použít ID Microsoft Entra. Nepoužívejte sdílený klíč účtu úložiště. Další informace naleznete v tématu Autorizace přístupu k objektům blob pomocí Microsoft Entra ID.

  • Upravte úrovně vrstev. K přesunu zřídka používaných dat do chladnější úrovně přístupu doporučujeme použít zásady správy životního cyklu. Další informace najdete v tématu Horká, studená a archivní úroveň přístupu pro data objektů blob.

Další kroky

Zjistěte, jak pomocí Kubecost určit rozsah alokace nákladů na nasazení, službu, popisek, pod nebo obor názvů v AKS.