Chương 30: Filestore & Advanced Storage Options
Tại sao chương này quan trọng
Block storage (Persistent Disk, Hyperdisk) giải quyết bài toán một node — một volume. Nhưng trong kiến trúc thực, nhiều trường hợp cần shared file storage: nhiều VM cùng mount một filesystem, nhiều pod GKE cùng đọc ghi vào một thư mục. Đây chính xác là vấn đề mà Filestore giải quyết.
Filestore là managed NFS service của GCP. Điều quan trọng cần hiểu ngay từ đầu: Filestore không phải là distributed file system như Lustre hay GPFS — nó là NFS server được Google quản lý, với các tier phần cứng khác nhau và các cơ chế high availability khác nhau.
Hiểu sai tính chất này dẫn đến các quyết định thiết kế sai: dùng Filestore HDD cho ML training (bị IO bottleneck), dùng Zonal instance cho mission-critical app (không có HA), hay provision một Filestore instance lớn cho hàng trăm PVC nhỏ (lãng phí tài nguyên và tốn kém).
Điều kiện tiên quyết
- Hiểu biết cơ bản về NFS protocol và cách mount NFS share
- Quen thuộc với Kubernetes PersistentVolume / PersistentVolumeClaim (PVC)
- Đã đọc Chương 11 (GKE Storage) để hiểu CSI driver model
Cấu trúc chapter
| File | Nội dung |
|---|---|
| Kiến trúc & Service Tiers | NFS internals, các tier từ Basic đến Zonal/Regional, performance model |
| CSI Driver & Multishares | Dynamic provisioning trong GKE, Multishares — nhiều PVC trên một instance |
| Backup & Snapshot Recovery | Cơ chế backup, snapshot, và chiến lược recovery |
| Regional HA & Cross-Zone | Regional tier, synchronous replication, transparent failover |
Mental model cốt lõi
Filestore hoạt động theo mô hình client-server NFS:
┌─────────────────────────────────────────┐
│ Filestore Instance (NFS Server) │
│ ┌───────────────────────────────────┐ │
│ │ File Share (export path) │ │
│ │ /vol1, /vol2, ... │ │
│ └───────────────────────────────────┘ │
│ Physical: SSD/HDD storage backend │
└──────────────┬──────────────────────────┘
│ NFS v3 / NFSv4.1
┌────────┴────────┐
│ │
VM / Pod A VM / Pod B
(NFS client) (NFS client)Điều này có nghĩa: tất cả IO đều đi qua network. Latency của Filestore phụ thuộc vào network latency giữa client và instance, không chỉ phụ thuộc vào phần cứng storage. Đây là điểm khác biệt cơ bản so với Persistent Disk (block storage attached trực tiếp).
Tổng quan các tier
| Tier | Đặc điểm | Dùng khi |
|---|---|---|
| Basic HDD | Legacy, zonal, thấp nhất | File sharing đơn giản, cost-sensitive |
| Basic SSD | Legacy, zonal, performance cao hơn | Dev/test, không cần HA |
| Zonal | Mới, configurable performance | HPC, batch, ML inference serving |
| Regional | Multi-zone HA, configurable | Mission-critical, production apps |
| Enterprise (Multishares) | Regional HA + multi-PVC | GKE workloads với nhiều services nhỏ |