Disciplíny úložiště pro SQL Managed Instance s podporou Azure Arc

Úložiště je důležitou součástí nasazení SQL Managed Instance (SQL Managed Instance) s podporou Služby Azure Arc. Pochopení toho, jak koncepty související s úložištěm popsané v tomto dokumentu ovlivňují fungování clusterů Kubernetes, je důležitým aspektem volby a správy návrhu úložiště.

Místo přímé interakce se základním úložištěm poskytuje Kubernetes vrstvu abstrakce různým technologiím úložiště prostřednictvím tříd úložiště. Poskytovatelé cloudu, dodavatelé hardwaru a další platformy spravované Kubernetes nabízejí různé možnosti třídy StorageClass, aby vyhovovaly konkrétním prostředím a scénářům implementace.

SQL Managed Instance s podporou arc neomezuje ani nevynucuje používání žádné třídy úložiště, proto je důležité zvolit správný návrh a konfiguraci úložiště. Návrh úložiště pro SQL Managed Instance s podporou arc je stejně důležitý, jako kdybyste při běhu na holých počítačích nebo virtuálních počítačích vybírali zařízení úložiště pro SQL Server. Tyto volby v konečném důsledku představují vaše požadavky týkající se cíle bodu obnovení, rto, kapacity a výkonu.

Pro nasazení SQL Managed Instance s podporou služby Arc je pro úspěšné fungování důležité efektivní plánování možností a konfigurace úložiště. Přečtěte si další informace o faktorech souvisejících s úložištěm, které je potřeba vzít v úvahu, a doporučení pro konfiguraci SQL Managed Instance s podporou arc.

Architektura

Následující diagram architektury znázorňuje logický návrh komponent datových služeb s podporou Azure Arc. Mezi tyto komponenty patří požadovaný kontroler dat Azure Arc a jeden nebo více SQL Managed Instance s podporou Arc, které obsahují databáze zřízené pro referenci. Řadič dat Azure Arc i SQL Managed Instance s podporou arc poskytují možnosti pro zálohování úložných zařízení, která jsou závislá na poskytovatelích infrastruktury distribuce a úložiště Kubernetes.

Snímek obrazovky znázorňující diagram logické architektury datových služeb s podporou Azure Arc

Na co dát pozor při navrhování

Následující informace jsou důležité pro návrh a konfiguraci úložiště.

Třídy úložiště

Volba správné třídy Kubernetes StorageClass a konfigurace pro komponenty datových služeb s podporou Azure Arc je důležitá pro výkon, odolnost a kapacitu úložiště dat.

StorageClass, PersistentVolume (PV) a PersistentVolumeClaim (PVC) jsou objekty prostředků Kubernetes, které systém vytvoří ve vašem clusteru Kubernetes při zřizování komponent datových služeb s podporou Azure Arc.

Možnosti třídy StorageClass se liší v závislosti na tom, co nabízí váš poskytovatel cloudu, dodavatel hardwaru a co nakonfiguroval správce Kubernetes. PersistentVolumeClaim požádá o vytvoření PersistentVolume pro StorageClass a požadovanou velikost. Následující diagram je odkazem na vztah mezi těmito prostředky Kubernetes a potenciální možnosti pro třídy úložiště.

Snímek obrazovky znázorňující koncepty úložiště Kubernetes s možnostmi tříd úložiště

Prostředky PV a PVC Kubernetes se konfigurují při zřizování řadiče dat Azure Arc a SQL Managed Instance s podporou arc.

Můžete si vybrat ze dvou různých typů úložišť:

  • Místní: Svazek, který je připojený k místnímu úložnému zařízení připojenému k uzlu Kubernetes, na kterém je pod spuštěný. Tento typ úložiště obvykle poskytuje nižší latenci spolu s vyššími vstupně-výstupními operacemi za sekundu (IOPS) a propustností v porovnání se vzdáleným nebo sdíleným úložištěm.
  • Vzdálené nebo sdílené úložiště: Síťová úložná zařízení, která mají tendenci být součástí integrované redundance. Mezi běžné možnosti úložiště patří zařízení NAS a SAN.

Při výběru třídy StorageClass zvažte následující standardy. Tato kritéria by také platila pro každý databázový server, který byste vytvořili:

  • Výkon: Vstupní/výstupní propustnost a vstupně-výstupní operace (I/O) úložného zařízení by měly splňovat vaše potřeby databáze.
  • Poměr čtení a zápisu: Pochopení úloh vám může pomoct vybrat si pomocný hardware, který nejlépe vyhovuje vašim potřebám s odpovídajícími náklady. Úlohy náročného zápisu můžou využívat konfigurace RAID 0, zatímco zřídka přístupná data se můžou nejlépe servírovat pomocí úložiště zařízení SAN.
  • Izolace a společné umístění databáze: Všechny databáze v instanci SQL Managed Instance s podporou arc sdílejí pv, takže se můžete rozhodnout přesunout databáze do samostatných instancí SQL Managed Instance s podporou arc a vyhnout se kolizím prostředků úložiště.
  • Kapacita: Definovaná velikost úložiště by měla splňovat budoucí kapacitu kontroleru dat a instancí databáze, aby se nemuselo měnit velikost pvc. Zvažte všechna omezení úložiště, která může mít vybraná třída StorageClass.
  • Režim přístupu: Poskytovatelé třídy úložiště mají různé režimy přístupu, které podporují různé možnosti pro připojení a čtení a zápis úložiště pomocí podů. Pro svazek SQL Backup se vyžaduje RWX (Čtení zápisu N).
  • Redundance: Replikace dat ve vrstvě fyzického úložiště (RAID) pro podporu bezproblémového převzetí služeb při selhání hardwarového disku, což je oddělené od redundance na úrovni databáze, kterou provádějí skupiny dostupnosti.

Jak řadič dat Azure Arc, tak datové služby SQL Managed Instance Arc poskytují podrobné možnosti pro konfiguraci různých tříd úložiště pro data databáze. Tyto datové služby také poskytují protokoly, které umožňují flexibilní výběr tříd úložiště podle potřeb.

Kontroler dat

Pro cluster Kubernetes se jako předpoklad pro vytváření instancí SQL Managed Instance s podporou arc vyžaduje jeden kontroler dat Azure Arc. Více než jeden kontroler dat spuštěný v clusteru se nepodporuje.

Kontroler dat Azure Arc bude mít v clusteru Kubernetes spuštěné čtyři různé stavové pody: řadič SQL, rozhraní API kontroleru, databázi protokolů a databázi metrik. Každý pod vyžaduje dva trvalé svazky pro datové svazky a svazky protokolů. Všechny komponenty kontroleru dat vyžadují pro zajištění stálosti dat vzdálenou třídou StorageClass, protože samotné komponenty kontroleru dat nativně neposkytují odolnost dat.

Nezapomeňte zvážit výpočetní a paměťové prostředky , které řadič dat Azure Arc vyžaduje. Následující diagram znázorňuje úložiště kontroleru dat, PV a prostředky Kubernetes PVC.

Snímek obrazovky znázorňující úložiště kontroleru dat Azure Arc

Výchozí nastavení velikosti svazku kontroleru dat je doporučené minimum. Využité úložiště závisí na počtu databází, způsobu použití databází a počtu vygenerovaných protokolů. Třída StorageClass řadiče dat Azure Arc není citlivá na nízkou latenci. I tak můžou uživatelé vidět výhody rozhraní Grafana a Kibana s rychlejším výkonem úložiště, pokud máte v clusteru mnoho nasazení SQL Managed Instance s podporou arc. Grafana a Kibana jsou open source monitorovací vizualizační nástroje nasazené s kontrolerem dat a zřízené s řídicími panely pro zobrazení metrik a protokolů pro SQL Managed Instance s podporou Arc.

Zřizování kontroleru dat

Při zřizování kontroleru dat Azure Arc nakonfigurujte storageClass a kapacitu úložiště pro protokoly i data. Konfigurace úložiště pro protokoly i data se pak vztahuje na všech osm počítačů, které vytvoříte pro pody kontroleru dat. Během zřizování můžete zadat vlastní šablonu nasazení , která přepíše výchozí parametry, jako je kapacita, uchovávání protokolů a položky související se zabezpečením, jako jsou typy služeb Kubernetes. Po dokončení zřizování se vytvoří objekty Kubernetes PV a PVC.

Je důležité si uvědomit, že třída StorageClass pro kontroler dat se po jeho zřízení nedá změnit. Pokud nezadáte StorageClass, řadič dat použije výchozí storageClass Kubernetes, která se může lišit v závislosti na vaší instanci nebo poskytovateli Kubernetes.

