Použití ovladačů disků rozhraní PRO úložiště kontejnerů (CSI) v AKS povolených službou Azure Arc
> Platí pro: AKS v Azure Stack HCI 22H2, AKS ve Windows Serveru, AKS v Azure Stack HCI 23H2
Tento článek popisuje, jak pomocí předdefinovaných tříd úložiště rozhraní CSI (Container Storage Interface) dynamicky vytvářet trvalé diskové svazky a vytvářet vlastní třídy úložiště v AKS s podporou Arc.
Přehled CSI v AKS povolené službou Arc
Rozhraní CSI (Container Storage Interface) je standard pro zpřístupnění libovolných systémů úložiště bloků a souborů kontejnerizovaným úlohám v Kubernetes. Pomocí CSI může služba AKS povolená službou Arc zapisovat, nasazovat a iterovat moduly plug-in za účelem zveřejnění nových systémů úložiště. Pomocí CSI můžete také vylepšit ty stávající v Kubernetes, aniž byste se museli dotýkat základního kódu Kubernetes a pak čekat na jeho cykly vydání.
Diskové ovladače CSI a soubory používané službou AKS Arc jsou ovladače kompatibilní se specifikací CSI.
Podpora ovladače úložiště CSI ve službě AKS Arc umožňuje používat:
Disky AKS Arc, které můžete použít k vytvoření prostředku Kubernetes DataDisk . Ty jsou připojené jako ReadWriteOnce, takže jsou dostupné jenom pro jednotlivé pody najednou. Pro svazky úložiště, ke kterým má přístup více podů současně, použijte soubory AKS Arc.
Soubory AKS Arc, které můžete použít k připojení sdílené složky SMB nebo NFS k podům. Jsou připojené jako ReadWriteMany, takže můžete sdílet data mezi několika uzly a pody. Mohou být také připojeny jako ReadWriteOnce na základě specifikace PVC (deklarace trvalého svazku).
Dynamické vytváření trvalých diskových svazků pomocí integrované třídy úložiště
Třída úložiště slouží k definování dynamického vytváření jednotky úložiště s trvalým svazkem. Další informace o tom, jak používat třídy úložiště, najdete v tématu Třídy úložiště Kubernetes.
Ve službě AKS Arc je výchozí třída úložiště vytvořená ve výchozím nastavení a pomocí CSI vytváří svazky založené na VHDX. Zásada uvolnění zajišťuje odstranění základního souboru VHDX při odstranění trvalého svazku, který ho používal. Třída úložiště také konfiguruje trvalé svazky tak, aby byly rozšiřitelné; Stačí upravit deklaraci trvalého svazku s novou velikostí.
Pokud chcete tuto třídu úložiště využít, vytvořte pvc a odpovídající pod, který na něj odkazuje a používá ho. Pvc se používá k automatickému zřizování úložiště na základě třídy úložiště. Pvc může použít jednu z předem vytvořených tříd úložiště nebo uživatelem definovanou třídu úložiště k vytvoření VHDX požadované velikosti. Když vytvoříte definici podu, zadává se pvc pro vyžádání požadovaného úložiště.
Vytvoření vlastní třídy úložiště pro disky
Výchozí třída úložiště je vhodná pro většinu běžných scénářů. V některých případech ale můžete chtít vytvořit vlastní třídu úložiště, která ukládá virtuální počítače v určitém umístění mapovaném na konkrétní úroveň výkonu.
Pokud máte linuxové úlohy (pody), musíte vytvořit vlastní třídu úložiště s parametrem fsType: ext4
. Tento požadavek platí pro Kubernetes verze 1.19 a 1.20 nebo novější. Následující příklad ukazuje definici vlastní třídy úložiště s definovaným parametrem fsType
:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: aks-hci-disk-custom
parameters:
blocksize: "33554432"
container: SqlStorageContainer
dynamic: "true"
group: clustergroup-summertime
hostname: TESTPATCHING-91.sys-sqlsvr.local
logicalsectorsize: "4096"
physicalsectorsize: "4096"
port: "55000"
fsType: ext4
provisioner: disk.csi.akshci.com
reclaimPolicy: Delete
volumeBindingMode: Immediate
allowVolumeExpansion: true
Pokud vytvoříte vlastní třídu úložiště, můžete zadat umístění, kam chcete ukládat osobní počítače. Pokud je základní infrastrukturou Azure Stack HCI, může se jednat o svazek, který je podporovaný vysoce výkonnými disky SSD nebo NVMe, nebo svazek optimalizovaný pro náklady na disky HDD.
Vytvoření vlastní třídy úložiště je dvoustupňový proces:
Pomocí rutin vytvořte novou cestu k
stack-hci-vm storagepath
úložišti, abyste mohli vytvořit, zobrazit a vypsat cesty k úložišti v clusteru Azure Stack HCI. Další informace o vytvoření cesty k úložišti najdete v tématu Cesta k úložišti.Pro
$path
vytvořte cestu k úložišti s názvem$storagepathname
, například C:\ClusterStorage\test-storagepath:az stack-hci-vm storagepath create --resource-group $resource_group --custom-location $customLocationID --name $storagepathname --path $path
Získejte ID prostředku cesty k úložišti:
$storagepathID = az stack-hci-vm storagepath show --name $storagepathname --resource-group $resource_group --query "id" -o tsv
Vytvořte novou vlastní třídu úložiště pomocí nové cesty k úložišti.
Vytvořte soubor s názvem sc-aks-hci-disk-custom.yaml a zkopírujte manifest z následujícího souboru YAML. Třída úložiště je stejná jako výchozí třída úložiště s výjimkou nové
container
třídy .storage path ID
Pro použijte soubor vytvořený v předchozím krokucontainer
. Progroup
ahostname
zadejte dotaz na výchozí třídu úložiště spuštěnímkubectl get storageclass default -o yaml
příkazu a pak použijte zadané hodnoty:kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: aks-hci-disk-custom provisioner: disk.csi.akshci.com parameters: blocksize: "33554432" container: <storage path ID> dynamic: "true" group: <e.g clustergroup-akshci> # same as the default storageclass hostname: <e.g. ca-a858c18c.ntprod.contoso.com> # same as the default storageclass logicalsectorsize: "4096" physicalsectorsize: "4096" port: "55000" fsType: ext4 # refer to the note above to determine when to include this parameter allowVolumeExpansion: true reclaimPolicy: Delete volumeBindingMode: Immediate
Vytvořte třídu úložiště pomocí příkazu kubectl apply a zadejte soubor sc-aks-hci-disk-custom.yaml :
$ kubectl apply -f sc-aks-hci-disk-custom.yaml storageclass.storage.k8s.io/aks-hci-disk-custom created
Další kroky
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro