/azuredisk-csi-driver

Azure Disk CSI Driver

Primary LanguageGoApache License 2.0Apache-2.0

Azure Disk CSI driver for Kubernetes

linux build status windows build status Coverage Status FOSSA Status Artifact Hub

About

This driver allows Kubernetes to access Azure Disk volume, csi plugin name: disk.csi.azure.com, supported accessModes: ReadWriteOnce

Disclaimer: Deploying this driver manually is not an officially supported Microsoft product. For a fully managed and supported experience on Kubernetes, use AKS with the managed Azure disk csi driver.

Project status: GA

Container Images & Kubernetes Compatibility

Driver Version Image supported k8s version
master branch mcr.microsoft.com/k8s/csi/azuredisk-csi:latest 1.21+
v1.30.2 mcr.microsoft.com/oss/kubernetes-csi/azuredisk-csi:v1.30.2 1.21+
v1.29.7 mcr.microsoft.com/oss/kubernetes-csi/azuredisk-csi:v1.29.7 1.21+
v1.28.9 mcr.microsoft.com/oss/kubernetes-csi/azuredisk-csi:v1.28.9 1.21+

Driver parameters

Please refer to disk.csi.azure.com driver parameters

storage class disk.csi.azure.com parameters are compatible with built-in azuredisk plugin

Prerequisite

  • The driver depends on cloud provider config file (here is config example), config file path on different platforms:
  • specify a different config file path via configmap
    create configmap "azure-cred-file" before driver starts up
    kubectl create configmap azure-cred-file --from-literal=path="/etc/kubernetes/cloud.conf" --from-literal=path-windows="C:\\k\\cloud.conf" -n kube-system
  • edge zone support in cloud provider config
    `extendedLocationType` and `extendedLocationName` should be added into cloud provider config file, available values of `extendedLocationName` are `attatlanta1`, `attdallas1`, `attnewyork1`, `attdetroit1`
    ```"extendedLocationType": "edgezone","extendedLocationName": "attatlanta1",```
  • Cloud provider config can also be specified via kubernetes secret, check details here
  • Make sure identity used by driver has Contributor role on node resource group
    • When install open source driver on the cluster, ensure agentpool service principal or managed service identity is assigned to the Contributor role on the resource group used to store managed disks.

Install driver on a Kubernetes cluster

Examples

Features

Troubleshooting

Support

Limitations

Kubernetes Development

View CI Results

Links