Skip to content

Commit 3a49688

Browse files
committed
updated concepts article and made other revisions
1 parent 3a6f4a1 commit 3a49688

File tree

3 files changed

+27
-24
lines changed

3 files changed

+27
-24
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.date: 01/18/2023
99

1010
# Create and use a volume with Azure Files in Azure Kubernetes Service (AKS)
1111

12-
A persistent volume represents a piece of storage that has been provisioned for use with Kubernetes pods. A persistent volume can be used by one or many pods, and can be dynamically or statically provisioned. If multiple pods need concurrent access to the same storage volume, you can use Azure Files to connect using the [Server Message Block (SMB) protocol][smb-overview]. This article shows you how to dynamically create an Azure Files share for use by multiple pods in an Azure Kubernetes Service (AKS) cluster.
12+
A persistent volume represents a piece of storage that has been provisioned for use with Kubernetes pods. A persistent volume can be used by one or many pods, and can be dynamically or statically provisioned. If multiple pods need concurrent access to the same storage volume, you can use Azure Files to connect using the [Server Message Block (SMB) protocol][smb-overview]. This article shows you how to dynamically create an Azure file share for use by multiple pods in an Azure Kubernetes Service (AKS) cluster.
1313

1414
This article shows you how to:
1515

@@ -474,7 +474,7 @@ kubectl apply -f azurefiles-mount-options-pvc.yaml
474474

475475
## Next steps
476476

477-
For Azure File CSI driver parameters, see [CSI driver parameters][CSI driver parameters].
477+
For Azure Files CSI driver parameters, see [CSI driver parameters][CSI driver parameters].
478478

479479
For associated best practices, see [Best practices for storage and backups in AKS][operator-best-practices-storage].
480480

