Tworzenie woluminu i używanie go z usługą Azure Blob Storage w usłudze Azure Kubernetes Service (AKS)
Aplikacje oparte na kontenerach często muszą uzyskiwać dostęp do danych zewnętrznych i utrwalać je na woluminie danych zewnętrznych. Jeśli wiele zasobników wymaga współbieżnego dostępu do tego samego woluminu magazynu, możesz użyć usługi Azure Blob Storage do nawiązania połączenia przy użyciu systemu plików blobfuse lub sieciowego systemu plików (NFS).
W tym artykule pokazano, w jaki sposób wykonać następujące czynności:
- Współpracuj z dynamicznym woluminem trwałym (PV), instalując sterownik interfejsu magazynu kontenerów (CSI) i dynamicznie tworząc kontener usługi Azure Blob Storage w celu dołączenia do zasobnika.
- Praca ze statycznym serwerem pv przez utworzenie kontenera usługi Azure Blob Storage lub użycie istniejącego kontenera i dołączenie go do zasobnika.
Aby uzyskać więcej informacji na temat woluminów Kubernetes, zobacz Opcje magazynu dla aplikacji w usłudze AKS.
Zanim rozpoczniesz
Włącz sterownik CSI usługi Blob Storage w klastrze usługi AKS.
Aby obsługiwać konto magazynu usługi Azure DataLake Gen2 podczas korzystania z instalacji blobfuse, należy wykonać następujące czynności:
- Aby utworzyć konto usługi ADLS przy użyciu sterownika w dynamicznej aprowizacji, określ
isHnsEnabled: "true"
w parametrach klasy magazynu. - Aby włączyć dostęp blobfuse do konta usługi ADLS w statycznej aprowizacji, określ opcję
--use-adls=true
instalacji w woluminie trwałym. - Jeśli zamierzasz włączyć konto magazynu z hierarchiczną przestrzenią nazw, istniejące woluminy trwałe powinny zostać ponownie zainstalowane z opcją
--use-adls=true
instalacji.
- Aby utworzyć konto usługi ADLS przy użyciu sterownika w dynamicznej aprowizacji, określ
Informacje o pamięci podręcznej blobfuse
- Domyślnie pamięć podręczna blobfuse znajduje się w
/mnt
katalogu. Jeśli jednostka SKU maszyny wirtualnej udostępnia dysk tymczasowy,/mnt
katalog jest instalowany na dysku tymczasowym. Jeśli jednak jednostka SKU maszyny wirtualnej nie udostępnia dysku tymczasowego,/mnt
katalog jest zainstalowany na dysku systemu operacyjnego, możesz ustawić--tmp-path=
opcję instalacji, aby określić inny katalog pamięci podręcznej
- Domyślnie pamięć podręczna blobfuse znajduje się w
Dynamiczne aprowizowania woluminu
Ta sekcja zawiera wskazówki dla administratorów klastra, którzy chcą aprowizować co najmniej jeden wolumin trwały, który zawiera szczegóły magazynu obiektów blob do użycia przez obciążenie. Trwałe oświadczenie woluminu (PVC) używa obiektu klasy magazynu do dynamicznego aprowizowania kontenera usługi Azure Blob Storage.
Parametry klasy magazynu dla dynamicznych woluminów trwałych
Poniższa tabela zawiera parametry, których można użyć do zdefiniowania niestandardowej klasy magazynu dla trwałego oświadczenia woluminu.
Nazwa/nazwisko | opis | Przykład | Obowiązkowy | Domyślna wartość |
---|---|---|---|---|
skuName | Określ typ konta usługi Azure Storage (alias: storageAccountType ). |
Standard_LRS , , Premium_LRS , , Standard_GRS Standard_RAGRS |
Nie. | Standard_LRS |
lokalizacja | Określ lokalizację platformy Azure. | eastus |
Nie. | Jeśli jest pusty, sterownik będzie używać tej samej nazwy lokalizacji co bieżący klaster. |
resourceGroup | Określ nazwę grupy zasobów platformy Azure. | myResourceGroup | Nie. | Jeśli jest pusty, sterownik będzie używać tej samej nazwy grupy zasobów co bieżący klaster. |
storageAccount | Określ nazwę konta usługi Azure Storage. | storageAccountName | -Nie | Jeśli określona nazwa konta magazynu nie zostanie podana, sterownik wyszuka odpowiednie konto magazynu zgodne z ustawieniami konta w tej samej grupie zasobów. Jeśli nie uda się znaleźć pasującego konta magazynu, zostanie utworzone nowe. Jeśli jednak zostanie określona nazwa konta magazynu, konto magazynu musi już istnieć. |
networkEndpointType | Określ typ punktu końcowego sieci dla konta magazynu utworzonego przez sterownik. Jeśli określono prywatny punkt końcowy, dla konta magazynu zostanie utworzony prywatny punkt końcowy . W innych przypadkach punkt końcowy usługi zostanie utworzony dla protokołu NFS.1 | privateEndpoint |
Nie. | W przypadku klastra usługi AKS dodaj nazwę klastra usługi AKS do roli Współautor w grupie zasobów hostująca sieć wirtualną. |
protokół | Określ instalację systemu plików blobfuse lub instalację NFSv3. | fuse , nfs |
Nie. | fuse |
containerName | Określ istniejącą nazwę kontenera (katalogu). | kontener | Nie. | Jeśli jest pusty, sterownik tworzy nową nazwę kontenera, zaczynając od pvc-fuse dla systemu plików blobfuse lub pvc-nfs NFS w wersji 3. |
containerNamePrefix | Określ prefiks katalogu usługi Azure Storage utworzony przez sterownik. | moje | Może zawierać tylko małe litery, cyfry, łączniki i długość powinny być mniejsze niż 21 znaków. | Nie. |
serwer | Określ nazwę domeny konta usługi Azure Storage. | Istniejąca nazwa domeny DNS konta magazynu, na przykład <storage-account>.privatelink.blob.core.windows.net . |
Nie. | Jeśli jest pusty, sterownik używa domyślnej <storage-account>.blob.core.windows.net lub innej suwerennej nazwy domeny DNS konta magazynu w chmurze. |
allowBlobPublicAccess | Zezwalaj lub nie zezwalaj na publiczny dostęp do wszystkich obiektów blob lub kontenerów dla konta magazynu utworzonego przez sterownik. | true ,false |
Nie. | false |
storageEndpointSuffix | Określ sufiks punktu końcowego usługi Azure Storage. | core.windows.net |
Nie. | Jeśli jest pusty, sterownik będzie używać domyślnego sufiksu punktu końcowego magazynu zgodnie ze środowiskiem chmury. |
tags | Tagi zostaną utworzone na nowym koncie magazynu. | Format tagu: "foo=aaa,bar=bbb" | Nie. | "" |
matchTags | Dopasuj tagi, gdy sterownik próbuje znaleźć odpowiednie konto magazynu. | true ,false |
Nie. | false |
--- | Następujące parametry są przeznaczone tylko dla systemu blobfuse | --- | --- | --- |
identyfikator subskrypcji | Określ identyfikator subskrypcji platformy Azure, w którym zostanie utworzony katalog usługi Blob Storage. | Identyfikator subskrypcji Azure | Nie. | Jeśli nie jest pusty, resourceGroup należy podać. |
storeAccountKey | Określ klucz konta magazynu w kluczu tajnym platformy Kubernetes. Nuta: false oznacza, że sterownik używa tożsamości kubelet do pobrania klucza konta. |
true ,false |
Nie. | true |
secretName | Określ nazwę wpisu tajnego do przechowywania klucza konta. | Nie. | ||
secretNamespace | Określ przestrzeń nazw wpisu tajnego do przechowywania klucza konta. | default ,kube-system itp. |
Nie. | Przestrzeń nazw pvc |
isHnsEnabled | Włącz Hierarchical namespace dla konta usługi Azure Data Lake Storage. |
true ,false |
Nie. | false |
--- | Następujące parametry dotyczą tylko protokołu NFS | --- | --- | --- |
mountPermissions | Określ zainstalowane uprawnienia folderu. | Wartość domyślna to 0777 . Jeśli ustawiono 0 wartość , sterownik nie będzie działać chmod po zainstalowaniu. |
0777 |
Nie. |
1 Jeśli konto magazynu jest tworzone przez sterownik, wystarczy określić networkEndpointType: privateEndpoint
parametr w klasie magazynu. Sterownik CSI tworzy prywatny punkt końcowy wraz z kontem. Jeśli używasz własnego konta magazynu, musisz utworzyć prywatny punkt końcowy dla konta magazynu.
Tworzenie trwałego oświadczenia woluminu przy użyciu wbudowanej klasy magazynu
Trwałe oświadczenie woluminu (PVC) używa obiektu klasy magazynu do dynamicznego aprowizowania kontenera usługi Azure Blob Storage. Poniższy kod YAML może służyć do tworzenia trwałego oświadczenia woluminu o rozmiarze 5 GB z dostępem ReadWriteMany przy użyciu wbudowanej klasy magazynu. Aby uzyskać więcej informacji na temat trybów dostępu, zobacz dokumentację dotyczącą trwałego woluminu Kubernetes.
Utwórz plik o nazwie
blob-nfs-pvc.yaml
i skopiuj go w następującym języku YAML.apiVersion: v1 kind: PersistentVolumeClaim metadata: name: azure-blob-storage spec: accessModes: - ReadWriteMany storageClassName: azureblob-nfs-premium resources: requests: storage: 5Gi
Utwórz oświadczenie trwałego woluminu za pomocą polecenia kubectl create :
kubectl create -f blob-nfs-pvc.yaml
Po zakończeniu zostanie utworzony kontener usługi Blob Storage. Możesz użyć polecenia kubectl get , aby wyświetlić stan PVC:
kubectl get pvc azure-blob-storage
Dane wyjściowe polecenia przypominają następujący przykład:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
azure-blob-storage Bound pvc-b88e36c5-c518-4d38-a5ee-337a7dda0a68 5Gi RWX azureblob-nfs-premium 92m
Używanie trwałego oświadczenia woluminu
Poniższy kod YAML tworzy zasobnik, który używa trwałego oświadczenia woluminu azure-blob-storage do zainstalowania usługi Azure Blob Storage w ścieżce "/mnt/blob".
Utwórz plik o nazwie
blob-nfs-pv
i skopiuj go w następującym pliku YAML. Upewnij się, że wartość claimName jest zgodna z elementem PVC utworzonym w poprzednim kroku.kind: Pod apiVersion: v1 metadata: name: mypod spec: containers: - name: mypod image: mcr.microsoft.com/oss/nginx/nginx:1.17.3-alpine resources: requests: cpu: 100m memory: 128Mi limits: cpu: 250m memory: 256Mi volumeMounts: - mountPath: "/mnt/blob" name: volume readOnly: false volumes: - name: volume persistentVolumeClaim: claimName: azure-blob-storage
Utwórz zasobnik za pomocą polecenia kubectl apply :
kubectl apply -f blob-nfs-pv.yaml
Po uruchomieniu zasobnika uruchom następujące polecenie, aby utworzyć nowy plik o nazwie
test.txt
.kubectl exec mypod -- touch /mnt/blob/test.txt
Aby sprawdzić, czy dysk jest poprawnie zainstalowany, uruchom następujące polecenie i sprawdź, czy plik jest widoczny
test.txt
w danych wyjściowych:kubectl exec mypod -- ls /mnt/blob
Dane wyjściowe polecenia przypominają następujący przykład:
test.txt
Tworzenie niestandardowej klasy magazynu
Domyślne klasy magazynu odpowiadają najbardziej typowym scenariuszom, ale nie wszystkim. W niektórych przypadkach możesz chcieć dostosować własną klasę magazynu z własnymi parametrami. W tej sekcji przedstawiono dwa przykłady. Pierwszy używa protokołu NFS, a drugi używa systemu blobfuse.
Klasa magazynu korzystająca z protokołu NFS
W tym przykładzie poniższy manifest konfiguruje instalowanie kontenera usługi Blob Storage przy użyciu protokołu NFS. Służy do dodawania parametru tagów .
Utwórz plik o nazwie
blob-nfs-sc.yaml
i wklej następujący przykładowy manifest:apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: azureblob-nfs-premium provisioner: blob.csi.azure.com parameters: protocol: nfs tags: environment=Development volumeBindingMode: Immediate allowVolumeExpansion: true mountOptions: - nconnect=4
Utwórz klasę magazynu za pomocą polecenia kubectl apply :
kubectl apply -f blob-nfs-sc.yaml
Dane wyjściowe polecenia przypominają następujący przykład:
storageclass.storage.k8s.io/blob-nfs-premium created
Klasa magazynu korzystająca z systemu blobfuse
W tym przykładzie poniższy manifest konfiguruje się przy użyciu systemu blobfuse i instaluje kontener usługi Blob Storage. Służy do aktualizowania parametru skuName .
Utwórz plik o nazwie
blobfuse-sc.yaml
i wklej następujący przykładowy manifest:apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: azureblob-fuse-premium provisioner: blob.csi.azure.com parameters: skuName: Standard_GRS # available values: Standard_LRS, Premium_LRS, Standard_GRS, Standard_RAGRS reclaimPolicy: Delete volumeBindingMode: Immediate allowVolumeExpansion: true mountOptions: - -o allow_other - --file-cache-timeout-in-seconds=120 - --use-attr-cache=true - --cancel-list-on-mount-seconds=10 # prevent billing charges on mounting - -o attr_timeout=120 - -o entry_timeout=120 - -o negative_timeout=120 - --log-level=LOG_WARNING # LOG_WARNING, LOG_INFO, LOG_DEBUG - --cache-size-mb=1000 # Default will be 80% of available memory, eviction will happen beyond that.
Utwórz klasę magazynu za pomocą polecenia kubectl apply :
kubectl apply -f blobfuse-sc.yaml
Dane wyjściowe polecenia przypominają następujący przykład:
storageclass.storage.k8s.io/blob-fuse-premium created
Statyczna aprowizacja woluminu
Ta sekcja zawiera wskazówki dla administratorów klastra, którzy chcą utworzyć co najmniej jeden wolumin trwały zawierający szczegóły magazynu obiektów blob do użycia przez obciążenie.
Statyczne parametry aprowizacji dla woluminów trwałych
Poniższa tabela zawiera parametry, których można użyć do zdefiniowania woluminu trwałego.
Nazwa/nazwisko | opis | Przykład | Obowiązkowy | Domyślna wartość |
---|---|---|---|---|
volumeHandle | Określ wartość, która może być używana przez sterownik do unikatowego identyfikowania kontenera obiektów blob magazynu w klastrze. | Zalecanym sposobem utworzenia unikatowej wartości jest połączenie globalnie unikatowej nazwy konta magazynu i nazwy kontenera: {account-name}_{container-name} .Uwaga: # znak , / jest zarezerwowany do użytku wewnętrznego i nie może być używany w dojściu woluminu. |
Tak | |
volumeAttributes.resourceGroup | Określ nazwę grupy zasobów platformy Azure. | myResourceGroup | Nie. | Jeśli jest pusty, sterownik używa tej samej nazwy grupy zasobów co bieżący klaster. |
volumeAttributes.storageAccount | Określ istniejącą nazwę konta usługi Azure Storage. | storageAccountName | Tak | |
volumeAttributes.containerName | Określ istniejącą nazwę kontenera. | kontener | Tak | |
volumeAttributes.protocol | Określ instalację systemu plików blobfuse lub instalację systemu plików NFS w wersji 3. | fuse , nfs |
Nie. | fuse |
--- | Następujące parametry są przeznaczone tylko dla systemu blobfuse | --- | --- | --- |
volumeAttributes.secretName | Nazwa wpisu tajnego, która przechowuje nazwę i klucz konta magazynu (dotyczy tylko protokołu SMB). | Nie. | ||
volumeAttributes.secretNamespace | Określ przestrzeń nazw wpisu tajnego do przechowywania klucza konta. | default |
Nie. | Przestrzeń nazw PVC |
nodeStageSecretRef.name | Określ nazwę wpisu tajnego, która przechowuje jedną z następujących wartości:azurestorageaccountkey azurestorageaccountsastoken msisecret azurestoragespnclientsecret . |
Nie. | Istniejąca nazwa wpisu tajnego kubernetes | |
nodeStageSecretRef.namespace | Określ przestrzeń nazw wpisu tajnego. | Przestrzeń nazw platformy Kubernetes | Tak | |
--- | Następujące parametry dotyczą tylko protokołu NFS | --- | --- | --- |
volumeAttributes.mountPermissions | Określ zainstalowane uprawnienia folderu. | 0777 |
Nie. | |
--- | Następujące parametry dotyczą tylko ustawienia sieci wirtualnej systemu plików NFS | --- | --- | --- |
vnetResourceGroup | Określ grupę zasobów sieci wirtualnej hostująca sieć wirtualną. | myResourceGroup | Nie. | Jeśli jest pusty, sterownik używa vnetResourceGroup wartości określonej w pliku konfiguracji chmury platformy Azure. |
vnetName | Określ nazwę sieci wirtualnej. | aksVNet | Nie. | Jeśli jest pusty, sterownik używa vnetName wartości określonej w pliku konfiguracji chmury platformy Azure. |
subnetName | Określ istniejącą nazwę podsieci węzła agenta. | aksSubnet | Nie. | Jeśli jest pusty, sterownik używa subnetName wartości w pliku konfiguracji chmury platformy Azure. |
--- | Następujące parametry są przeznaczone tylko dla funkcji: blobfuse Uwierzytelnianie tożsamości zarządzanej i nazwy głównej usługi |
--- | --- | --- |
volumeAttributes.AzureStorageAuthType | Określ typ uwierzytelniania. | Key , , SAS , , MSI SPN |
Nie. | Key |
volumeAttributes.AzureStorageIdentityClientID | Określ identyfikator klienta tożsamości. | Nie. | ||
volumeAttributes.AzureStorageIdentityResourceID | Określ identyfikator zasobu tożsamości. | Nie. | ||
volumeAttributes.MSIEndpoint | Określ punkt końcowy tożsamości usługi zarządzanej. | Nie. | ||
volumeAttributes.AzureStorageSPNClientID | Określ identyfikator klienta głównej nazwy usługi platformy Azure (SPN). | Nie. | ||
volumeAttributes.AzureStorageSPNTenantID | Określ identyfikator dzierżawy usługi Azure SPN. | Nie. | ||
volumeAttributes.AzureStorageAADEndpoint | Określ punkt końcowy firmy Microsoft Entra. | Nie. | ||
--- | Następujące parametry są przeznaczone tylko dla funkcji: blobfuse odczyt klucza konta lub tokenu SAS z magazynu kluczy | --- | --- | --- |
volumeAttributes.keyVaultURL | Określ nazwę DNS usługi Azure Key Vault. | {vault-name}.vault.azure.net | Nie. | |
volumeAttributes.keyVaultSecretName | Określ nazwę wpisu tajnego usługi Azure Key Vault. | Istniejąca nazwa wpisu tajnego usługi Azure Key Vault. | Nie. | |
volumeAttributes.keyVaultSecretVersion | Wersja wpisu tajnego usługi Azure Key Vault. | Istniejąca wersja | Nie. | Jeśli jest pusty, sterownik używa bieżącej wersji. |
Tworzenie kontenera usługi Blob Storage
Podczas tworzenia zasobu usługi Azure Blob Storage do użycia z usługą AKS można utworzyć zasób w grupie zasobów węzła. Takie podejście umożliwia klastrowi usługi AKS uzyskiwanie dostępu do zasobu magazynu obiektów blob i zarządzanie nim.
W tym artykule utwórz kontener w grupie zasobów węzła. Najpierw pobierz nazwę grupy zasobów za pomocą polecenia az aks show i dodaj --query nodeResourceGroup
parametr zapytania. Poniższy przykład pobiera grupę zasobów węzła dla klastra usługi AKS o nazwie myAKSCluster w grupie zasobów o nazwie myResourceGroup:
az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv
Dane wyjściowe polecenia przypominają następujący przykład:
MC_myResourceGroup_myAKSCluster_eastus
Następnie utwórz kontener do przechowywania obiektów blob, wykonując kroki opisane w temacie Zarządzanie magazynem obiektów blob w celu autoryzowania dostępu, a następnie utwórz kontener.
Instalowanie woluminu
W tej sekcji zainstalujesz wolumin trwały przy użyciu protokołu NFS lub Blobfuse.
Instalowanie magazynu obiektów blob przy użyciu protokołu NFS w wersji 3 nie jest uwierzytelniane przy użyciu klucza konta. Klaster usługi AKS musi znajdować się w tej samej lub równorzędnej sieci wirtualnej co węzeł agenta. Jedynym sposobem zabezpieczenia danych na koncie magazynu jest użycie sieci wirtualnej i innych ustawień zabezpieczeń sieci. Aby uzyskać więcej informacji na temat konfigurowania dostępu systemu plików NFS do konta magazynu, zobacz Instalowanie usługi Blob Storage przy użyciu protokołu sieciowego systemu plików (NFS) 3.0.
W poniższym przykładzie pokazano, jak zainstalować kontener usługi Blob Storage jako wolumin trwały przy użyciu protokołu NFS.
Utwórz plik o nazwie
pv-blob-nfs.yaml
i skopiuj go w następującym języku YAML. W obszarzestorageClass
, zaktualizujstorageAccount
resourceGroup
, icontainerName
.Uwaga
volumeHandle
wartość powinna być unikatowym identyfikatorem woluminu dla każdego identycznego kontenera obiektów blob magazynu w klastrze. Znak#
i/
są zastrzeżone do użytku wewnętrznego i nie można ich używać.apiVersion: v1 kind: PersistentVolume metadata: annotations: pv.kubernetes.io/provisioned-by: blob.csi.azure.com name: pv-blob spec: capacity: storage: 1Pi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain # If set as "Delete" container would be removed after pvc deletion storageClassName: azureblob-nfs-premium mountOptions: - nconnect=4 csi: driver: blob.csi.azure.com # make sure volumeid is unique for every identical storage blob container in the cluster # character `#` and `/` are reserved for internal use and cannot be used in volumehandle volumeHandle: account-name_container-name volumeAttributes: resourceGroup: resourceGroupName storageAccount: storageAccountName containerName: containerName protocol: nfs
Uwaga
Chociaż atrybut pojemności interfejsu API platformy Kubernetes jest obowiązkowy, ta wartość nie jest używana przez sterownik CSI usługi Azure Blob Storage, ponieważ można elastycznie zapisywać dane do momentu osiągnięcia limitu pojemności konta magazynu. Wartość atrybutu
capacity
jest używana tylko do dopasowywania rozmiaru między elementami PersistentVolumes i PersistentVolumeClaims. Zalecamy użycie fikcyjnej wysokiej wartości. Zasobnik widzi zainstalowany wolumin o fikcyjnym rozmiarze 5 Petabajtów.Uruchom następujące polecenie, aby utworzyć wolumin trwały przy użyciu polecenia kubectl create odwołującego się do utworzonego wcześniej pliku YAML:
kubectl create -f pv-blob-nfs.yaml
pvc-blob-nfs.yaml
Utwórz plik za pomocą elementu PersistentVolumeClaim. Na przykład:kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc-blob spec: accessModes: - ReadWriteMany resources: requests: storage: 10Gi volumeName: pv-blob storageClassName: azureblob-nfs-premium
Uruchom następujące polecenie, aby utworzyć oświadczenie trwałego woluminu przy użyciu polecenia kubectl create odwołującego się do utworzonego wcześniej pliku YAML:
kubectl create -f pvc-blob-nfs.yaml
Używanie woluminu trwałego
Poniższy kod YAML tworzy zasobnik, który używa trwałego woluminu lub trwałego oświadczenia woluminu o nazwie pvc-blob utworzonego wcześniej w celu zainstalowania usługi Azure Blob Storage w ścieżce /mnt/blob
.
Utwórz plik o nazwie
nginx-pod-blob.yaml
i skopiuj go w następującym pliku YAML. Upewnij się, że wartość claimName jest zgodna z elementem PVC utworzonym w poprzednim kroku podczas tworzenia woluminu trwałego dla systemu plików NFS lub Blobfuse.kind: Pod apiVersion: v1 metadata: name: nginx-blob spec: nodeSelector: "kubernetes.io/os": linux containers: - image: mcr.microsoft.com/oss/nginx/nginx:1.17.3-alpine name: nginx-blob volumeMounts: - name: blob01 mountPath: "/mnt/blob" readOnly: false volumes: - name: blob01 persistentVolumeClaim: claimName: pvc-blob
Uruchom następujące polecenie, aby utworzyć zasobnik i zainstalować plik PVC przy użyciu polecenia kubectl create odwołującego się do utworzonego wcześniej pliku YAML:
kubectl create -f nginx-pod-blob.yaml
Uruchom następujące polecenie, aby utworzyć interaktywną sesję powłoki z zasobnikiem, aby zweryfikować zainstalowany magazyn obiektów blob:
kubectl exec -it nginx-blob -- df -h
Dane wyjściowe polecenia przypominają następujący przykład:
Filesystem Size Used Avail Use% Mounted on ... blobfuse 14G 41M 13G 1% /mnt/blob ...
Następne kroki
- Aby dowiedzieć się, jak używać sterownika CSI dla usługi Azure Blob Storage, zobacz Używanie usługi Azure Blob Storage ze sterownikiem CSI.
- Aby uzyskać informacje o skojarzonych najlepszych rozwiązaniach, zobacz Najlepsze rozwiązania dotyczące magazynu i tworzenia kopii zapasowych w usłudze AKS.
Azure Kubernetes Service