Azure Blob NFS for K8: Unable to see containers in azure storage account after pvcs are in bound.

Kaalasurya 20 Reputation points
2025-06-10T01:34:19.74+00:00

I have kubernetes cluster in azure. For my application we want to use the azure blob nfs as pvc. Below is my storage class file. I configured pvc for it and added it to pod. PvC is in bound stage, pod is running fine and storage class is created but I cant see any container in the storage account in portal. Is there anything I am missing to make it work. I am using same storage class for 3 different pvcs . All 3 pvcs are in bound stage but still I cant see any containers in azure blob. All pods are running as well. Is there anything I am missing here. I am using 1.29.5 k8 version. I read somewhere we cant see containers in azure storage account portal created by azure blob nfs? Cant verify from any official docs though. apiVersion: storage.k8s.io/v1

kind: StorageClass

metadata:

name: azureblob-nfs

provisioner: blob.csi.azure.com

parameters:

secret: azure-sec

protocol: nfs

tags: environment=Development

volumeBindingMode: Immediate

allowVolumeExpansion: true

mountOptions:

- nconnect=4

Azure Blob Storage
Azure Blob Storage
An Azure service that stores unstructured data in the cloud as blobs.
3,192 questions
{count} votes

Accepted answer
  1. Nandamuri Pranay Teja 3,610 Reputation points Microsoft External Staff Moderator
    2025-06-10T05:01:44.57+00:00

    Hello Kaalasurya

    Thank you for your question!

    Blob storage with NFS 3.0 protocol support requires Azure Data Lake Storage Gen2 to be enabled for the storage account." It implies that when NFS is enabled, you're working with ADLS Gen2 capabilities. https://learn.microsoft.com/en-us/azure/storage/blobs/network-file-system-protocol-support

    Enabling the NFSv3 protocol on an Azure Storage Account effectively activates the Hierarchical Namespace (HNS) feature, thereby converting the account into an ADLS Gen2 account. ADLS Gen2 accounts function with "Filesystems" (which are occasionally called "containers" in the context of ADLS Gen2 documentation, although they are different from the Blob Storage "Containers" blade).

    These filesystems are intended for hierarchical directory structures. The blob.csi.azure.com provisioner, when utilizing protocol: nfs, provisions these ADLS Gen2 Filesystems, rather than the previous flat-namespace Blob Storage containers.

    You are not missing anything. It's expected that you won't see these under "Blob Containers" because the CSI driver is creating ADLS Gen2 Filesystems. Look for them under the "File systems" blade in your storage account in the Azure portal.

    • In the Azure portal, navigate to your storage account.
    • In the left-hand menu, under the "Data storage" section, you need to click on "File systems".
    • Your PVCs bound to azureblob-nfs should correspond to entries in this "File systems" blade.

    If you still don't see them under "File systems

    1. Ensure your storage account is indeed a General-purpose v2 account and that Hierarchical Namespace is enabled on its "Configuration" blade. NFSv3 requires HNS. Check the logs of the blob-csi-driver pods (both controller and node components), typically in the kube-system namespace of your AKS cluster. These logs would show errors if provisioning failed due to permissions, network issues, or other problems.
    2. The identity used by your AKS cluster (Service Principal or Managed Identity) needs the "Storage Blob Data Contributor" role on the storage account for the CSI driver to successfully create and manage these filesystems.

    Hope the above answer helps! Please let us know do you have any further queries.


    Please do not forget to "Accept the answer” and “up-vote” wherever the information provided helps you, this can be beneficial to other community members. 

    User's image

     


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.