gke-storage

Configures GKE storage including PVCs, StorageClasses, Filestore, and GCS FUSE volumes.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Choosing and configuring the right storage on Google Kubernetes Engine is error-prone: teams must pick between Persistent Disk, Filestore, GCS FUSE, and Parallelstore, write correct StorageClass and PVC manifests, and handle expansion and access modes correctly. This Skill provides validated manifests and decision guidance for GKE storage provisioning. ## Core Features & Use Cases - StorageClass and PVC manifests: Ready-to-use YAML for block storage (ReadWriteOnce), shared Filestore volumes (ReadWriteMany), and custom regional SSD classes with volume expansion enabled. - GCS FUSE bucket mounts: Mount Cloud Storage buckets directly as pod volumes using the gcsfuse CSI driver with Workload Identity, no PVC required. - Volume expansion guidance: Resize existing PVCs via kubectl patch or MCP tools when the StorageClass allows expansion. - Use Case: A database workload needs high-IOPS storage. Apply the premium-rwo PVC manifest, then later expand it from 100Gi to 200Gi with a single patch command. ## Quick Start Ask the assistant to create a GKE PersistentVolumeClaim for a database using the premium-rwo StorageClass with volume expansion enabled.

Frequently Asked Questions about gke-storage

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

FAQPage Schema
How do I create a PersistentVolumeClaim on GKE?

Create a PVC manifest specifying an accessMode, storageClassName, and storage size, then apply it with kubectl or the apply_k8s_manifest MCP tool. Use premium-rwo for SSD block storage or standard-rwx for shared Filestore access.

How to mount a GCS bucket as a volume in a GKE pod?

Use the Cloud Storage FUSE CSI driver by adding the gke-gcsfuse/volumes annotation and a CSI volume referencing your bucket name. The pod's service account needs Workload Identity with storage.objectViewer on the bucket.

What is the difference between ReadWriteOnce and ReadWriteMany on GKE?

ReadWriteOnce volumes like Persistent Disk attach to a single pod, suiting databases. ReadWriteMany volumes via Filestore or GCS FUSE let multiple pods share the same files concurrently.

Can I resize a GKE PersistentVolumeClaim after creation?

Yes, if the StorageClass sets allowVolumeExpansion: true. Patch the PVC with a larger storage request using kubectl patch or patch_k8s_resource, and Kubernetes resizes the filesystem automatically.

When should I use Filestore instead of Persistent Disk on GKE?

Use Filestore when multiple pods need concurrent read/write access to shared files, since Persistent Disk only supports single-pod attachment. Note the Basic tier Filestore minimum size is 1 TiB.