Skip to content

Azure Blobfuse Container Storage Interface (CSI) Storage Plugin

License

Notifications You must be signed in to change notification settings

andyzhangx/blobfuse-csi-driver

This branch is 191 commits behind kubernetes-sigs/blob-csi-driver:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1331337 · Dec 16, 2024
Nov 21, 2024
Dec 16, 2024
Dec 4, 2024
Oct 15, 2024
Sep 18, 2024
Dec 9, 2024
Dec 16, 2024
Dec 15, 2024
Jun 13, 2022
Nov 20, 2023
Sep 12, 2020
Dec 12, 2024
Sep 17, 2022
Feb 15, 2019
Dec 16, 2024
Sep 5, 2023
Dec 4, 2024
Aug 9, 2020
Feb 27, 2019
Feb 27, 2019
Dec 15, 2024
Dec 15, 2024
Dec 21, 2020

Repository files navigation

Azure Blob Storage CSI driver for Kubernetes

linux build status Coverage Status FOSSA Status Artifact Hub

About

This driver allows Kubernetes to access Azure Storage through one of following methods:

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 blob csi driver.

csi plugin name: blob.csi.azure.com

Project status: GA

Container Images & Kubernetes Compatibility:

driver version Image supported k8s version
master branch mcr.microsoft.com/k8s/csi/blob-csi:latest 1.21+
v1.25.0 mcr.microsoft.com/oss/kubernetes-csi/blob-csi:v1.25.0 1.21+
v1.24.5 mcr.microsoft.com/oss/kubernetes-csi/blob-csi:v1.24.5 1.21+
v1.23.9 mcr.microsoft.com/oss/kubernetes-csi/blob-csi:v1.23.9 1.21+
v1.22.9 mcr.microsoft.com/oss/kubernetes-csi/blob-csi:v1.22.9 1.21+

Driver parameters

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

Prerequisites

Option#1: Provide cloud provider config with Azure credentials

  • This option depends on cloud provider config file (here is config example), config file path on different clusters:
    • AKS, capz, aks-engine: /etc/kubernetes/azure.json
    • Azure RedHat OpenShift: /etc/kubernetes/cloud.conf
  • 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
  • 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 and virtual network resource group

Option#2: Bring your own storage account

This option does not depend on cloud provider config file, supports cross subscription and on-premise cluster scenario. Refer to detailed steps.

Install driver on a Kubernetes cluster

Note: this feature is only available in v1.19.5, v1.21.1 and later versions.

Execute following command to install a specific version of blobfuse v2 once driver is running on the agent node:

kubectl patch daemonset csi-blob-node -n kube-system -p '{"spec":{"template":{"spec":{"initContainers":[{"env":[{"name":"INSTALL_BLOBFUSE2","value":"true"},{"name":"BLOBFUSE2_VERSION","value":"2.4.0"}],"name":"install-blobfuse-proxy"}]}}}}'

Execute following command to install a specific version of blobfuse v1 once driver is running on the agent node:

kubectl patch daemonset csi-blob-node -n kube-system -p '{"spec":{"template":{"spec":{"initContainers":[{"env":[{"name":"INSTALL_BLOBFUSE","value":"true"},{"name":"BLOBFUSE_VERSION","value":"1.4.5"}],"name":"install-blobfuse-proxy"}]}}}}'

Examples

Usage

Troubleshooting

Support

Limitations

Kubernetes Development

View CI Results

Links

About

Azure Blobfuse Container Storage Interface (CSI) Storage Plugin

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 83.3%
  • Shell 10.4%
  • Python 3.8%
  • Makefile 1.3%
  • Other 1.2%