Když odinstalujete řadič dat Azure Arc, odstraní se všechny trvalé svazky, které jsou k němu přidružené. Archivujte všechny protokoly úrovně řídicí roviny datových služeb s podporou Azure Arc, které vaše organizace potřebuje před odinstalací kontroleru dat uložit.

SQL Managed Instance s podporou Služby Azure Arc

SQL Managed Instance s podporou arc nabízí dvě různé úrovně v závislosti na obchodních požadavcích: Pro obecné účely a Pro důležité obchodní informace. Pro obě úrovně je důležité zkontrolovat minimální a maximální limity SQL Managed Instance s podporou arc, které lze konfigurovat, a zajistit, aby nasazený cluster Kubernetes měl odpovídající výpočetní a paměťovou kapacitu.

Ve scénářích s více databázemi v dané instanci databáze používají všechny databáze stejné třídy StorageClass, PVC a PV zadané pro SQL Managed Instance s povolenou službou Arc. V jednom clusteru Kubernetes je možné mít více instancí SQL Managed Instance s podporou Arc. Tato konfigurace umožňuje nezávislé trvalé svazky a může pomoct oddělit kolize vstupně-výstupních operací od různých databází nasazením databází do různých instancí SQL Managed Instance s podporou arc.

Následující tabulka popisuje různé trvalé svazky používané jednotlivými SQL Managed Instance pody s podporou Arc a jejich účel.

Trvalý svazek Popis Požadavky na třídu úložiště
Data SQL Database datových souborů (soubory .mdf) Závisí na vrstvě.
Datové protokoly SQL Database soubory protokolu (soubory .ldf) Závisí na vrstvě.
Protokoly Agent SQL, protokoly chyb, trasovací soubory, protokoly stavu Závisí na vrstvě.
Zálohování SQL Server záložní soubory, včetně úplných, rozdílových a transakčních protokolů Remote, ReadWriteMany Access Mode

Pro obecné účely úroveň služby

Pro obecné účely úroveň SQL Managed Instance s podporou arc musí pro instanci databáze používat vzdálené úložiště, aby při selhání podu zůstala data dostupná nově vytvořeným podům. Převzetí služeb při selhání se spravuje pomocí orchestrace podů a uzlů Kubernetes. Tato konfigurace je méně složitá v porovnání s Pro důležité obchodní informace, která používá skupiny dostupnosti SQL a několik replik SQL Managed Instance s podporou arc. Konfigurace úrovně Pro obecné účely s jedním podem znamená, že můžete minimalizovat velikost úložiště, protože nemusíte duplikovat kapacitu úložiště pro jiné repliky.

Snímek obrazovky s SQL Managed Instance Pro obecné účely úložištěm s podporou arc

Pro důležité obchodní informace úroveň služby

Pro důležité obchodní informace vrstva používá model s více pody, ve kterém je možné ukládat svazky dat a protokolů v místních nebo vzdálených třídách úložiště. Místní třídy úložiště obvykle fungují lépe z hlediska latence a propustnosti, protože úložné zařízení je přímo připojené k uzlu. Vzdálené úložiště obvykle nabízí integrovanou redundanci, ale ve srovnání s místním úložištěm má často nižší latenci a propustnost. Mějte na paměti, že použití více replik databáze Pro důležité obchodní informace vyžaduje další trvalé svazky pro data, protokoly a datové protokoly. Požadovaná celková kapacita úložiště je mnohem vyšší.

Následující diagram znázorňuje konfiguraci úložiště Pro důležité obchodní informace pro Arc-Enabled SQL Managed Instance se dvěma replikami.

Snímek obrazovky zobrazující SQL Managed Instance Pro důležité obchodní informace úložiště s podporou arc

Pro důležité obchodní informace umožňuje nakonfigurovat dvě nebo tři sekundární repliky. Převzetí služeb při selhání se spravuje ve skupině dostupnosti SQL AlwaysOn, která zajišťuje menší výpadky upgradů a selhání než Pro obecné účely úroveň.

Konfigurace více replik s replikací dat v režimu synchronního potvrzování zajišťuje lepší ochranu před selháními, jako jsou selhání podu, uzel nebo hardware úložiště. Chrání před selháním, protože na replikách existuje více kopií dat. Zvažte konfiguraci sekundárních replik jako instancí škálování na více instancí čtení, ke kterým se klienti můžou připojit při použití koncového bodu sekundárního naslouchacího procesu.

