MCPcopy Index your code
hub / github.com/GoogleCloudPlatform/gcs-fuse-csi-driver

github.com/GoogleCloudPlatform/gcs-fuse-csi-driver @v19.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v19.3 ↗ · + Follow
719 symbols 2,362 edges 95 files 175 documented · 24% updated 6d agov1.22.21 · 2026-07-01★ 16426 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Google Cloud Storage FUSE CSI Driver

The Google Cloud Storage FUSE Container Storage Interface (CSI) Plugin.

WARNING: Manual deployment of this driver to your GKE cluster is not recommended. Instead users should use GKE to automatically deploy and manage the CSI driver as an add-on feature. See the GKE documentation Access Cloud Storage buckets with the Cloud Storage FUSE CSI driver.

DISCLAIMER: Manual deployment of the driver to your cluster is not officially supported by Google.

Project Overview

Filesystem in Userspace (FUSE) is an interface used to export a filesystem to the Linux kernel. Cloud Storage FUSE allows you to mount Cloud Storage buckets as a file system so that applications can access the objects in a bucket using common File IO operations (e.g. open, read, write, close) rather than using cloud-specific APIs.

The Google Cloud Storage FUSE CSI Driver lets you use the Kubernetes API to mount pre-existing Cloud Storage buckets as volumes which are consumable from a Pod. Your applications can upload and download objects using Cloud Storage FUSE file system semantics.

The driver natively supports the following ways for you to configure your Cloud Storage buckets-backed volumes:

  • CSI ephemeral volumes: You specify the Cloud Storage buckets bucket in-line with the Pod specification. To learn more about this volume type, see the CSI ephemeral volumes overview in the open source Kubernetes documentation.

  • Static provisioning: You create a PersistentVolume resource that refers to the Cloud Storage buckets bucket. Your Pod can then reference a PersistentVolumeClaim that is bound to this PersistentVolume. To learn more about this workflow, see Configure a Pod to Use a PersistentVolume for Storage.

Currently, the driver does not support Dynamic Volume Provisioning.

Benefits

  • The Cloud Storage FUSE CSI driver on your cluster turns on automatic deployment and management of the driver. The driver works on both GKE Standard and Autopilot clusters. To leverage this benefit, you need to use GKE to automatically deploy and manage the CSI driver as a add-on feature. See the GKE documentation Access Cloud Storage buckets with the Cloud Storage FUSE CSI driver.

  • The Cloud Storage FUSE CSI driver does not need privileged access that is typically required by FUSE clients. This enables a better security posture.

  • The Cloud Storage FUSE CSI driver allows applications to access data stored in Cloud Storage buckets using file system semantics.

  • The Cloud Storage FUSE CSI driver supports the ReadWriteMany, ReadOnlyMany, and ReadWriteOnce access modes.

  • You can use GKE Workload Identity to easily manage authentication while having granular control over how your Pods access Cloud Storage buckets objects.

  • Many AI/ML/Batch workloads store data in Cloud Storage buckets. The Cloud Storage FUSE CSI driver enables GKE customers running ML training and serving workloads using frameworks like Ray, PyTorch, Spark, and TensorFlow to run their workloads directly on a GKE cluster without requiring any change to the code. This provides portability and simplicity with file semantics.

Project Status

Status: General Availability

GKE Compatibility

Refer to the Google Cloud Storage FUSE CSI Driver Release Notes.

Get Started

Development and Contribution

Refer to the Cloud Storage FUSE CSI Driver Development Guide.

Attribution

This project is inspired by the following open source projects:

References

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 323
Function 295
Struct 93
Interface 8

Languages

Go97%
Python3%

Modules by API surface

test/e2e/specs/specs.go102 symbols
pkg/scanner/scanner.go37 symbols
pkg/cloud_provider/storage/storage.go37 symbols
pkg/scanner/scanner_test.go29 symbols
test/e2e/specs/testdriver.go23 symbols
pkg/webhook/mutatingwebhook_test.go23 symbols
pkg/csi_driver/utils.go16 symbols
pkg/cloud_provider/clientset/clientset.go16 symbols
pkg/metrics/metrics.go15 symbols
pkg/cloud_provider/storage/fake.go15 symbols
pkg/sidecar_mounter/sidecar_mounter.go14 symbols
pkg/csi_driver/server.go12 symbols

For agents

$ claude mcp add gcs-fuse-csi-driver \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page