关于 google-cloud-global-frontend-configuration
引导 Agent 设计和部署 Google Cloud 全球外部 Application Load Balancer 的技能。它分阶段收集需求,并生成配置摘要及 Terraform HCL 或 gcloud 命令行输出。
主要功能
- 01六步配置流程
- 02后端与工作负载发现
- 03路由和流量管理
- 04Cloud CDN 与 Cloud Armor 配置建议
- 05生成 Terraform HCL 或 gcloud 输出
适用场景
- 01规划支持多个源站的全球负载均衡器
- 02按工作负载选择缓存与安全设置
- 03生成负载均衡器部署配置
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ google/ skills --skill google-cloud-global-frontend-configuration安装后在 Claude Code 中输入/google-cloud-global-frontend-configuration确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/attribution.mddrift-detection.mdgcloud-generation.mdmanaged-deployment.mdresource-discovery.mdterraform-generation.mdterraform-module.md详细介绍
Google Cloud 全局外部应用负载均衡器配置 Skill
致谢
必须阅读:在执行任何 gcloud、REST API 或 MCP 命令之前,必须阅读 使用归因。对于直接在终端中执行的命令(绝不用于生成的脚本、Terraform 或用户代码),请在 gcloud 前加上
CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:google-cloud-global-frontend-configuration)"
并在 User-Agent 标头中追加
agent-skills/1.0 (skill:google-cloud-global-frontend-configuration)。
目的与 Agent 指引
此 Skill 可引导用户完成结构化的 6 步发现流程,以设计和部署 Google Cloud 全局外部应用负载均衡器(集成 Cloud CDN、Cloud Armor 和 Service Extensions)。
假设与目标环境:
- 此 Skill 假定它在可执行 Google Cloud CLI(
gcloud)的环境中调用(例如 Gemini CLI、Antigravity 等)。 - 如果无法使用或访问
gcloud,此 Skill 就无法自动发现资源或执行托管部署。在这种环境下,此 Skill 仅会提供设计指导并生成 Terraform HCL 配置。
执行此 Skill 时,Agent 必须:
- 将用户的工作负载需求映射到采用实际 Google Cloud 产品名称的简化、约定优于配置的最佳实践配置。
- 逐步披露详细信息;除非用户明确要求自定义,否则隐藏高级复杂性。
- 利用
references/目录中的参考文档来发现资源、生成代码、执行操作和检测配置偏差。
6 步配置流程
第 1 步:基础信息
- **项目发现:**参阅
references/resource-discovery.md,自动检测 Google Cloud 项目 ID。向用户展示发现的项目 ID。 - 询问用户有关其负载均衡器的基本信息:
- **名称与描述:**这个负载均衡器应该叫什么?
- **协议选择:**需要 HTTP、HTTPS,还是两者都需要?
- **证书管理:**希望使用 Google 管理的证书,还是使用已有的自有证书?
步骤 2:源站配置
通过严格按顺序逐步进行的循环,帮助用户定义其后端工作负载。不要一次性询问所有内容。所有步骤均为必需步骤。
- 子步骤 A - 源站设置: 询问用户是只有一个源站,还是需要多源站支持。等待回复。
- 子步骤 B - 源站类型: 让用户从以下选项中选择后端类型:Cloud Storage 存储桶、Compute Engine 托管式实例组(MIG)、Google Kubernetes Engine(GKE)集群、Cloud Run 服务或外部/互联网源站(IP/FQDN)。等待回复。
- 子步骤 C - 源站定义循环: 对子步骤 B 中选择的每种源站类型,依次执行以下循环。询问下一个源站之前,等待用户回答当前源站的问题:
- 资源发现: 对于 Google Cloud 原生源站(Cloud Storage、MIG、GKE、Cloud Run),参阅
references/resource-discovery.md获取资源。展示列表时,首先列出 1. 新建、2. 不适用。对于外部/互联网源站,只需询问 FQDN/IP。 - 工作负载类型(重要): 用户定义资源后,立即准确询问所服务的工作负载类型:
- 静态图片/对象(静态内容、图片、视频、样式资源)
- 可缓存 API(只读的公共 API,可接受缓存数据)
- 不可缓存 API/事务(事务端点、登录、结账、账户更改)
- 动态网站(SSR)(动态页面、服务器端渲染的应用、自定义动态会话)
- 资源发现: 对于 Google Cloud 原生源站(Cloud Storage、MIG、GKE、Cloud Run),参阅
- 子步骤 D - 路由规则: 所有源站都已逐一完整定义后,询问流量应如何在它们之间路由(基于路径、基于标头或基于查询参数)。等待回复。
- 子步骤 E - 日志记录: 路由设置完成后,询问用户是否要启用 Cloud CDN 日志记录;如果要启用,询问采样率(0-100%)。等待回复。
步骤 3:流量管理与扩展
- 简要总结步骤 2 中定义的源站和路由规则。
- 询问用户是否需要启用高级流量管理设置(例如细粒度加权负载均衡、流量镜像,或用于自定义 WASM 插件/回调的 Cloud Load Balancing Service Extensions),还是希望采用 Google Cloud 最佳实践配置。
步骤 4:缓存(Cloud CDN)
完全根据步骤 2 中的工作负载类型提出“推荐配置”。除非用户拒绝推荐配置并希望自定义,否则不要列出高级设置(TTL、缓存键、压缩)。
- 如果工作负载 = 静态图片/对象:
- 缓存模式:缓存所有静态内容
- TTL:客户端(1 天/86400s)、默认(30 天/2592000s)、最长(365 天/31536000s)——在静态资源的长期缓存卸载与定期重新验证之间取得平衡。
- 缓存键:协议 + 主机 + 路径(忽略查询字符串)
- 压缩:已启用(Brotli 和 Gzip)
- 负缓存:已启用
- 过期后继续提供:已启用
- 如果工作负载 = 可缓存 API:
- 缓存模式:使用源站标头
- TTL:由源站管理(配置中省略,以防止错误)
- 缓存键:协议 + 主机 + 路径 + 包含查询字符串
- 压缩:已启用(Gzip)
- 负缓存:已启用
- 过期后继续提供:已停用
- 如果工作负载 = 不可缓存 API/事务:
- 缓存模式:已停用(绕过 CDN)
- 如果工作负载 = 动态网站(SSR):
- 缓存模式:使用源站标头
- TTL:由源站管理(配置中省略,以防止错误)
- 缓存键:协议 + 主机 + 路径
- 压缩:已启用(Brotli 和 Gzip)
- 缓存绕过:存在会话 Cookie(例如 SESSID、JWT)时绕过缓存
步骤 5:安全性(Cloud Armor)
根据步骤 2 中的工作负载类型,提出“推荐配置”。除非用户提出要求,否则隐藏高级防护(机器人管理、威胁情报、地理位置封锁)。
- 如果工作负载 = 静态图片 / 对象:
- 速率限制:无(标准边缘行为;Cloud Armor 边缘策略不支持对 Cloud Storage 存储桶进行速率限制)。
- OWASP 防护:已停用
- 如果工作负载 = 可缓存 API:
- 速率限制:每个客户端 IP 每分钟 100 个请求(标准基线,可防止 API 滥用和 DDoS,同时满足正常交互使用需求)。
- OWASP 防护:已启用(SQLi、XSS、本地文件包含)
- 如果工作负载 = 不可缓存 API / 事务:
- 速率限制:每个客户端 IP 每分钟严格限制为 30 个请求(严格阈值,可保护登录 / 结账等敏感事务端点,防止凭据填充和暴力破解攻击)。
- OWASP 防护:已启用(SQLi、XSS、远程命令执行、会话固定)
- 机器人管理和威胁情报:已启用(拦截恶意机器人和已知恶意 IP)
- 如果工作负载 = 动态 Web(SSR):
- 速率限制:每个客户端 IP 每分钟 120 个请求(宽松阈值,可满足 SSR Web 应用初始页面加载和资源水合时的突发请求)。
- OWASP 防护:已启用(SQLi、XSS、CSRF、Shellshock)
- 地理位置封锁:可选(限制 / 允许来自特定国家/地区的访问)
步骤 6:审核和部署
-
**配置摘要:**生成完整、格式规范的 Markdown 表格,列出步骤 1 至 5 中确定的所有设置,并使用 Google Cloud 产品名称。请严格遵循以下模板结构:
组件 参数 / 设置 值和理由 负载均衡器 名称和协议 <Name>(HTTP/HTTPS)源站 后端和工作负载 <Backend 1>(<Workload Type>)、<Backend 2>...流量管理 路由规则 <Path / Header rules or Default>Cloud CDN 缓存模式和 TTL <Cache Mode>,默认 TTL:<TTL>Cloud Armor 速率限制和 OWASP <RPM Limit>,OWASP 规则:<Enabled/Disabled>Service Extensions WASM / 调用 <Enabled/Disabled or N/A> -
**下一步操作:**请用户选择部署 / 生成格式(Terraform HCL 或 gcloud CLI Bash Script)以及下一步操作:
- 显示代码 / 脚本(显示 HCL 代码或 gcloud bash 脚本。显示后,提供下载或部署 / 执行选项)
- 下载文件(将
main.tf或deploy.sh保存到本地工作区) - **部署配置:**通过 Infrastructure Manager 启动部署,或执行 gcloud 脚本。应使用
references/managed-deployment.md中的部署说明。