Skip to content

Commit c997444

Browse files
committed
final edits
1 parent 8d52905 commit c997444

File tree

3 files changed

+74
-47
lines changed

3 files changed

+74
-47
lines changed

articles/aks/azure-csi-blob-storage-provision.md

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ This section provides guidance for cluster administrators who want to provision
4242
|server | Specify Azure storage account domain name. | Existing storage account DNS domain name, for example `<storage-account>.privatelink.blob.core.windows.net`. | No | If empty, driver uses default `<storage-account>.blob.core.windows.net` or other sovereign cloud storage account DNS domain name.|
4343
|allowBlobPublicAccess | Allow or disallow public access to all blobs or containers for storage account created by driver. | `true`,`false` | No | `false`|
4444
|storageEndpointSuffix | Specify Azure storage endpoint suffix. | `core.windows.net` | No | If empty, driver will use default storage endpoint suffix according to cloud environment.|
45-
|tags | [tags][az-tags] would be created in new storage account. | Tag format: 'foo=aaa,bar=bbb' | No | ""|
45+
|tags | [Tags][az-tags] would be created in new storage account. | Tag format: 'foo=aaa,bar=bbb' | No | ""|
4646
|matchTags | Match tags when driver tries to find a suitable storage account. | `true`,`false` | No | `false`|
4747
|--- | **Following parameters are only for blobfuse** | --- | --- |--- |
4848
|subscriptionID | Specify Azure subscription ID where blob storage directory will be created. | Azure subscription ID | No | If not empty, `resourceGroup` must be provided.|
@@ -75,7 +75,7 @@ A persistent volume claim (PVC) uses the storage class object to dynamically pro
7575
storage: 5Gi
7676
```
7777
78-
2. Create the persistent volume claim with the kubectl create command:
78+
2. Create the persistent volume claim with the [kubectl create][kubectl-create] command:
7979
8080
```bash
8181
kubectl create -f blob-nfs-pvc.yaml
@@ -324,7 +324,7 @@ The following example demonstrates how to mount a Blob storage container as a pe
324324
> [!NOTE]
325325
> While the [Kubernetes API](https://github.com/kubernetes/kubernetes/blob/release-1.26/pkg/apis/core/types.go#L303-L306) **capacity** attribute is mandatory, this value isn't used by the Azure Blob storage CSI driver because you can flexibly write data until you reach your storage account's capacity limit. The value of the `capacity` attribute is used only for size matching between *PersistentVolumes* and *PersistenVolumeClaims*. We recommend using a fictitious high value. The pod sees a mounted volume with a fictitious size of 5 Petabytes.
326326

327-
2. Run the following command to create the persistent volume using the `kubectl create` command referencing the YAML file created earlier:
327+
2. Run the following command to create the persistent volume using the [kubectl create][kubectl-create] command referencing the YAML file created earlier:
328328

329329
```bash
330330
kubectl create -f pv-blob-nfs.yaml
@@ -347,7 +347,7 @@ The following example demonstrates how to mount a Blob storage container as a pe
347347
storageClassName: azureblob-nfs-premium
348348
```
349349

350-
4. Run the following command to create the persistent volume claim using the `kubectl create` command referencing the YAML file created earlier:
350+
4. Run the following command to create the persistent volume claim using the [kubectl create][kubectl-create] command referencing the YAML file created earlier:
351351

352352
```bash
353353
kubectl create -f pvc-blob-nfs.yaml
@@ -412,7 +412,7 @@ Kubernetes needs credentials to access the Blob storage container created earlie
412412
namespace: default
413413
```
414414
415-
3. Run the following command to create the persistent volume using the `kubectl create` command referencing the YAML file created earlier:
415+
3. Run the following command to create the persistent volume using the [kubectl create][kubectl-create] command referencing the YAML file created earlier:
416416
417417
```bash
418418
kubectl create -f pv-blobfuse.yaml
@@ -435,7 +435,7 @@ Kubernetes needs credentials to access the Blob storage container created earlie
435435
storageClassName: azureblob-fuse-premium
436436
```
437437

438-
5. Run the following command to create the persistent volume claim using the `kubectl create` command referencing the YAML file created earlier:
438+
5. Run the following command to create the persistent volume claim using the [kubectl create][kubectl-create] command referencing the YAML file created earlier:
439439

440440
```bash
441441
kubectl create -f pvc-blobfuse.yaml
@@ -445,7 +445,7 @@ Kubernetes needs credentials to access the Blob storage container created earlie
445445

446446
### Use the persistent volume
447447

448-
The following YAML creates a pod that uses the persistent volume or persistent volume claim named **pvc-blob** created earlier, to mount the Azure Blob storage at the `/mnt/blob' path.
448+
The following YAML creates a pod that uses the persistent volume or persistent volume claim named **pvc-blob** created earlier, to mount the Azure Blob storage at the `/mnt/blob` path.
449449

450450
1. Create a file named `nginx-pod-blob.yaml`, and copy in the following YAML. Make sure that the **claimName** matches the PVC created in the previous step when creating a persistent volume for NFS or Blobfuse.
451451

@@ -469,7 +469,7 @@ The following YAML creates a pod that uses the persistent volume or persistent v
469469
claimName: pvc-blob
470470
```
471471

472-
2. Run the following command to create the pod and mount the PVC using the `kubectl create` command referencing the YAML file created earlier:
472+
2. Run the following command to create the pod and mount the PVC using the [kubectl create][kubectl-create] command referencing the YAML file created earlier:
473473

474474
```bash
475475
kubectl create -f nginx-pod-blob.yaml
@@ -501,6 +501,8 @@ The following YAML creates a pod that uses the persistent volume or persistent v
501501
[nfs-overview]: https://en.wikipedia.org/wiki/Network_File_System
502502
[kubectl-apply]: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#apply
503503
[kubectl-get]: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#get
504+
[kubernetes-secret]: https://kubernetes.io/docs/concepts/configuration/secret/
505+
[kubectl-create]: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#create
504506

505507
<!-- LINKS - internal -->
506508
[operator-best-practices-storage]: operator-best-practices-storage.md
@@ -509,3 +511,4 @@ The following YAML creates a pod that uses the persistent volume or persistent v
509511
[azure-blob-storage-nfs-support]: ../storage/blobs/network-file-system-protocol-support.md
510512
[enable-blob-csi-driver]: azure-blob-csi.md#before-you-begin
511513
[az-tags]: ../azure-resource-manager/management/tag-resources.md
514+
[sas-tokens]: ../storage/common/storage-sas-overview.md

articles/aks/azure-csi-disk-storage-provision.md

Lines changed: 35 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ For more information on Kubernetes volumes, see [Storage options for application
2626

2727
- The Azure CLI version 2.0.59 or later installed and configured. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI][install-azure-cli].
2828

29-
The Azure Disks CSI driver has a limit of 32 volumes per node. The volume count changes based on the size of the node/node pool. Run the following command to determine the number of volumes that can be allocated per node:
29+
The Azure Disks CSI driver has a limit of 32 volumes per node. The volume count changes based on the size of the node/node pool. Run the [kubectl get][kubectl-get] command to determine the number of volumes that can be allocated per node:
3030

3131
```console
3232
kubectl get CSINode <nodename> -o yaml
@@ -47,7 +47,7 @@ This section provides guidance for cluster administrators who want to provision
4747
|resourceGroup | Specify the resource group where the Azure Disks will be created | Existing resource group name | No | If empty, driver will use the same resource group name as current AKS cluster|
4848
|DiskIOPSReadWrite | [UltraSSD disk][ultra-ssd-disks] IOPS Capability (minimum: 2 IOPS/GiB ) | 100~160000 | No | `500`|
4949
|DiskMBpsReadWrite | [UltraSSD disk][ultra-ssd-disks] Throughput Capability(minimum: 0.032/GiB) | 1~2000 | No | `100`|
50-
|LogicalSectorSize | Logical sector size in bytes for Ultra disk. Supported values are 512 ad 4096. 4096 is the default. | `512`, `4096` | No | `4096`|
50+
|LogicalSectorSize | Logical sector size in bytes for ultra disk. Supported values are 512 ad 4096. 4096 is the default. | `512`, `4096` | No | `4096`|
5151
|tags | Azure Disk [tags][azure-tags] | Tag format: `key1=val1,key2=val2` | No | ""|
5252
|diskEncryptionSetID | ResourceId of the disk encryption set to use for [enabling encryption at rest][disk-encryption] | format: `/subscriptions/{subs-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSet-name}` | No | ""|
5353
|diskEncryptionType | Encryption type of the disk encryption set. | `EncryptionAtRestWithCustomerKey`(by default), `EncryptionAtRestWithPlatformAndCustomerKeys` | No | ""|
@@ -88,7 +88,7 @@ kubectl get sc
8888

8989
The output of the command resembles the following example:
9090

91-
```bash
91+
```console
9292
NAME PROVISIONER AGE
9393
default (default) disk.csi.azure.com 1h
9494
managed-csi disk.csi.azure.com 1h
@@ -128,7 +128,7 @@ kubectl apply -f azure-pvc.yaml
128128

129129
The output of the command resembles the following example:
130130

131-
```bash
131+
```console
132132
persistentvolumeclaim/azure-managed-disk created
133133
```
134134

@@ -167,19 +167,23 @@ Create the pod with the [kubectl apply][kubectl-apply] command, as shown in the
167167

168168
```console
169169
kubectl apply -f azure-pvc-disk.yaml
170+
```
171+
172+
The output of the command resembles the following example:
170173

174+
```console
171175
pod/mypod created
172176
```
173177

174-
You now have a running pod with your Azure Disk mounted in the `/mnt/azure` directory. This configuration can be seen when inspecting your pod via `kubectl describe pod mypod`, as shown in the following condensed example:
178+
You now have a running pod with your Azure Disk mounted in the `/mnt/azure` directory. This configuration can be seen when inspecting your pod using the [kubectl describe][kubectl-describe] command, as shown in the following condensed example:
175179

176180
```bash
177181
kubectl describe pod mypod
178182
```
179183

180184
The output of the command resembles the following example:
181185

182-
```bash
186+
```console
183187
[...]
184188
Volumes:
185189
volume:
@@ -200,19 +204,23 @@ Events:
200204
[...]
201205
```
202206

203-
### Use Ultra Disks
207+
### Use Azure ultra disks
204208

205-
To use ultra disk, see [Use Ultra Disks on Azure Kubernetes Service (AKS)][use-ultra-disks].
209+
To use Azure ultra disk, see [Use ultra disks on Azure Kubernetes Service (AKS)][use-ultra-disks].
206210

207211
### Back up a persistent volume
208212

209213
To back up the data in your persistent volume, take a snapshot of the managed disk for the volume. You can then use this snapshot to create a restored disk and attach to pods as a means of restoring the data.
210214

211-
First, get the volume name with the `kubectl get pvc` command, such as for the PVC named *azure-managed-disk*:
215+
First, get the volume name with the [kubectl get][kubectl-get] command, such as for the PVC named *azure-managed-disk*:
212216

213-
```console
214-
$ kubectl get pvc azure-managed-disk
217+
```bash
218+
kubectl get pvc azure-managed-disk
219+
```
215220

221+
The output of the command resembles the following example:
222+
223+
```console
216224
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
217225
azure-managed-disk Bound pvc-faf0f176-8b8d-11e8-923b-deb28c58d242 5Gi RWO managed-premium 3m
218226
```
@@ -225,7 +233,7 @@ az disk list --query '[].id | [?contains(@,`pvc-faf0f176-8b8d-11e8-923b-deb28c58
225233
/subscriptions/<guid>/resourceGroups/MC_MYRESOURCEGROUP_MYAKSCLUSTER_EASTUS/providers/MicrosoftCompute/disks/kubernetes-dynamic-pvc-faf0f176-8b8d-11e8-923b-deb28c58d242
226234
```
227235

228-
Use the disk ID to create a snapshot disk with [az snapshot create][az-snapshot-create]. The following example creates a snapshot named *pvcSnapshot* in the same resource group as the AKS cluster (*MC_myResourceGroup_myAKSCluster_eastus*). You may encounter permission issues if you create snapshots and restore disks in resource groups that the AKS cluster doesn't have access to.
236+
Use the disk ID to create a snapshot disk with [az snapshot create][az-snapshot-create]. The following example creates a snapshot named *pvcSnapshot* in the same resource group as the AKS cluster *MC_myResourceGroup_myAKSCluster_eastus*. You may encounter permission issues if you create snapshots and restore disks in resource groups that the AKS cluster doesn't have access to.
229237

230238
```azurecli
231239
az snapshot create \
@@ -282,12 +290,12 @@ spec:
282290
Create the pod with the [kubectl apply][kubectl-apply] command, as shown in the following example:
283291
284292
```bash
285-
$ kubectl apply -f azure-restored.yaml
293+
kubectl apply -f azure-restored.yaml
286294
```
287295

288296
The output of the command resembles the following example:
289297

290-
```bash
298+
```console
291299
pod/mypodrestored created
292300
```
293301

@@ -299,7 +307,7 @@ kubectl describe pod mypodrestored
299307

300308
The output of the command resembles the following example:
301309

302-
```bash
310+
```console
303311
[...]
304312
Volumes:
305313
volume:
@@ -337,7 +345,7 @@ When you create an Azure disk for use with AKS, you can create the disk resource
337345
1. Identify the resource group name using the [az aks show][az-aks-show] command and add the `--query nodeResourceGroup` parameter. The following example gets the node resource group for the AKS cluster name *myAKSCluster* in the resource group name *myResourceGroup*:
338346

339347
```azurecli-interactive
340-
$ az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv
348+
az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv
341349
342350
MC_myResourceGroup_myAKSCluster_eastus
343351
```
@@ -402,19 +410,23 @@ When you create an Azure disk for use with AKS, you can create the disk resource
402410
storageClassName: managed-csi
403411
```
404412
405-
3. Use the `kubectl` commands to create the *PersistentVolume* and *PersistentVolumeClaim*, referencing the two YAML files created earlier:
413+
3. Use the [kubectl apply][kubectl-apply] commands to create the *PersistentVolume* and *PersistentVolumeClaim*, referencing the two YAML files created earlier:
406414
407-
```console
415+
```bash
408416
kubectl apply -f pv-azuredisk.yaml
409417
kubectl apply -f pvc-azuredisk.yaml
410418
```
411419
412420
4. To verify your *PersistentVolumeClaim* is created and bound to the *PersistentVolume*, run the
413421
following command:
414422
423+
```bash
424+
kubectl get pvc pvc-azuredisk
425+
```
426+
427+
The output of the command resembles the following example:
428+
415429
```console
416-
$ kubectl get pvc pvc-azuredisk
417-
418430
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
419431
pvc-azuredisk Bound pv-azuredisk 20Gi RWO 5s
420432
```
@@ -448,10 +460,10 @@ following command:
448460
claimName: pvc-azuredisk
449461
```
450462
451-
6. Run the following command to apply the configuration and mount the volume, referencing the YAML
463+
6. Run the [kubectl apply][kubectl-apply] command to apply the configuration and mount the volume, referencing the YAML
452464
configuration file created in the previous steps:
453465
454-
```console
466+
```bash
455467
kubectl apply -f azure-disk-pod.yaml
456468
```
457469
@@ -467,6 +479,7 @@ configuration file created in the previous steps:
467479
[kubernetes-storage-classes]: https://kubernetes.io/docs/concepts/storage/storage-classes/
468480
[kubernetes-volumes]: https://kubernetes.io/docs/concepts/storage/persistent-volumes/
469481
[managed-disk-pricing-performance]: https://azure.microsoft.com/pricing/details/managed-disks/
482+
[kubectl-describe]: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#describe
470483
471484
<!-- LINKS - internal -->
472485
[azure-storage-account]: ../storage/common/storage-introduction.md

0 commit comments

Comments
 (0)