mcpField
G
gke-storage

gke-storage

github.com/googlecloudplatform云与 DevOps16947 次安装3 天前更新
代码仓库

关于 gke-storage

gke-storage 是面向 GKE 集群管理者的存储实践指南,涵盖存储类型选择、CSI 驱动配置和卷扩容。内容以 StorageClass、PersistentVolumeClaim 配置及共享存储注意事项为重点。

主要功能

  1. 01配置 StorageClass
  2. 02使用 Google Cloud CSI 驱动
  3. 03扩展持久卷
  4. 04按工作负载选择磁盘类型
  5. 05谨慎配置 ReadWriteMany

适用场景

  1. 01为 GKE 工作负载选择存储类型
  2. 02配置动态存储供给
  3. 03扩容现有持久卷
  4. 04在多个 Pod 间共享文件

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/googlecloudplatform/gke-mcp --skill gke-storage

安装后在 Claude Code 中输入/gke-storage确认已加载。

详细介绍

GKE 存储最佳实践

本技能提供在 Google Kubernetes Engine(GKE)集群中管理存储的指导。

概述

GKE 支持多种存储选项,从 Persistent Disks 到 Cloud Storage。选择合适的存储类型并正确配置,对性能和可靠性至关重要。

工作流

1. 配置 StorageClasses

StorageClasses 用于描述你提供的存储“类别”。不同类别可以对应不同的服务质量等级或备份策略。

StorageClass 清单示例:

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: premium-rwo
provisioner: pd.csi.storage.gke.io
parameters:
  type: pd-ssd
  replication-type: regional-pd
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true

强烈建议在生产环境中设置 allowVolumeExpansion: true。

2. 使用 CSI 驱动程序

GKE 提供容器存储接口(CSI)驱动程序,用于动态配置存储。

  • Compute Engine Persistent Disk CSI Driver:块存储的默认驱动程序。
  • Google Cloud Filestore CSI Driver:用于托管 NFS(ReadWriteMany)。
  • Cloud Storage FUSE CSI Driver:用于将 GCS 存储桶挂载为卷。

使用 Filestore CSI Driver 的示例:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: filestore-pvc
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: standard-rwm # Pre-defined for Filestore
  resources:
    requests:
      storage: 1Ti
3. 实施卷扩容

如果 StorageClass 中的 allowVolumeExpansion 为 true,你可以通过更新 PVC 清单来调整卷大小。

步骤:

  1. 编辑 PVC 清单并增加存储请求量。
  2. 应用更改。

Kubernetes 会自动调整卷上的文件系统大小。

最佳实践

  1. 使用 CSI 驱动程序:始终使用官方 Google Cloud CSI 驱动程序,以获得最佳集成效果和性能。
  2. 启用卷扩容:始终在 StorageClasses 中设置 allowVolumeExpansion: true,以便扩容。
  3. 选择合适的磁盘类型:对 I/O 密集型工作负载使用 pd-ssd 或 pd-extreme,其他工作负载则使用 pd-standard 或 pd-balanced。
  4. 谨慎使用 ReadWriteMany:Filestore(NFS)非常适合在多个 Pod 之间共享数据,但请注意文件锁定和一致性语义。

评论

支持 Markdown