关于 gke-cluster-creator
gke-cluster-creator 通过最佳实践模板和定制步骤,指导用户创建 GKE 集群,适用于需要选择集群类型与配置的团队。它提供标准区域、Autopilot 和 GPU 等模板,并通过 MCP 工具执行创建。
主要功能
- 01选择集群配置模板
- 02收集并验证必需参数
- 03按需调整集群配置
- 04调用工具创建 GKE 集群
适用场景
- 01为开发或测试创建区域集群
- 02配置高可用生产集群
- 03为 AI 推理选择 GPU 集群
MCP 相关
该技能调用 create_cluster MCP 工具创建 GKE 集群,并根据其参数模式校验最终配置。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ googlecloudplatform/ gke-mcp --skill gke-cluster-creator安装后在 Claude Code 中输入/gke-cluster-creator确认已加载。
详细介绍
GKE 集群创建技能
此技能提供一组最佳实践模板,并引导用户完成自定义流程,帮助用户创建 Google Kubernetes Engine(GKE)集群。
核心行为
- 模板选择:
- 如果用户尚未指定模板,则向用户展示可用模板。
- 说明其中的权衡(例如,成本与可用性、Autopilot 与 Standard)。
- 自定义:
- 选定模板后,展示默认配置(JSON/YAML)。
- 询问用户提供必要的缺失信息:
project_id、location、cluster_name。 - 询问用户是否要修改可选字段(例如,
machineType、nodeCount、network)。
- 验证:
- 确保已设置
project_id、location和cluster_name。 - 确保配置符合
create_clusterMCP 工具架构。
- 确保已设置
- 执行:
- 使用最终配置调用
create_clusterMCP 工具。
- 使用最终配置调用
最佳实践
在引导用户或生成配置时,请遵循以下 GKE 集群创建最佳实践:
安全性
- 私有集群:默认使用控制平面为私有且公共端点受限的私有集群,以尽可能缩小攻击面。
- VPC 原生网络:使用 VPC 原生集群以启用别名 IP 范围,从而支持 Pod 级防火墙规则并增强网络安全性。
- 工作负载身份:优先使用工作负载身份,为 GKE 工作负载安全地授予访问 Google Cloud 服务的权限,而不是使用静态服务账号密钥。
- Shielded GKE 节点:启用 Shielded GKE 节点,以防御 Rootkit 和启动工具包。
- 最小权限(RBAC):实施严格的基于角色的访问控制,向用户和工作负载授予最低限度的权限。
成本优化
- 自动扩缩:启用集群自动扩缩器和水平 Pod 自动扩缩器,根据需求调整资源。
- 合理配置规格:选择合适的机器类型和节点数。对于容错性强的非关键工作负载,可考虑使用 Spot VM。
高可用性与可靠性
- 区域集群:在生产环境中使用区域集群,确保控制平面跨多个可用区复制。(注意:标准区域集群默认会在 3 个可用区中创建节点。)
- Pod 中断预算:建议设置 Pod 中断预算,确保节点维护期间应用保持稳定。
- 发布渠道:订阅发布渠道(例如 Regular 或 Stable),以便自动、安全地升级集群。
模板
1. Standard 可用区集群(经济实惠的开发/测试)
适用于:开发、测试和非关键工作负载。
{
"name": "projects/{PROJECT_ID}/locations/{ZONE}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "e2-medium",
"diskSizeGb": 50,
"oauthScopes": [
"https://www.googleapis.com/auth/devstorage.read_only",
"https://www.googleapis.com/auth/logging.write",
"https://www.googleapis.com/auth/monitoring",
"https://www.googleapis.com/auth/service.management.readonly",
"https://www.googleapis.com/auth/servicecontrol",
"https://www.googleapis.com/auth/trace.append"
]
}
}
2. Standard 区域集群(高可用性)
适用于:需要高可用性的生产工作负载。 注意:默认会创建 3 个节点(该区域的每个可用区各 1 个)。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "e2-standard-4",
"diskSizeGb": 100,
"oauthScopes": ["https://www.googleapis.com/auth/cloud-platform"]
}
}
3. Autopilot(免运维)
适用于:大多数不希望管理节点的工作负载。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"autopilot": {
"enabled": true
}
}
4. GPU 推理(L4)
适用于:AI/ML 推理和小型模型服务。
注意:需要 g2-standard-4 配额。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "g2-standard-4",
"accelerators": [
{
"acceleratorCount": "1",
"acceleratorType": "nvidia-l4"
}
],
"diskSizeGb": 100,
"oauthScopes": ["https://www.googleapis.com/auth/cloud-platform"]
}
}
5. AI 超级计算(A3 HighGPU)
适用于:大型模型训练/推理。 注意:成本较高,且配额要求严格。
{
"name": "projects/{PROJECT_ID}/locations/{REGION}/clusters/{CLUSTER_NAME}",
"initialNodeCount": 1,
"nodeConfig": {
"machineType": "a3-highgpu-8g",
"accelerators": [
{
"acceleratorCount": "8",
"acceleratorType": "nvidia-h100-80gb-hbm3"
}
],
"diskSizeGb": 200,
"oauthScopes": ["https://www.googleapis.com/auth/cloud-platform"]
}
}
指示
- 如果上下文中没有
project_id,始终询问用户的project_id。 - 始终询问用户的
location(区域或可用区)。 - 始终询问一个唯一的
cluster_name。 - 确认用户是否需要
Access to Google Cloud APIs(对于现代 GKE,默认的cloud-platform范围通常是最佳选择)。 - 如果用户选择 GPU 集群或区域级集群,提醒用户注意费用。
- 使用
create_clusterMCP 工具创建集群。parent参数为projects/{PROJECT_ID}/locations/{LOCATION},cluster参数为 JSON 对象。cluster.name只需填写短名称(例如"my-cluster")。 - 重要:调用
create_cluster时,cluster.name应为短名称(例如my-cluster),而不是完整的资源路径,因为parent参数已定义范围。
示例用法
用户:“我想创建一个 GKE 集群。” 模型:“我可以帮你创建。你需要哪种集群?
- 标准可用区级集群:适合开发和测试。
- 标准区域级集群:高可用性。
- Autopilot:完全托管。
- 启用 GPU 的集群:适用于 AI/ML 工作负载。”
用户:“请创建标准可用区级集群。” 模型:“好的。我需要一些信息:
- 项目 ID
- 可用区(例如,us-central1-a)
- 集群名称”
用户:“项目是 my-proj,可用区是 us-west1-b,名称是 dev-cluster。”
模型:“以下是我将使用的配置:
[JSON 视图]
是否继续?”
评论
支持 Markdown