articles/aks/azure-files-csi.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ To create an AKS cluster with CSI drivers support, see [Enable CSI drivers on AK
1616
> [!NOTE]
1717
> *In-tree drivers* refers to the current storage drivers that are part of the core Kubernetes code versus the new CSI drivers, which are plug-ins.
1818
19-
## Azure File CSI driver new features
19+
## Azure Files CSI driver new features
2020

21-
In addition to the original in-tree driver features, Azure File CSI driver supports the following new features:
21+
In addition to the original in-tree driver features, Azure Files CSI driver supports the following new features:
2222

2323
- Network File System (NFS) version 4.1
2424
- [Private endpoint][private-endpoint-overview]
@@ -34,7 +34,7 @@ For more information on Kubernetes volumes, see [Storage options for application
3434

3535
## Dynamically create Azure Files PVs by using the built-in storage classes
3636

37-
A storage class is used to define how an Azure file share is created. A storage account is automatically created in the [node resource group][node-resource-group] for use with the storage class to hold the Azure Files shares. Choose one of the following [Azure storage redundancy SKUs][storage-skus] for *skuName*:
37+
A storage class is used to define how an Azure file share is created. A storage account is automatically created in the [node resource group][node-resource-group] for use with the storage class to hold the Azure files share. Choose one of the following [Azure storage redundancy SKUs][storage-skus] for *skuName*:
3838

3939
* **Standard_LRS**: Standard locally redundant storage
4040
* **Standard_GRS**: Standard geo-redundant storage
@@ -47,14 +47,14 @@ A storage class is used to define how an Azure file share is created. A storage
4747
> [!NOTE]
4848
> Azure Files supports Azure Premium Storage. The minimum premium file share capacity is 100 GiB.
4949
50-
When you use storage CSI drivers on AKS, there are two more built-in `StorageClasses` that uses the Azure File CSI storage drivers. The other CSI storage classes are created with the cluster alongside the in-tree default storage classes.
50+
When you use storage CSI drivers on AKS, there are two more built-in `StorageClasses` that uses the Azure Files CSI storage drivers. The other CSI storage classes are created with the cluster alongside the in-tree default storage classes.
5151

52-
- `azurefile-csi`: Uses Azure Standard Storage to create an Azure Files share.
53-
- `azurefile-csi-premium`: Uses Azure Premium Storage to create an Azure Files share.
52+
- `azurefile-csi`: Uses Azure Standard Storage to create an Azure file share.
53+
- `azurefile-csi-premium`: Uses Azure Premium Storage to create an Azure file share.
5454

55-
The reclaim policy on both storage classes ensures that the underlying Azure Files share is deleted when the respective PV is deleted. The storage classes also configure the file shares to be expandable, you just need to edit the [persistent volume claim][persistent-volume-claim-overview] (PVC) with the new size.
55+
The reclaim policy on both storage classes ensures that the underlying Azure files share is deleted when the respective PV is deleted. The storage classes also configure the file shares to be expandable, you just need to edit the [persistent volume claim][persistent-volume-claim-overview] (PVC) with the new size.
5656

57-
To use these storage classes, create a PVC and respective pod that references and uses them. A PVC is used to automatically provision storage based on a storage class. A PVC can use one of the pre-created storage classes or a user-defined storage class to create an Azure Files share for the desired SKU and size. When you create a pod definition, the PVC is specified to request the desired storage.
57+
To use these storage classes, create a PVC and respective pod that references and uses them. A PVC is used to automatically provision storage based on a storage class. A PVC can use one of the pre-created storage classes or a user-defined storage class to create an Azure files share for the desired SKU and size. When you create a pod definition, the PVC is specified to request the desired storage.
5858

5959
Create an [example PVC and pod that prints the current date into an `outfile`](https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/deploy/example/statefulset.yaml) by running the [kubectl apply][kubectl-apply] commands:
6060

@@ -124,7 +124,7 @@ The output of the command resembles the following example:
124124
storageclass.storage.k8s.io/my-azurefile created
125125
```
126126

127-
The Azure File CSI driver supports creating [snapshots of persistent volumes](https://kubernetes-csi.github.io/docs/snapshot-restore-feature.html) and the underlying file shares.
127+
The Azure Files CSI driver supports creating [snapshots of persistent volumes](https://kubernetes-csi.github.io/docs/snapshot-restore-feature.html) and the underlying file shares.
128128

129129
> [!NOTE]
130130
> This driver only supports snapshot creation, restore from snapshot is not supported by this driver. Snapshots can be restored from Azure portal or CLI. For more information about creating and restoring a snapshot, see [Overview of share snapshots for Azure Files][share-snapshots-overview].
@@ -418,7 +418,7 @@ accountname.file.core.windows.net:/accountname/pvc-fa72ec43-ae64-42e4-a8a2-55660
418418

419419
## Windows containers
420420

421-
The Azure File CSI driver also supports Windows nodes and containers. To use Windows containers, follow the [Windows containers quickstart](./learn/quick-windows-container-deploy-cli.md) to add a Windows node pool.
421+
The Azure Files CSI driver also supports Windows nodes and containers. To use Windows containers, follow the [Windows containers quickstart](./learn/quick-windows-container-deploy-cli.md) to add a Windows node pool.
422422

423423
After you have a Windows node pool, use the built-in storage classes like `azurefile-csi` or create a custom one. You can deploy an example [Windows-based stateful set](https://github.com/kubernetes-sigs/azurefile-csi-driver/blob/master/deploy/example/windows/statefulset.yaml) that saves timestamps into a file `data.txt` by running the [kubectl apply][kubectl-apply] command:
424424

articles/aks/concepts-storage.md

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Concepts - Storage in Azure Kubernetes Services (AKS)
33
description: Learn about storage in Azure Kubernetes Service (AKS), including volumes, persistent volumes, storage classes, and claims
44
ms.topic: conceptual
5-
ms.date: 01/18/2023
5+
ms.date: 04/26/2023
66

77
---
88

@@ -30,14 +30,16 @@ This article introduces the core concepts that provide storage to your applicati
3030

3131
Kubernetes typically treats individual pods as ephemeral, disposable resources. Applications have different approaches available to them for using and persisting data. A *volume* represents a way to store, retrieve, and persist data across pods and through the application lifecycle.
3232

33-
Traditional volumes are created as Kubernetes resources backed by Azure Storage. You can manually create data volumes to be assigned to pods directly, or have Kubernetes automatically create them. Data volumes can use: [Azure Disks][disks-types], [Azure Files][storage-files-planning], [Azure NetApp Files][azure-netapp-files-service-levels], or [Azure Blobs][storage-account-overview].
33+
Traditional volumes are created as Kubernetes resources backed by Azure Storage. You can manually create data volumes to be assigned to pods directly, or have Kubernetes automatically create them. Data volumes can use: [Azure Disk][disks-types], [Azure Files][storage-files-planning], [Azure NetApp Files][azure-netapp-files-service-levels], or [Azure Blobs][storage-account-overview].
3434

3535
> [!NOTE]
36-
> Depending on the VM SKU that's being used, the Azure Disks CSI driver might have a per-node volume limit. For some powerful VMs (for example, 16 cores), the limit is 64 volumes per node. To identify the limit per VM SKU, review the **Max data disks** column for each VM SKU offered. For a list of VM SKUs offered and their corresponding detailed capacity limits, see [General purpose virtual machine sizes][general-purpose-machine-sizes].
36+
> Depending on the VM SKU that's being used, the Azure Disk CSI driver might have a per-node volume limit. For some powerful VMs (for example, 16 cores), the limit is 64 volumes per node. To identify the limit per VM SKU, review the **Max data disks** column for each VM SKU offered. For a list of VM SKUs offered and their corresponding detailed capacity limits, see [General purpose virtual machine sizes][general-purpose-machine-sizes].
3737
38-
### Azure Disks
38+
To help determine best fit for your workload between Azure Files and Azure NetApp Files, review the information provided in the article [Azure Files and Azure NetApp Files comparison][azure-files-azure-netapp-comparison].
3939

40-
Use [Azure Disks][azure-disk-csi] to create a Kubernetes *DataDisk* resource. Disks types include:
40+
### Azure Disk
41+
42+
Use [Azure Disk][azure-disk-csi] to create a Kubernetes *DataDisk* resource. Disks types include:
4143

4244
* Ultra Disks
4345
* Premium SSDs
@@ -47,7 +49,7 @@ Use [Azure Disks][azure-disk-csi] to create a Kubernetes *DataDisk* resource. Di
4749
> [!TIP]
4850
> For most production and development workloads, use Premium SSD.
4951
50-
Because Azure Disks are mounted as *ReadWriteOnce*, they're only available to a single node. For storage volumes that can be accessed by pods on multiple nodes simultaneously, use Azure Files.
52+
Because Azure Disk are mounted as *ReadWriteOnce*, they're only available to a single node. For storage volumes that can be accessed by pods on multiple nodes simultaneously, use Azure Files.
5153

5254
### Azure Files
5355

@@ -103,11 +105,11 @@ Like using a secret:
103105

104106
Volumes defined and created as part of the pod lifecycle only exist until you delete the pod. Pods often expect their storage to remain if a pod is rescheduled on a different host during a maintenance event, especially in StatefulSets. A *persistent volume* (PV) is a storage resource created and managed by the Kubernetes API that can exist beyond the lifetime of an individual pod.
105107

106-
You can use [Azure Disks](azure-csi-disk-storage-provision.md) or [Azure Files](azure-csi-files-storage-provision.md) to provide the PersistentVolume. As noted in the [Volumes](#volumes) section, the choice of Disks or Files is often determined by the need for concurrent access to the data or the performance tier.
108+
You can use [Azure Disk](azure-csi-disk-storage-provision.md) or [Azure Files](azure-csi-files-storage-provision.md) to provide the PersistentVolume. As noted in the [Volumes](#volumes) section, the choice of Disks or Files is often determined by the need for concurrent access to the data or the performance tier.
107109

108110
![Persistent volumes in an Azure Kubernetes Services (AKS) cluster](media/concepts-storage/persistent-volumes.png)
109111

110-
A PersistentVolume can be *statically* created by a cluster administrator, or *dynamically* created by the Kubernetes API server. If a pod is scheduled and requests currently unavailable storage, Kubernetes can create the underlying Azure Disk or Files storage and attach it to the pod. Dynamic provisioning uses a *StorageClass* to identify what type of Azure storage needs to be created.
112+
A PersistentVolume can be *statically* created by a cluster administrator, or *dynamically* created by the Kubernetes API server. If a pod is scheduled and requests currently unavailable storage, Kubernetes can create the underlying Azure Disk or File storage and attach it to the pod. Dynamic provisioning uses a *StorageClass* to identify what type of Azure storage needs to be created.
111113

112114
> [!IMPORTANT]
113115
> Persistent volumes can't be shared by Windows and Linux pods due to differences in file system support between the two operating systems.
@@ -124,8 +126,8 @@ For clusters using the [Container Storage Interface (CSI) drivers][csi-storage-d
124126
|---|---|
125127
| `managed-csi` | Uses Azure StandardSSD locally redundant storage (LRS) to create a Managed Disk. The reclaim policy ensures that the underlying Azure Disk is deleted when the persistent volume that used it is deleted. The storage class also configures the persistent volumes to be expandable, you just need to edit the persistent volume claim with the new size. |
126128
| `managed-csi-premium` | Uses Azure Premium locally redundant storage (LRS) to create a Managed Disk. The reclaim policy again ensures that the underlying Azure Disk is deleted when the persistent volume that used it is deleted. Similarly, this storage class allows for persistent volumes to be expanded. |
127-
| `azurefile-csi` | Uses Azure Standard storage to create an Azure File Share. The reclaim policy ensures that the underlying Azure File Share is deleted when the persistent volume that used it is deleted. |
128-
| `azurefile-csi-premium` | Uses Azure Premium storage to create an Azure File Share. The reclaim policy ensures that the underlying Azure File Share is deleted when the persistent volume that used it is deleted.|
129+
| `azurefile-csi` | Uses Azure Standard storage to create an Azure file share. The reclaim policy ensures that the underlying Azure file share is deleted when the persistent volume that used it is deleted. |
130+
| `azurefile-csi-premium` | Uses Azure Premium storage to create an Azure file share. The reclaim policy ensures that the underlying Azure file share is deleted when the persistent volume that used it is deleted.|
129131
| `azureblob-nfs-premium` | Uses Azure Premium storage to create an Azure Blob storage container and connect using the NFS v3 protocol. The reclaim policy ensures that the underlying Azure Blob storage container is deleted when the persistent volume that used it is deleted. |
130132
| `azureblob-fuse-premium` | Uses Azure Premium storage to create an Azure Blob storage container and connect using BlobFuse. The reclaim policy ensures that the underlying Azure Blob storage container is deleted when the persistent volume that used it is deleted. |
131133

@@ -225,8 +227,8 @@ For associated best practices, see [Best practices for storage and backups in AK
225227

226228
To see how to use CSI drivers, see the following how-to articles:
227229

228-
- [Enable Container Storage Interface (CSI) drivers for Azure Disks, Azure Files, and Azure Blob storage on Azure Kubernetes Service][csi-storage-drivers]
229-
- [Use Azure Disks CSI driver in Azure Kubernetes Service][azure-disk-csi]
230+
- [Enable Container Storage Interface (CSI) drivers for Azure Disk, Azure Files, and Azure Blob storage on Azure Kubernetes Service][csi-storage-drivers]
231+
- [Use Azure Disk CSI driver in Azure Kubernetes Service][azure-disk-csi]
230232
- [Use Azure Files CSI driver in Azure Kubernetes Service][azure-files-csi]
231233
- [Use Azure Blob storage CSI driver (preview) in Azure Kubernetes Service][azure-blob-csi]
232234
- [Integrate Azure NetApp Files with Azure Kubernetes Service][azure-netapp-files]
@@ -260,3 +262,4 @@ For more information on core Kubernetes and AKS concepts, see the following arti
260262
[csi-storage-drivers]: csi-storage-drivers.md
261263
[azure-blob-csi]: azure-blob-csi.md
262264
[general-purpose-machine-sizes]: ../virtual-machines/sizes-general.md
265+
[azure-files-azure-netapp-comparison]: ../storage/files/storage-files-netapp-comparison.md

0 commit comments

Comments
 (0)