🟦 Storage Systems — Chapitre 21 : Google Cloud Storage
Très grosse page dédiée au stockage Google Cloud : Persistent Disk, Hyperdisk, Google Cloud Storage, Filestore, Backup and DR, puis les cas d’usage Data Analytics, BigQuery, AI/ML, data lake, GKE, bases de données, HPC/media, migration hybride, sécurité IAM/CMEK/VPC Service Controls, FinOps, observabilité, anti-patterns, runbooks et checklist production.
Persistent Disk
Standard, SSD, Balanced, Extreme : disques bloc zonaux/régionaux pour Compute Engine et GKE, snapshots et images.
Persistent DiskSSDBalancedHyperdisk
Performance avancée : IOPS/throughput provisionnables, Extreme, Balanced, Throughput, ML/DB/SAP workloads.
HyperdiskIOPSThroughputGoogle Cloud Storage
Standard, Nearline, Coldline, Archive : buckets, objets, lifecycle, retention, versioning, events et data lake.
GCSNearlineArchiveFilestore
NFS managé : Basic, Enterprise, High Scale, GKE RWX, workloads fichiers, home dirs, apps lift-and-shift.
FilestoreNFSRWXBackup and DR
Protection workloads : Backup and DR Service, snapshots, VM/app-aware, VMware, databases, retention et restore.
BackupDRRestoreCas d’usage
Data analytics, BigQuery, AI/ML, data lake, GKE, HPC, media, archives, backups et applications cloud-native.
BigQueryAI/MLData lakeDesign Persistent Disk
Choisir zonal/régional, pd-balanced/pd-ssd/pd-standard, snapshots, images, resize, encryption et monitoring.
DesignRegional PDSnapshotsDesign Hyperdisk
Dimensionner IOPS/throughput indépendamment, choisir profil, latency SLO, tuning DB et comparaison avec PD.
SizingSLODatabaseSécurité GCS
IAM, Uniform Bucket-Level Access, Public Access Prevention, CMEK, retention policy, object holds, audit logs.
IAMCMEKRetentionFinOps GCS
Classes, operations, retrieval, early deletion, lifecycle, small objects, requester pays, storage insights et budgets.
FinOpsLifecycleBudgetsFilestore design
Tiers, capacity/performance, NFS exports, VPC, firewall, backups, snapshots, GKE CSI et HA enterprise.
NFSGKE CSIHAArchive GCP
Nearline, Coldline, Archive : minimum storage duration, retrieval costs, lifecycle, compliance et restore planning.
ArchiveColdlineRetentionDR et réplication GCP
Regional disks, snapshots cross-region, GCS dual/multi-region, Turbo Replication, Backup DR et failover patterns.
DRReplicationRPO/RTOGoogle Storage pour GKE
PD CSI, Filestore CSI, GCS FUSE/CSI patterns, StatefulSets, topology, snapshots et operators DB.
GKECSIPVCBases de données et stockage GCP
Compute Engine DB, Cloud SQL, AlloyDB, Spanner, Bigtable, PD/Hyperdisk, PITR, replicas et backups.
Cloud SQLAlloyDBSpannerAnalytics / IA / Data Lake
Cloud Storage + BigQuery, Dataproc, Dataflow, Vertex AI, Parquet, BigLake, Iceberg et governance.
BigQueryVertex AIBigLakeHPC / Media / ML pipelines
Filestore High Scale, Parallelstore, Cloud Storage staging, GPUs/TPUs, render farms, genomics et simulation.
HPCGPU/TPUMediaMigration & hybridation
Storage Transfer Service, Transfer Appliance, Migrate to Virtual Machines, Cloud VPN/Interconnect, NetApp Volumes.
MigrationTransferHybridAccès privé & réseau
Private Google Access, Private Service Connect, VPC Service Controls, firewall, DNS, Filestore IPs et egress.
Private AccessVPC SCDNSObservabilité GCP Storage
Cloud Monitoring, Cloud Logging, audit logs, metrics PD/GCS/Filestore, budgets, asset inventory et alerting.
MonitoringLoggingAlertsModèle de coûts GCP Storage
PD/Hyperdisk capacity/perf, GCS storage/operations/retrieval/egress, Filestore provisioned capacity, backups.
CostPricingBudgetsAnti-patterns GCP Storage
Buckets publics, lifecycle absent, Archive mal choisie, PD zonal pour critique, snapshots éternels, VPC SC oublié.
Anti-patternsRiskGovernanceRunbooks incidents
PD full/latency, GCS permission denied, bucket public, Filestore mount failed, backup failed, restore urgent.
RunbookIncidentRestoreChecklist production GCP Storage
Préprod : IAM, CMEK, private access, lifecycle, backup, DR, monitoring, budgets, labels et restore drills.
Prod-readyAuditChecklistDéfinition
Persistent Disk est le stockage bloc principal de Compute Engine et GKE. Il expose des disques durables attachables aux VMs : boot disks, data disks, volumes applicatifs, bases de données, disques de pods via CSI, images et snapshots.
Flux logique
| Type | Positionnement | Usages | Attention |
|---|---|---|---|
| pd-standard | HDD économique. | Archives, workloads froids, dev/test. | Latence/IOPS faibles. |
| pd-balanced | SSD équilibré coût/performance. | VMs générales, apps, boot/data. | Choix par défaut courant, à benchmarker. |
| pd-ssd | SSD performant. | DB, workloads I/O. | Coût supérieur. |
| pd-extreme | Perf provisionnée historique. | Workloads spécialisés. | Souvent à comparer avec Hyperdisk. |
| Regional PD | Réplication dans deux zones. | HA régionale. | Coût/latence/choix zones. |
Les snapshots PD sont incrémentaux et peuvent servir à backup, clone, migration, images, restauration et DR. Les images servent à standardiser les boot disks ou templates de VMs.
- Planifier snapshot schedule.
- Copier ou utiliser snapshots dans autre région selon DR.
- Éviter snapshots éternels sans labels ni owner.
- Tester restore VM et application.
gcloud compute disks list gcloud compute disks describe disk-prod-01 --zone=europe-west1-b gcloud compute disks snapshot disk-prod-01 --zone=europe-west1-b --snapshot-names=snap-prod-01 gcloud compute disks resize disk-prod-01 --zone=europe-west1-b --size=2048GB lsblk sudo growpart /dev/sdb 1 sudo resize2fs /dev/sdb1
Hyperdisk est la génération avancée de stockage bloc Google Cloud, pensée pour configurer performance, capacité, IOPS et throughput plus finement que les Persistent Disks classiques. Il cible les bases de données exigeantes, SAP, analytics, workloads transactionnels, ML et charges avec SLO stricts.
| Famille | Positionnement | Usage |
|---|---|---|
| Hyperdisk Balanced | Équilibre coût/performance configurable. | Applications et bases générales. |
| Hyperdisk Extreme | IOPS très élevées. | SAP HANA, bases critiques, latence stricte. |
| Hyperdisk Throughput | Débit séquentiel élevé. | Analytics, scans, streaming, data processing. |
| Hyperdisk ML | Optimisé pour workloads ML selon disponibilité. | Training/inference data paths. |
Taille provisionnée.
Random I/O.
Flux séquentiel.
Expérience DB/app.
- Mesurer workload actuel : IOPS, MB/s, latency p95/p99.
- Séparer lecture/écriture, random/séquentiel.
- Choisir famille Hyperdisk.
- Provisionner capacité + IOPS + throughput.
- Tester fio/benchmark applicatif.
- Surveiller coût/performance après mise en prod.
Google Cloud Storage est le stockage objet de GCP : buckets, objets, metadata, classes de stockage, lifecycle, versioning, retention policies, events, data lake et intégration forte avec BigQuery, Dataproc, Dataflow, Vertex AI et Cloud CDN.
| Classe | Usage | Attention |
|---|---|---|
| Standard | Accès fréquent, workloads actifs. | Stockage plus cher, accès plus direct. |
| Nearline | Accès environ mensuel ou rare. | Retrieval et minimum duration. |
| Coldline | Accès très rare. | Frais de retrieval plus importants. |
| Archive | Conservation longue, accès exceptionnel. | Minimum duration, retrieval, RTO métier. |
- Lifecycle rules par age, prefix, class, versions.
- Object Versioning pour historique.
- Retention policy et holds pour conservation.
- Pub/Sub notifications et Eventarc patterns.
- Bucket Lock pour rendre une policy de retention non réductible.
- Uniform Bucket-Level Access pour simplifier IAM.
gcloud storage buckets list gcloud storage ls gs://bucket-prod gcloud storage cp file.parquet gs://bucket-prod/raw/ gcloud storage rsync ./data gs://bucket-prod/data --recursive gcloud storage buckets update gs://bucket-prod --uniform-bucket-level-access gcloud storage objects update gs://bucket-prod/path/file --storage-class=COLDLINE
Filestore fournit un service NFS managé pour Compute Engine, GKE et applications nécessitant un filesystem partagé. Il est adapté aux partages Linux, applications lift-and-shift, home directories, workloads RWX Kubernetes et certains pipelines nécessitant POSIX/NFS.
| Tier | Positionnement | Usage |
|---|---|---|
| Basic HDD/SSD | Workloads simples. | Dev/test, partages modestes. |
| Zonal | Performance zonale. | Applications dans une zone. |
| Regional / Enterprise | HA régionale selon offre. | Production, disponibilité renforcée. |
| High Scale | Très grands volumes/performance. | HPC, analytics, media, ML. |
- GKE ReadWriteMany via Filestore CSI.
- Applications POSIX/NFS lift-and-shift.
- Partages de médias, rendus, modèles ML.
- Home directories Linux.
- Workloads HPC nécessitant débit fichier.
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: filestore-rwx provisioner: filestore.csi.storage.gke.io parameters: tier: enterprise network: default allowVolumeExpansion: true
Google Cloud Backup and DR aide à protéger VMs, bases, workloads applicatifs et environnements hybrides avec des policies, appliances/services de gestion, snapshots, copies et restaurations. Il complète les snapshots natifs, les backups managés des bases et les stratégies de DR.
| Niveau | Exemples | Point clé |
|---|---|---|
| Infrastructure | VM disks, snapshots. | Rapide mais cohérence app à valider. |
| Application | Database backup, logs, PITR. | Restauration transactionnelle. |
| Object | GCS versioning/retention. | Protection suppression logique. |
| DR | Regional restore/failover. | RTO/RPO et runbooks. |
- Policies par criticité.
- Copies cross-region/cross-project si nécessaire.
- Rétention alignée métier et conformité.
- Restore tests trimestriels.
- Labels pour owner, app, env, compliance.
| Usage | Service GCP | Pattern |
|---|---|---|
| VM disks | Persistent Disk / Hyperdisk | Boot, data, DB volumes. |
| Objet/data lake | Cloud Storage | Raw/curated, Parquet, BigLake. |
| Fichiers NFS | Filestore | RWX, shared Linux files. |
| Analytics | BigQuery + GCS | External tables, load jobs, lakehouse. |
| AI/ML | Vertex AI + GCS | Datasets, models, artifacts. |
| Backup/DR | Backup and DR + snapshots | Recovery points, restore drills. |
- GCS pour datasets et artifacts.
- Vertex AI pour training, pipelines, model registry.
- BigQuery pour features analytiques.
- Filestore/Parallelstore pour workloads fichier haute performance.
- TPU/GPU workloads avec staging local et GCS durable.
| Besoin | Option | Attention |
|---|---|---|
| VM générale | pd-balanced | Bon compromis. |
| DB/moderate IO | pd-ssd | Surveiller p99. |
| Coût bas | pd-standard | Pas pour I/O critique. |
| HA zonale renforcée | regional PD | Coût et failover design. |
gcloud compute disks resize DATA_DISK --zone=ZONE --size=SIZE_GB gcloud compute snapshots list gcloud compute resource-policies create snapshot-schedule daily-policy --region=REGION gcloud compute disks add-resource-policies DATA_DISK --zone=ZONE --resource-policies=daily-policy
- Disk read/write ops.
- Throughput.
- Latency côté guest.
- Filesystem usage.
- Snapshot age et labels.
| Entrée | Question |
|---|---|
| IOPS | Pic réel, random read/write ? |
| Throughput | Scan séquentiel, backup, analytics ? |
| Latency | p95/p99 acceptable ? |
| Capacity | Croissance 24 mois ? |
| Cost | Performance provisionnée utile ou gaspillée ? |
- Séparer data/log/temp si pertinent.
- Mesurer fsync/write latency.
- Tester sous charge réelle.
- Aligner machine type, vCPU, mémoire et disque.
- Uniform Bucket-Level Access pour simplifier IAM.
- Public Access Prevention sur buckets internes.
- IAM least privilege par service account.
- CMEK via Cloud KMS pour exigences fortes.
- Retention policies et holds pour conformité.
- Audit logs pour accès sensibles.
- VPC Service Controls pour périmètre anti-exfiltration.
| Storage Object Viewer | Lecture objets. |
| Storage Object Creator | Écriture sans suppression. |
| Storage Object Admin | Puissant, à limiter. |
| Storage Admin | Administration buckets, très sensible. |
| Poste | Déclencheur | Piège |
|---|---|---|
| Storage | Go/mois par classe. | Versions anciennes. |
| Operations | Class A/B operations. | Petits objets, listings fréquents. |
| Retrieval | Nearline/Coldline/Archive reads. | Restore massif. |
| Early deletion | Suppression avant minimum duration. | Lifecycle mal réglé. |
| Egress | Sortie région/Internet. | Analytics hors région. |
- Lifecycle par prefix.
- Expiration old versions.
- Labels owner/cost center.
- Budgets et alerting.
- Compactage petits fichiers.
- Requester Pays pour datasets partagés.
| Aspect | Décision |
|---|---|
| Tier | Basic, zonal, regional/enterprise, high scale. |
| Capacity | Provisionnée, impact performance selon tier. |
| Network | VPC, IP range, firewall NFS. |
| Backup | Backups/snapshots selon tier. |
| Kubernetes | Filestore CSI, RWX, permissions. |
sudo apt-get install nfs-common sudo mkdir -p /mnt/filestore sudo mount -o rw,intr 10.x.x.x:/vol1 /mnt/filestore df -h /mnt/filestore
- Firewall NFS mal ouvert.
- Performance metadata sous-estimée.
- Quota/capacité provisionnée trop faible.
- Pas de backup de partages critiques.
| Classe | Usage | Attention |
|---|---|---|
| Nearline | Accès rare mensuel. | Retrieval + minimum duration. |
| Coldline | Accès très rare. | Coût retrieval supérieur. |
| Archive | Conservation long terme. | Accès exceptionnel, early deletion. |
- Aligner classe avec RTO/RPO.
- Utiliser lifecycle automatique.
- Tester restore et coûts.
- Conserver metadata riche pour retrouver les objets.
- Éviter transitions trop rapides qui déclenchent minimum duration.
Associer retention policies, object holds, audit logs et labels de classification pour les archives réglementaires.
| Service | DR pattern |
|---|---|
| Persistent Disk | Regional PD, snapshots, images. |
| Hyperdisk | Selon disponibilité et snapshots. |
| GCS | Dual-region, multi-region, replication features. |
| Filestore | Backups, regional tiers selon besoin. |
| Databases | Replicas, PITR, cross-region selon service. |
Regional active = coût moyen/élevé, RTO plus court
Active-active = complexité forte
- Restaurer compute dans région cible.
- Restaurer disques/données.
- Valider IAM/KMS/VPC/DNS.
- Tester application.
- Mesurer RTO/RPO.
| Besoin | Option | Mode |
|---|---|---|
| Bloc RWO | Compute Engine PD CSI | StatefulSet, DB, zonal/regional. |
| RWX NFS | Filestore CSI | Shared files. |
| Objet | SDK GCS / Cloud Storage FUSE CSI selon cas | Data lake/assets, pas POSIX complet. |
| DB opérée | Operators + PD/Hyperdisk | Backups et failover applicatifs. |
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: pd-balanced provisioner: pd.csi.storage.gke.io parameters: type: pd-balanced volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true
- Volume zonal créé dans mauvaise zone.
- RWX attendu sur PD alors que RWO.
- Snapshots PVC sans cohérence DB.
- GCS FUSE utilisé comme filesystem transactionnel.
| Service | Stockage | Usage |
|---|---|---|
| Compute Engine DB | PD/Hyperdisk | Contrôle OS/DB complet. |
| Cloud SQL | Managed storage + PITR | PostgreSQL/MySQL/SQL Server managé. |
| AlloyDB | Architecture managée PostgreSQL-compatible | PostgreSQL haute performance. |
| Spanner | Distribué managé | Global consistency/scale. |
| Bigtable | NoSQL wide-column | Très gros volumes/latence basse. |
- Utiliser PITR pour bases managées.
- Tester restore transactionnel.
- Surveiller storage growth et I/O.
- Choisir Hyperdisk pour DB VM très exigeantes.
- Documenter RPO/RTO par base.
- Parquet/Avro/ORC pour analytics.
- Iceberg/BigLake selon stratégie table.
- Partitionnement par date/tenant/domaine.
- Compression adaptée.
- Éviter petits fichiers.
| Dataplex | Gouvernance data lake. |
| Data Catalog | Metadata et découverte. |
| IAM/VPC SC | Sécurité et périmètre. |
| Labels | FinOps et ownership. |
| Workload | Storage | Notes |
|---|---|---|
| Training ML | GCS + local SSD/Filestore/Parallelstore | Staging + throughput. |
| Render farm | Filestore/Parallelstore + GCS | Shared assets. |
| Genomics | GCS + batch/HPC | Large datasets. |
| Simulation | High performance file | IO parallel. |
Les jobs ML/HPC ont souvent besoin d’un stockage durable objet pour le dataset et d’un niveau performant temporaire pour l’entraînement ou le calcul.
| Outil | Usage |
|---|---|
| Storage Transfer Service | Transfert vers GCS depuis cloud/on-prem/HTTP. |
| Transfer Appliance | Migration offline de gros volumes. |
| Migrate to Virtual Machines | Migration VM vers Compute Engine. |
| Cloud VPN / Interconnect | Connectivité hybride. |
| NetApp Volumes | Enterprise file/migration NetApp. |
- Inventaire données, propriétaires, ACL.
- Classer block/file/object.
- Choisir cible GCS/Filestore/NetApp/PD.
- Transfert initial.
- Sync delta.
- Cutover.
- Validation checksum/permissions/perf.
| Mécanisme | Usage |
|---|---|
| Private Google Access | Accès privé aux APIs Google depuis subnet sans IP publique. |
| Private Service Connect | Accès privé à services managés. |
| VPC Service Controls | Périmètres anti-exfiltration pour services compatibles. |
| Firewall | Contrôle NFS/Filestore/VM access. |
| Cloud DNS | Résolution privée/hybride. |
- IP privée dans VPC.
- Firewall NFS ouvert uniquement aux clients.
- Connexion depuis GKE/VMs dans réseau autorisé.
- Tester latence et throughput par zone.
gcloud compute networks subnets describe SUBNET --region=REGION gcloud compute firewall-rules list nslookup storage.googleapis.com gcloud access-context-manager perimeters list mount -t nfs FILESTORE_IP:/share /mnt/test
| Service | Métriques |
|---|---|
| Persistent Disk/Hyperdisk | Ops, bytes, latency côté VM, capacity. |
| GCS | Requests, bytes, object count, 4xx/5xx, storage class. |
| Filestore | Capacity, throughput, latency, operations. |
| Backup DR | Job status, restore status, policy health. |
- Cloud Audit Logs.
- Data Access logs pour buckets sensibles.
- Cloud Logging sinks vers BigQuery/GCS.
- Asset Inventory pour ressources orphelines.
- Budget alerts et cost anomaly.
- Disk latency élevée.
- GCS bucket public ou IAM change.
- Filestore capacity high.
- Backup failed.
- KMS key disabled.
- Egress spike.
| Service | Coûts principaux |
|---|---|
| Persistent Disk | Capacity, type, snapshots. |
| Hyperdisk | Capacity, provisioned IOPS, provisioned throughput. |
| GCS | Storage class, operations, retrieval, egress, early deletion. |
| Filestore | Provisioned capacity/tier, backups. |
| Backup DR | Protected workloads, backup storage, operations. |
- Labels obligatoires.
- Budgets par projet.
- Lifecycle GCS.
- Snapshots expirés automatiquement.
- Revue disques non attachés.
- Forecast mensuel.
| Anti-pattern | Impact | Correction |
|---|---|---|
| Bucket public involontaire | Fuite données. | Public Access Prevention + audit IAM. |
| Lifecycle absent | Coût croissant. | Rules par prefix. |
| Archive pour restore urgent | RTO incompatible. | Nearline/Coldline/Standard. |
| PD zonal critique sans DR | Panne zone = outage. | Regional PD/snapshots/replicas. |
| Snapshots éternels | Coût invisible. | Retention policy. |
| VPC SC oublié pour données sensibles | Exfiltration plus facile. | Périmètre + IAM. |
- Buckets sans owner label.
- Service accounts trop larges.
- Filestore sans backup.
- Disques unattached.
- Pas de restore drill.
- Identifier identité : user/service account.
- Vérifier IAM bucket/projet.
- Vérifier UBLA/ACL legacy.
- Vérifier VPC Service Controls.
- Vérifier CMEK/KMS permissions.
- Lire Audit Logs.
- Confirmer filesystem full ou latency dans OS.
- Vérifier metrics disque.
- Resize disk ou migrer vers type plus performant.
- Grow partition/filesystem.
- Post-mortem capacity/performance.
- Tester IP/DNS.
- Vérifier firewall NFS.
- Vérifier VPC/subnet/routing.
- Tester mount depuis VM de debug.
- Vérifier quota/capacité/état instance.
- Identifier recovery point.
- Restaurer dans projet/réseau isolé.
- Valider données et app.
- Basculer DNS/traffic.
- Documenter RTO/RPO.
| Contrôle | OK ? | Note |
|---|---|---|
| Service adapté au protocole | ☐ | PD/Hyperdisk/GCS/Filestore. |
| Zonal/régional documenté | ☐ | DR, failover, latency. |
| IAM least privilege | ☐ | Service accounts, UBLA. |
| CMEK/KMS validé | ☐ | Keys, rotation, permissions. |
| Lifecycle GCS | ☐ | Standard/Nearline/Coldline/Archive. |
| Backup/restore testé | ☐ | Application complète. |
- Cloud Monitoring alerts.
- Audit logs activés pour données critiques.
- Budgets et labels.
- Snapshots avec retention.
- Runbooks incidents.
- Asset Inventory review.
- Public Access Prevention.
- Uniform Bucket-Level Access.
- VPC Service Controls pour données sensibles.
- Private access pour workloads internes.
- Retention/holds pour archives critiques.
