google-cloud-storage-fuse

Mounts Cloud Storage buckets as POSIX file systems with tuned gcsfuse configurations.

Updated May 11, 2026
One-click install
npx skills add https://github.com/alon3153/upe-social-publisher --skill google-cloud-storage-fuse-alon3153
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: google-cloud-storage-fuse
Source: https://github.com/alon3153/upe-social-publisher/tree/main/.agents/skills/google-cloud-storage-fuse
Command: npx skills add https://github.com/alon3153/upe-social-publisher --skill google-cloud-storage-fuse-alon3153

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Mounting a Cloud Storage bucket with gcsfuse is one command, but the default mount is tuned for coherency, not performance, and object-store semantics leak through the file interface. This Skill guides the decision of whether FUSE fits a workload at all, then tunes mounts for GKE, Compute Engine, and Cloud Run, and diagnoses slow training runs or billing spikes. ## Core Features & Use Cases - Fit Gate Decisioning: Determines whether a workload should use gcsfuse, native gs:// reads, or Filestore/Managed Lustre based on access patterns. - Tuned GKE Deployments: Provides version-gated PV/PVC manifests, Workload Identity principal:// IAM bindings, profile StorageClasses, and file cache sizing on Local SSD. - Checkpoint & Write Safety: Delivers verdicts on rename atomicity, close-time finalization, concurrent writers, and HNS migration for ML checkpointing. - Performance & Cost Diagnosis: Maps gcsfuse metrics signatures to misconfigurations and attributes Cloud Storage bill lines to Class A/B operations. - Use Case: A training job re-reads a 5M-file dataset each epoch and the Cloud Storage bill spikes; use this Skill to enable the file cache, set infinite metadata TTLs for immutable data, and verify cache hit rates approach 100% from epoch two. ## Quick Start Ask the assistant to mount your Cloud Storage bucket for a GKE training workload and tune the gcsfuse mount for multi-epoch reads.

Frequently Asked Questions about google-cloud-storage-fuse

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I mount a Cloud Storage bucket on GKE for training?▼

Use a PV/PVC on the pre-installed gcsfusecsi-training StorageClass on GKE 1.35.1-gke.1616000 or later, with a plain Kubernetes ServiceAccount authorized via a principal:// IAM binding on the bucket. Add the gke-gcsfuse/volumes annotation to the pod for sidecar injection.

When should I use gcsfuse versus native gs:// reads?▼

Use native gs:// reads when your library supports them, such as pandas via gcsfs or TensorFlow tf.io.gfile. Use gcsfuse only when code is hardcoded to POSIX paths with read-heavy or new-file-write patterns; use Filestore or Managed Lustre for shared mutable writes needing file locking.

Is the write-temp-then-rename checkpoint pattern safe on gcsfuse?▼

File renames are atomic since gcsfuse v3.2.0, but directory renames on flat buckets fail by default and become non-atomic if forced. The pattern is fully safe only on hierarchical namespace buckets, where directory renames are atomic metadata-only operations.

Why is training slow through a gcsfuse mount?▼

The default mount is coherency-tuned: file cache off, 60-second metadata TTL, and a 34 MiB stat cache, so every epoch re-downloads data and re-stats files. Enable the file cache sized to the dataset and set infinite metadata TTLs for immutable data, then verify with gcsfuse metrics.

Does gcsfuse support fsync for checkpoint durability?▼

No. Under streaming writes, the default since v3.0, fsync does not finalize the object; data is durable on Cloud Storage only after close(). Rely on close-time finalization rather than fsync for checkpoint durability.

Why did my Cloud Storage bill spike after mounting a bucket?▼

Without a file cache, every epoch re-reads all objects as Class B operations, and expiring metadata plus disabled list caching add repeated objects.get and objects.list calls. Class A list operations cost roughly 12.5 times Class B per operation on standard buckets.