Google Associate Cloud EngineerDeploying and implementing a cloud solutionMedium

A development team needs to deploy a containerized microservice that requires a persistent file system for storing user-uploaded content. The microservice will run on Google Kubernetes Engine (GKE). Which storage solution would you recommend to meet this requirement?

  1. AFilestore instance
  2. BPersistent Disk attached to each Pod
  3. CCloud Storage bucket
  4. DCloud SQL database
Show answer & explanation

Correct answer: A. Filestore instance

Filestore provides a fully managed NFS file server that can be easily integrated with GKE as a PersistentVolume, offering shared, persistent storage suitable for user-uploaded content.

Why the other options are wrong

  • B. Persistent Disks are block storage and typically attached to a single VM or GKE node, not easily shared across multiple pods or nodes without complex solutions like ReadWriteMany volume modes (which have limitations), and are not a managed file system service.
  • C. Cloud Storage is object storage and does not provide a traditional file system interface required for this use case.
  • D. Cloud SQL is a relational database service, not a file system for storing user-uploaded content.

Google Cloud Filestore

A fully managed Network Attached Storage (NAS) service for applications that require a file system interface and a shared file system for data.

  • Offers NFSv3 and NFSv4.1 protocol support.
  • Can be integrated with GKE as PersistentVolumes.
  • Provides high performance and low latency for file-based workloads.

Memory trick: Filestore is the 'file store' for GKE's persistent needs.

More Deploying and implementing a cloud solution questions