Zřizování a odinstalace služby Azure Arc SQL Managed Instance

Při zřizování SQL Managed Instance s podporou služby Arc můžete každému z požadovaných trvalých svazků SQL Managed Instance s podporou služby Arc přiřadit různé třídy úložiště. Pro data a datové protokoly můžete chtít úložiště s vyšším výkonem, ale svazky protokolů a záloh můžou využívat nákladově efektivnější možnosti třídy StorageClass, aby se ušetřily náklady. Ve scénářích, kdy používáte místní úložiště, zajistěte, aby se svazky dostaly na různé uzly a fyzická úložná zařízení, aby se zabránilo kolizím ve vstupně-výstupních operacích disku. Umístění dat a datového protokolu na stejnou fyzickou jednotku může způsobit kolize u této jednotky úložiště, což vede k nízkému výkonu. Místo toho zvažte umístění dat a datových protokolů na samostatné jednotky úložiště, abyste paralelizovali vstupně-výstupní operace pro data databáze i protokoly.

Když odstraníte SQL Managed Instance s podporou arc, přidružené počítače a pvc se neodeberou. Toto chování zajišťuje přístup k databázovým souborům v případě, že k odstranění došlo omylem.

Doporučení k návrhu

Níže jsou uvedená doporučení pro návrh a konfiguraci úložiště.

Třídy úložiště pro produkční úlohy

V případě konkrétních veřejných cloudů jsou v následující tabulce uvedené doporučené třídy úložiště pro produkční úlohy.

Poskytovatel Ověřené a doporučené úložiště
Azure Kubernetes Service (AKS) Azure Spravované disky (úroveň Premium)
Amazon Elastic Kubernetes Service (EKS) Ovladač úložiště EBS CSI
Google (GKE) Trvalé disky GCE

Při výběru produkční třídy StorageClass v místních nebo multicloudových scénářích se ujistěte, že dokáže splnit vaše požadavky na kapacitu úložiště, IOPS, redundanci a propustnost. Následující části obsahují další doporučení pro tyto scénáře.

Návrh kontroleru dat

Zvolte vzdálenou sdílenou třídu StorageClass pro zajištění stálosti dat. V případě odebrání podu nebo uzlu můžete pod přenést zpět a znovu se připojit k trvalému svazku. Podtržené třída StorageClass musí poskytovat redundanci a vysokou dostupnost.

Při vytváření kontroleru dat datových služeb s podporou Arc doporučujeme použít vlastní šablonu nasazení. Vlastní šablona umožňuje vyladit třídy úložiště, velikost úložiště pro data a protokoly, zabezpečení a typy služby Kubernetes Service. Můžete je přizpůsobit potřebám vašeho prostředí a podniku. Kontroler dat Azure Arc vyžaduje celkem osm trvalých svazků. Výchozí minimální konfigurace umožňuje použít 15Gi pro data a 10Gi pro protokoly na osobních počítačích. Nakonfigurujte kapacitu, která nejen splňuje minimální doporučení, ale podporuje vyšší růst z mnoha implementací SQL Managed Instance s podporou arc spuštěných v clusteru. Tato konfigurace zabrání v budoucnu změně velikosti FVE.

Doporučujeme zvolit nižší latenci třídy StorageClass v případě, že váš cluster obsahuje mnoho databází a SQL Managed Instance nasazení s podporou služby Arc. Nižší latence zlepšuje uživatelské prostředí v rozhraních Grafana a Kibana.

Migrace SQL Managed Instance s podporou služby Azure Arc

Doporučujeme naplánovat a zohlednit všechny nové i stávající databáze, které se podílejí na migraci a nasazení SQL Managed Instance s podporou arc. Plánování zabrání pozdějšímu přesunu databází mezi instancemi.

V závislosti na organizaci clusteru Kubernetes zřiďte nasazení SQL Managed Instance s podporou Arc pro různé clustery Kubernetes na základě potřeby oddělení prostředí (neprodových, produkčních), oblastí a dalších obchodních faktorů. Další doporučení najdete v oblasti návrhu organizace prostředků . Při konfiguraci více instancí databáze v clusteru nezapomeňte rozdělit zaneprázdněné databáze na jejich vlastní instanci, abyste se vyhnuli kolizím vstupně-výstupních operací.

