Cíle škálovatelnosti a výkonu pro Azure Files a Synchronizace souborů Azure
Azure Files nabízí plně spravované sdílené složky v cloudu, které jsou přístupné prostřednictvím protokolů systému souborů SMB (Server Message Block) a systému souborů NFS (Network File System). Tento článek popisuje cíle škálovatelnosti a výkonu pro účty úložiště Azure, Soubory Azure a Synchronizace souborů Azure.
Zde uvedené cíle můžou být ovlivněné jinými proměnnými ve vašem nasazení. Výkon vstupně-výstupních operací souboru může mít vliv například na chování klienta SMB a dostupnou šířku pásma sítě. Model využití byste měli otestovat, abyste zjistili, jestli škálovatelnost a výkon služby Azure Files splňují vaše požadavky.
Platí pro
Typ sdílené složky | SMB | NFS |
---|---|---|
Sdílené složky úrovně Standard (GPv2), LRS/ZRS | ||
Sdílené složky úrovně Standard (GPv2), GRS/GZRS | ||
Sdílené složky úrovně Premium (FileStorage), LRS/ZRS |
Cíle škálování služby Azure Files
Sdílené složky Azure se nasazují do účtů úložiště, což jsou objekty nejvyšší úrovně, které představují sdílený fond úložiště. Tento fond úložiště lze použít k nasazení více sdílených složek. Proto je potřeba vzít v úvahu tři kategorie: účty úložiště, sdílené složky Azure a jednotlivé soubory.
Cíle škálování účtu úložiště
Cíle škálování účtu úložiště se vztahují na úrovni účtu úložiště. Existují dva hlavní typy účtů úložiště pro Azure Files:
Účty úložiště pro obecné účely verze 2 (GPv2): Účty úložiště GPv2 umožňují nasadit sdílené složky Azure na hardwaru založeném na standardu nebo pevném disku (založeném na pevných discích). Kromě ukládání sdílených složek Azure můžou účty úložiště GPv2 ukládat další prostředky úložiště, jako jsou kontejnery objektů blob, fronty nebo tabulky. Sdílené složky je možné nasadit do optimalizovaných transakcí (výchozí), horké nebo studené úrovně.
Účty úložiště FileStorage: Účty úložiště FileStorage umožňují nasadit sdílené složky Azure na hardwaru založeném na discích SSD (Premium/Solid-State Disk). Účty FileStorage je možné použít pouze k ukládání sdílených složek Azure; V účtu FileStorage není možné nasadit žádné jiné prostředky úložiště (kontejnery objektů blob, fronty, tabulky atd.).
Atribut | Účty úložiště GPv2 (standard) | Účty úložiště FileStorage (Premium) |
---|---|---|
Počet účtů úložiště na oblast na předplatné | 2501 | 2501 |
Maximální kapacita účtu úložiště | 5 PiB2 | 100 TiB (zřízeno) |
Maximální počet sdílených složek | Bez omezení | Neomezená, celková zřízená velikost všech sdílených složek musí být menší než maximální kapacita účtu úložiště. |
Maximální četnost souběžných požadavků | 20 000 IOPS2 | 102 400 IOPS |
Propustnost (příchozí a výchozí přenos dat) pro LRS/GRS
|
|
10 340 MiB/s |
Propustnost (příchozí a výchozí přenos dat) pro ZRS
|
|
10 340 MiB/s |
Propustnost (příchozí a výchozí přenos dat) pro kombinace redundance nebo oblasti, které nejsou uvedené v předchozím řádku |
|
10 340 MiB/s |
Maximální počet pravidel virtuální sítě | 200 | 200 |
Maximální počet pravidel IP adres | 200 | 200 |
Operace čtení správy | 800 za 5 minut | 800 za 5 minut |
Operace zápisu správy | 10 za sekundu/1200 za hodinu | 10 za sekundu/1200 za hodinu |
Operace se seznamem pro správu | 100 za 5 minut | 100 za 5 minut |
1 S navýšením kvóty můžete vytvořit až 500 účtů úložiště se standardními koncovými body pro každou oblast. Další informace najdete v tématu Zvýšení kvót účtu služby Azure Storage. 2 Účty úložiště pro obecné účely verze 2 podporují vyšší limity kapacity a vyšší limity pro příchozí přenos dat podle požadavku. Pokud chcete požádat o navýšení limitů účtu, kontaktujte podporu Azure.
Cíle škálování sdílených složek Azure
Cíle škálování sdílených složek Azure se vztahují na úrovni sdílené složky.
Atribut | Standardní sdílené složky1 | Sdílené složky Úrovně Premium |
---|---|---|
Minimální velikost sdílené složky | Bez minimálního | 100 GiB (zřízeno) |
Zřízená velikost – zvětšení nebo zmenšení jednotky | – | 1 GiB |
Maximální velikost sdílené složky | 100 TiB | 100 TiB |
Maximální počet souborů ve sdílené složce | Bez omezení | Bez omezení |
Maximální rychlost požadavků (maximální počet vstupně-výstupních operací za sekundu) | 20,000 |
|
Propustnost (příchozí a výchozí přenos dat) pro jednu sdílenou složku (MiB/s) | Až do limitů účtu úložiště | 100 + CEILING(0.04 * ProvisionedStorageGiB) + CEILING(0.06 * ProvisionedStorageGiB) |
Maximální počet snímků sdílené složky | 200 snímků | 200 snímků |
Maximální délka názvu objektu3 (úplný název cesty včetně všech adresářů, názvů souborů a znaků zpětného lomítka) | 2 048 znaků | 2 048 znaků |
Maximální délka jednotlivé komponentypathname 2 (v cestě \A\B\C\D každé písmeno představuje adresář nebo soubor, který je samostatnou komponentou) | 255 znaků | 255 znaků |
Omezení pevného propojení (jenom NFS) | – | 178 |
Maximální počet kanálů SMB Multichannel | – | 4 |
Maximální počet uložených zásad přístupu na sdílenou složku | 5 | 5 |
1 Omezení standardních sdílených složek platí pro všechny tři úrovně dostupné pro standardní sdílené složky: optimalizované transakce, horká a studená.
2 Azure Files vynucuje určitá pravidla pojmenování pro názvy adresářů a souborů.
Cílové rozsahy souborů
Cíle škálování souborů platí pro jednotlivé soubory uložené ve sdílených složkách Azure.
Atribut | Soubory ve standardních sdílených složkách | Soubory ve sdílených složkách úrovně Premium |
---|---|---|
Maximální velikost souboru | 4 TiB | 4 TiB |
Maximální četnost souběžných požadavků | 1 000 IOPS | Až 8 0001 |
Maximální příchozí přenos dat pro soubor | 60 MiB/s | 200 MiB/s (až 1 GiB/s s pomocí SMB Multichannel)2 |
Maximální výchozí přenos dat pro soubor | 60 MiB/s | 300 MiB/s (až 1 GiB/s s pomocí SMB Multichannel)2 |
Maximální počet souběžných popisovačů pro kořenový adresář3 | 10 000 úchytů | 10 000 úchytů |
Maximální počet souběžných popisovačů na soubor a adresář3 | 2 000 popisovačů | 2 000 popisovačů |
1 platí pro vstupně-výstupní operace pro čtení a zápis (obvykle menší vstupně-výstupní operace menší nebo rovno 64 KiB). Operace metadat, kromě čtení a zápisu, můžou být nižší. Jedná se o měkké limity a k omezování může dojít i za hranicí těchto limitů.
2 Na základě limitů sítě počítačů, dostupné šířky pásma, velikostí vstupně-výstupních operací, hloubky fronty a dalších faktorů. Podrobnosti najdete v tématu Výkon SMB Multichannel.
3 Azure Files podporuje 10 000 otevřených popisovačů v kořenovém adresáři a 2 000 otevřených popisovačů na soubor a adresář v rámci sdílené složky. Počet aktivníchuživatelůch Pokud vaše aplikace neotevřou popisovač v kořenovém adresáři, azure Files může podporovat více než 10 000 aktivních uživatelů na sdílenou složku. Pokud ale k ukládání imagí disků pro úlohy virtuálních klientských počítačů velkého rozsahu používáte Soubory Azure, může dojít k výpadku popisovačů kořenového adresáře nebo jednotlivých souborů nebo adresářů. V takovém případě možná budete muset použít více sdílených složek Azure. Další informace najdete v doprovodných materiálech k nastavení velikosti služby Azure Files pro Azure Virtual Desktop.
Pokyny k nastavení velikosti služby Azure Files pro Azure Virtual Desktop
Oblíbeným případem použití pro Azure Files je ukládání kontejnerů profilů uživatelů a imagí disků pro Azure Virtual Desktop pomocí fsLogix nebo připojení aplikace. V nasazeních Azure Virtual Desktopu ve velkém měřítku můžete využít popisovače kořenového adresáře nebo jednoho souboru nebo adresáře, pokud používáte jednu sdílenou složku Azure. Tato část popisuje, jak se popisovače využívají různými typy imagí disků, a poskytuje pokyny k určení velikosti v závislosti na používané technologii.
FSLogix
Pokud používáte FSLogix se službou Azure Virtual Desktop, kontejnery profilů uživatelů jsou soubory virtuálního pevného disku (VHD) nebo virtuálního pevného disku Hyper-V (VHDX) a jsou připojené v kontextu uživatele, nikoli v kontextu systému. Každý uživatel otevře jeden popisovač kořenového adresáře, který by měl být ve sdílené složce. Azure Files může podporovat maximálně 10 000 uživatelů za předpokladu, že máte sdílenou složku (\\storageaccount.file.core.windows.net\sharename
) + adresář profilu (%sid%_%username%
) + kontejner profilu (profile_%username.vhd(x)
).
Pokud dosáhnete limitu 10 000 souběžných popisovačů kořenového adresáře nebo uživatelů dochází k nízkému výkonu, zkuste použít další sdílenou složku Azure a distribuovat kontejnery mezi sdílené složky.
Upozorňující
Azure Files sice může podporovat až 10 000 souběžných uživatelů z jedné sdílené složky, ale je důležité správně otestovat úlohy s velikostí a typem sdílené složky, kterou jste vytvořili. Vaše požadavky se můžou lišit v závislosti na uživatelích, velikosti profilu a úlohách.
Pokud máte například 2 400 souběžných uživatelů, budete potřebovat 2 400 popisovačů v kořenovém adresáři (jeden pro každého uživatele), což je pod limitem 10 000 otevřených popisovačů. Pro uživatele FSLogix je dosažení limitu 2 000 otevřených souborů a popisovačů adresáře extrémně nepravděpodobné. Pokud máte jeden kontejner profilu FSLogix na uživatele, spotřebovali byste pouze dva popisovače souborů a adresářů: jeden pro adresář profilu a jeden pro soubor kontejneru profilu. Pokud mají uživatelé dva kontejnery (profil a ODFC), budete pro soubor ODFC potřebovat jeden další popisovač.
Připojení aplikace pomocí CimFS
Pokud používáte připojení aplikace MSIX nebo připojení aplikace k dynamickému připojení aplikací, můžete pro image disků použít souborový systém složených obrázků (CimFS) nebo soubory VHD/VHDX. V obou směrech platí omezení škálování pro každý virtuální počítač, který image připojuje, nikoli na uživatele. Počet uživatelů je při výpočtu limitů škálování irelevantní. Když se virtuální počítač spustí, připojí image disku i v případě, že existuje nula uživatelů.
Pokud používáte připojení aplikace s CimFS, image disku využívají pouze popisovače v souborech bitových kopií disku. Nevyužívají popisovače v kořenovém adresáři nebo adresáři obsahujícím image disku. Vzhledem k tomu, že image CimFS je kombinací souboru .cim a alespoň dvou dalších souborů, pro každý virtuální počítač, který připojí diskovou image, budete potřebovat jeden popisovač pro tři soubory v adresáři. Pokud tedy máte 100 virtuálních počítačů, budete potřebovat 300 popisovačů souborů.
Pokud počet virtuálních počítačů na aplikaci překročí 2 000, může dojít k výpadku popisovačů souborů. V tomto případě použijte další sdílenou složku Azure.
Připojení aplikace pomocí VHD/VHDX
Pokud používáte připojení aplikace se soubory VHD/VHDX, připojí se soubory v kontextu systému, ne v kontextu uživatele a jsou sdílené a jen pro čtení. Připojovací systém může využívat více než jeden popisovač v souboru VHDX. Pokud chcete zůstat v limitech škálování služby Azure Files, musí být počet virtuálních počítačů vynásobený počtem aplikací menší než 10 000 a počet virtuálních počítačů na aplikaci nesmí překročit 2 000. Omezení je tedy podle toho, co jste dosáhli jako první.
V tomto scénáři můžete narazit na limit počtu souborů nebo adresářů s 2 000 připojeními jednoho VHD/VHDX. Nebo pokud sdílená složka obsahuje více souborů VHD/VHDX, mohli byste nejprve stisknout limit kořenového adresáře. Například 100 virtuálních počítačů, které připojí 100 sdílených souborů VHDX, dosáhne limitu 10 000 popisovačů kořenového adresáře.
V jiném příkladu bude 100 virtuálních počítačů přistupujících k 20 aplikacím vyžadovat 2 000 popisovačů kořenového adresáře (100 x 20 = 2 000), což je pro popisovače kořenového adresáře v rozsahu 10 000. Pro každý virtuální počítač, který připojí image VHD(X), budete také potřebovat popisovač souboru a adresář/složku, takže v tomto případě 200 popisovačů (100 popisovačů souborů + 100 popisovačů adresáře), což je pohodlně pod limitem 2 000 popisovačů na soubor nebo adresář.
Pokud dosáhnete limitů maximálního počtu souběžných popisovačů kořenového adresáře nebo jednoho souboru nebo adresáře, použijte další sdílenou složku Azure.
Cíle škálování v Synchronizaci souborů Azure
Následující tabulka uvádí, které cíle jsou měkké, představují hranice testované Microsoftem a pevné, což značí vynucené maximum:
Prostředek | Cíl | Pevný limit |
---|---|---|
Služby synchronizace úložiště na oblast | 100 služeb synchronizace úložiště | Ano |
Služby synchronizace úložiště na předplatné | 15 Služeb synchronizace úložiště | Ano |
Skupiny synchronizace na službu synchronizace úložiště | 200 skupin synchronizace | Yes |
Registrované servery na službu synchronizace úložiště | 99 serverů | Ano |
Privátní koncové body na službu synchronizace úložiště | 100 privátních koncových bodů | Ano |
Koncové body cloudu na skupinu synchronizace | 1 koncový bod cloudu | Yes |
Koncové body serveru na skupinu synchronizace | 100 koncových bodů serveru | Yes |
Koncové body serveru na server | 30 koncových bodů serveru | Yes |
Objekty systému souborů (adresáře a soubory) na skupinu synchronizace | 100 milionů objektů | No |
Maximální počet objektů systému souborů (adresářů a souborů) v adresáři (ne rekurzivní) | 5 milionů objektů | Yes |
Maximální velikost popisovače zabezpečení objektu (adresáře a soubory) | 64 KiB | Yes |
Velikost souboru | 100 GiB | No |
Minimální velikost souboru, který má být přesunutý do jiné vrstvy | Na základě velikosti clusteru systému souborů (dvojnásobek velikosti clusteru systému souborů). Pokud velikost clusteru systému souborů je například 4 KiB, minimální velikost souboru bude 8 KiB. | Ano |
Poznámka:
Koncový bod Synchronizace souborů Azure může vertikálně navýšit kapacitu na velikost sdílené složky Azure. Pokud dosáhnete limitu velikosti sdílené složky Azure, synchronizace nebude moct fungovat.
Metriky výkonu v Synchronizaci souborů Azure
Vzhledem k tomu, že agent Synchronizace souborů Azure běží na počítači s Windows Serverem, který se připojuje ke sdíleným složkám Azure, efektivní výkon synchronizace závisí na řadě faktorů ve vaší infrastruktuře: Windows Server a základní konfiguraci disku, šířku pásma sítě mezi serverem a úložištěm Azure, velikostí souboru, celkovou velikostí datové sady a aktivitou v datové sadě. Vzhledem k tomu, že Synchronizace souborů Azure funguje na úrovni souboru, měly by se výkonové charakteristiky řešení založeného na Synchronizaci souborů Azure měřit počtem objektů (souborů a adresářů) zpracovaných za sekundu.
Pro Synchronizaci souborů Azure je výkon kritický ve dvou fázích:
- Počáteční jednorázové zřizování: Pokud chcete optimalizovat výkon při počátečním zřizování, projděte si podrobnosti o optimálním nasazení v tématu Onboarding s využitím Synchronizace souborů Azure.
- Průběžná synchronizace: Po prvotním naplnění sdílených složek Azure daty Synchronizace souborů Azure synchronizuje několik koncových bodů.
Poznámka:
Když se současně synchronizuje mnoho koncových bodů serveru ve stejné skupině synchronizace, snaží se o prostředky cloudových služeb. Výsledkem je dopad na výkon nahrávání. V extrémních případech některé relace synchronizace nebudou mít přístup k prostředkům a nezdaří se. Tyto relace synchronizace se však krátce obnoví a nakonec se po snížení zahlcení úspěšně dokončí.
Výsledky interního testu
Abychom vám pomohli naplánovat nasazení pro každou fázi (počáteční jednorázové zřizování a průběžná synchronizace), tady jsou výsledky, které jsme zaznamenali během interního testování v systému s následující konfigurací:
Konfigurace systému | Podrobnosti |
---|---|
Procesor | 64 virtuálních jader s mezipamětí L3 64 MiB |
Memory (Paměť) | 128 GiB |
Disk | Disky SAS s RAID 10 s mezipamětí zálohovanou baterií |
Síť | 1Gb/s síť |
Úloha | Souborový server pro obecné účely |
Počáteční jednorázové zřízení
Počáteční jednorázové zřízení | Podrobnosti |
---|---|
Počet objektů | 25 milionů objektů |
Velikost datové sady | cca. 4,7 TiB |
Průměrná velikost souboru | cca. 200 KiB (největší soubor: 100 GiB) |
Počáteční výčet změn v cloudu | 80 objektů za sekundu |
Propustnost odesílání | 20 objektů za sekundu na skupinu synchronizace |
Propustnost stahování oboru názvů | 400 objektů za sekundu |
Počáteční výčet změn cloudu: Při vytvoření nové skupiny synchronizace je první krok, který se spustí. V tomto procesu systém vypíše všechny položky ve sdílené složce Azure. Během tohoto procesu nebude žádná aktivita synchronizace. Z koncového bodu cloudu do koncového bodu serveru se nestáhnou žádné položky a z koncového bodu serveru do koncového bodu cloudu se nenahrají žádné položky. Po dokončení počátečního výčtu změn cloudu se aktivita synchronizace obnoví.
Rychlost zpracování je 80 objektů za sekundu. Můžete odhadnout dobu, kterou bude trvat dokončení počátečního výčtu změn v cloudu, a to tak, že určíte počet položek ve sdílené cloudové složce a pomocí následujícího vzorce získáte čas ve dnech.
Čas (ve dnech) pro počáteční výčet cloudu = (počet objektů v koncovém bodu cloudu)/(80 × 60 × 60 × 24)
Počáteční synchronizace dat z Windows Serveru do sdílené složky Azure: Mnoho nasazení služby Synchronizace souborů Azure začíná prázdnou sdílenou složkou Azure, protože všechna data jsou na Windows Serveru. V těchto případech je počáteční výčet změn v cloudu rychlý a většina času se věnuje synchronizaci změn z Windows Serveru do sdílených složek Azure.
Synchronizace nahrává data do sdílené složky Azure, ale na místním souborovém serveru nedojde k výpadkům a správci můžou nastavit limity sítě, aby omezili šířku pásma používanou pro nahrávání dat na pozadí.
Počáteční synchronizace je obvykle omezená rychlostí počátečního nahrávání 20 souborů za sekundu na skupinu synchronizace. Zákazníci můžou pomocí následujícího vzorce odhadnout čas ve dnech potřebný k nahrání všech dat do Azure:
Čas (ve dnech) potřebný pro nahrání souborů do skupiny synchronizace = (počet objektů v koncovém bodu serveru)/(20 × 60 × 60 × 24)
Toto počáteční nahrávání dat je možné urychlit rozdělením dat do několika koncových bodů serveru a skupin synchronizace, protože nahrávání je možné provádět paralelně pro více skupin synchronizace rychlostí 20 položek za sekundu. Dvě skupiny synchronizace by tedy pracovaly kombinovanou rychlostí 40 položek za sekundu. Celkový čas dokončení by byl odhadovaný čas pro skupinu synchronizace s největším počtem souborů, které se mají synchronizovat.
propustnost stahování Namespace: Když se do existující skupiny synchronizace přidá nový koncový bod serveru, agent Synchronizace souborů Azure nestahuje žádný obsah souboru z koncového bodu cloudu. Nejprve synchronizuje úplný obor názvů a pak aktivuje stažení souborů na pozadí, a to buď jako celek, nebo, pokud je povolené vrstvení cloudu, podle zásad vrstvení cloudu nastavených na koncovém bodu serveru.
Průběžná synchronizace
Průběžná synchronizace | Podrobnosti |
---|---|
Počet synchronizovaných objektů | 125 000 objektů (četnost změn přibližně 1 %) |
Velikost datové sady | 50 GiB |
Průměrná velikost souboru | cca. 500 KiB |
Propustnost odesílání | 20 objektů za sekundu na skupinu synchronizace |
Plná propustnost stahování* | 60 událostí za sekundu |
*Pokud je povolené vrstvení cloudu, pravděpodobně budete sledovat lepší výkon, protože se stáhnou jenom některá data souboru. Synchronizace souborů Azure stahovat pouze data souborů uložených v mezipaměti, když se změní na některém z koncových bodů. U všech vrstvených nebo nově vytvořených souborů agent nestahuje data souborů a místo toho synchronizuje obor názvů pouze se všemi koncovými body serveru. Agent také podporuje částečné stahování vrstvených souborů, ke kterým uživatel přistupuje.
Poznámka:
Tato čísla nenaznačují výkon, který budete mít. Skutečný výkon závisí na několika faktorech, jak je uvedeno na začátku této části.
Jako obecný průvodce pro vaše nasazení mějte na paměti několik věcí:
- Propustnost objektu se přibližně škáluje v poměru k počtu skupin synchronizace na serveru. Rozdělení dat do více skupin synchronizace na serveru poskytuje lepší propustnost, která je také omezena serverem a sítí.
- Propustnost objektu je nepřímo úměrná propustnosti udávané v MiB za sekundu. U menších souborů budete mít vyšší propustnost z hlediska počtu zpracovaných objektů za sekundu, ale nižší propustnost MiB za sekundu. Naopak u větších souborů získáte méně objektů zpracovaných za sekundu, ale vyšší propustnost MiB za sekundu. Propustnost v MiB za sekundu je omezena cíli škálování služby Azure Files.