Pomocí popisků uzlů se ujistěte, že se instance databáze umístí do samostatných uzlů, aby se celkový vstupně-výstupní provoz distribuuje mezi několik uzlů. Informace o konfiguraci popisků najdete v tématu Popisky uzlů Kubernetes spolu s popisky spřažení uzlů Kubernetes a popisky ochrany proti spřažení . Pokud pracujete ve virtualizovaném prostředí, ujistěte se, že jsou vstupně-výstupní operace správně distribuované na úrovni fyzického hostitele.

Naplánujte kapacitu pro SQL Managed Instance s podporou arc tak, aby zahrnovala odpovídající velikosti úložiště pro data, protokoly, datové protokoly a zálohy. Když plánujete kapacitu tak, aby vyhovovala aktuálním potřebám i předpokládanému růstu pro všechny databáze, které budou žít v instancích SQL Managed Instance s podporou Arc, zabráníte tomu, abyste v budoucnu museli měnit velikost FVE. Pokud chcete povolit paralelní vstupně-výstupní aktivitu, zvolte pro Data a DataLogs samostatné fyzické jednotky. Paralelní vstupně-výstupní aktivita vede ke zlepšení výkonu tím, že se vyhne možným kolizím způsobeným při použití sdílené jednotky.

I když nasazení Pro důležité obchodní informace nebo Pro obecné účely úrovně SQL Managed Instance s podporou služby Arc může určovat několik faktorů, Pro důležité obchodní informace použití místního úložiště poskytuje nejnižší latenci a nejvyšší dostupnost. Projděte si oblast návrhu SQL Managed Instance provozní kontinuity s podporou arc, kde najdete doporučení týkající se obnovení k určitému bodu v čase, vysoké dostupnosti a zotavení po havárii. Projděte si také oblast návrhu zásad správného řízení nákladů s podporou služby Arc SQL Managed Instance, kde najdete další informace o dopadech na náklady mezi úrovněmi.

Následující pododdíly poskytují konkrétnější doporučení pro jednotlivé úrovně:

Pro obecné účely doporučení úrovně služby

Pro zajištění optimálního výkonu doporučujeme zvolit pro trvalé svazky Data a DataLogs vzdálenou třídu StorageClass s nízkou latencí. Nepoužívejte třídu StorageClass, která zavádí síťové oddíly, například mít místní cluster nakonfigurovaný tak, aby pro trvalé svazky zálohování a protokolování používal třídu StorageClass poskytovanou z internetu.

Pro důležité obchodní informace doporučení úrovně služby

Doporučujeme projít si rozdíly v režimu dostupnosti, které budou vyžadovat jinou konfiguraci pro každý zvolený režim.

Pro scénáře požadavků na nejnižší možnou latenci zvolte místní úložiště, pokud se jedná o možnost pro vaši infrastrukturu Kubernetes. Místní svazky úložiště by měly přicházet na různá základní úložná zařízení, aby se zabránilo kolizím na vstupně-výstupních operacích disku a maximalizoval se výkon. Úložné zařízení by nemělo mít více funkcí, například hostování oddílu operačního systému.

V případě úloh náročných na čtení a vysoké dostupnosti nakonfigurujte více replik a nakonfigurujte aplikace nebo klienty tak, aby jako instance Scale-Out pro čtení používaly sekundární repliky. Sekundární repliky nejsou ve výchozím nastavení čitelné. můžete nakonfigurovat nastavení.

Sledování

Doporučujeme monitorovat všechny adaptéry PVC vytvořené datovými službami s podporou arc, včetně kontroleru dat Azure Arc a všech instancí SQL Managed Instance s podporou služby Arc v clusteru. Nastavte upozornění, která vás upozorní, když se pvc blíží ke kapacitě. Oznámení umožňuje změnit velikost PVC před dosažením kapacity. U přímo připojených clusterů monitorování řadičů pvc a upozorňování provádí Služba Azure Monitor a Container Insights. Pokud používáte clustery s nepřímým připojením, proveďte monitorování a upozorňování v Grafaně a Kibaně. Instalace Grafany zahrnuje řídicí panely pro metriky SQL Managed Instance s podporou Arc a prostředky Kubernetes.

Projděte si disciplíny zásad správného řízení s podporou SQL Managed Instance arc, kde najdete další doporučení k monitorování SQL Managed Instance s podporou služby Arc.

Další kroky

Další informace o cestě k hybridnímu a multicloudovém cloudu najdete v následujících článcích: