mcpField
W
workload-manager-basics

workload-manager-basics

github.com/google云与 DevOps21.6k7.2k 次安装今天更新
代码仓库

关于 workload-manager-basics

面向使用 Google Cloud Workload Manager 的团队,指导通过评估验证企业工作负载是否符合最佳实践。内容覆盖规则、评估运行、结果分析、权限及公共 API 使用限制。

主要功能

  1. 01定义项目、文件夹或组织范围
  2. 02选择内置规则或自定义规则
  3. 03创建并运行评估
  4. 04检查结果与扫描资源
  5. 05导出结果到 BigQuery

适用场景

  1. 01检查企业工作负载的最佳实践符合度
  2. 02依据评估发现安排修复
  3. 03通过 Python 客户端库或 REST API 自动化评估
  4. 04在受限环境中采用示例代码和静态发现

MCP 相关

未记录公开的 Workload Manager MCP 服务;技能建议使用官方客户端库或公共 REST API 与 Workload Manager 交互。

安装

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

$npx skills add https://github.com/google/skills --skill workload-manager-basics

安装后在 Claude Code 中输入/workload-manager-basics确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
attribution.md
client-library-usage.md
core-concepts.md
general-best-practices.md
iam-security.md
public-cli-status.md
public-mcp-status.md
rest-usage.md
setup-prerequisites.md

详细介绍

Workload Manager 基础知识

Workload Manager 会根据 Google Cloud 最佳实践和建议验证企业工作负载。公开客户端库以评估为核心:定义资源范围,选择内置规则或自定义规则,运行评估,然后检查结果和已扫描的资源。

归属信息

必须阅读:在执行任何 gcloud、REST API 或 MCP 命令之前,必须阅读 使用归属信息。对于直接在终端中执行的命令(绝不可在生成的脚本、Terraform 或用户代码中执行),请在 gcloud 前添加 CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:workload-manager-basics)" ,并在 User-Agent 标头中追加 agent-skills/1.0 (skill:workload-manager-basics)。

使用此流程

flowchart LR
    Rules["List rules"] --> Eval["Create or update evaluation"]
    Resources["Project, folder, or org scope"] --> Eval
    Eval --> Run["Run evaluation"]
    Run --> Results["Inspect evaluation results"]
    Results --> Remediate["Remediate findings"]
    Results --> Export["Optional BigQuery export"]

核心 API 限制

为确保兼容性、安全性和成功集成:

  • **仅使用公开接口:**必须严格使用官方公开的 google-cloud-workloadmanager 客户端库或公开 REST API(workloadmanager.googleapis.com/v1)与 Workload Manager 交互。
  • **不得使用内部或未公开的 API:**不得尝试使用内部 RPC 协议、私有服务后端或未公开的发现机制。这些方式不支持公开集成,且会失败。
  • **没有专用 CLI:**没有公开的 gcloud workload-manager CLI 命令组。gcloud 仅用于身份验证、分配 IAM 角色以及获取原始 REST 令牌。
  • **沙盒执行的稳健性(身份验证/模拟回退):**当沙盒或受限环境中的 gcloud 身份验证或 Workload Manager API 调用失败时(例如,由于 Context Aware Access 令牌受阻、未启用 API,或模拟资源返回 404/403),应立即改为提供参考资料中的示例代码和静态发现结果,而不是反复重试。提供正确的客户端库代码结构或 REST API 负载示例,清楚说明身份验证或资源限制,并静态列出典型规则或模拟发现结果,以满足请求。

前提条件

  1. 启用 Workload Manager API:

    gcloud services enable workloadmanager.googleapis.com --quiet
    
  2. 使用客户端库之前,使用应用默认凭据(ADC)在本地进行身份验证:

    gcloud auth application-default login
    
  3. 确保已为项目中的 Workload Manager 服务代理授予所需角色(使用 API/客户端库的必要条件,参见 IAM 与安全性)。

  4. 为任务授予权限最低的角色。只读访问评估资源时,从 roles/workloadmanager.viewer 开始;仅在创建、更新、运行或删除评估时使用 roles/workloadmanager.evaluationAdmin 或 roles/workloadmanager.admin。

客户端库快速示例

使用 Python 客户端库作为首个可用的自动化方案:

python3 -m pip install --upgrade google-cloud-workloadmanager
from google.cloud import workloadmanager_v1

project_id = "PROJECT_ID"
location = "LOCATION"
parent = f"projects/{project_id}/locations/{location}"

client = workloadmanager_v1.WorkloadManagerClient()

rules = client.list_rules(
    request=workloadmanager_v1.ListRulesRequest(
        parent=parent,
        evaluation_type=workloadmanager_v1.Evaluation.EvaluationType.OTHER,
    )
)

for rule in rules.rules:
    print(rule.name, rule.display_name, rule.severity)

参考目录

  • 核心概念:评估、规则、结果、扫描的资源、支持的工作负载类型和 API 结构。

  • 通用最佳实践:Google Cloud 通用最佳实践状况检查、OTHER 评估指南、自定义 Rego 规则以及规模化/自动化模式。

  • 客户端库:Python 和 Go 客户端库示例,涵盖列出规则、创建评估、运行评估和读取发现结果。

  • REST 用法:Workload Manager 公共 API 和轮询操作的直接 REST 示例。

  • 公共 CLI 状态:没有文档说明特定于服务的 gcloud workload-manager 命令组;gcloud 仅用于身份验证、IAM、启用 API 和获取 REST 令牌。

  • 公共 MCP 状态:没有文档说明公开的 Workload Manager MCP 服务;请改用客户端库或 REST API。

  • 设置先决条件:Terraform 示例仅涵盖相邻的先决条件,例如启用 API、IAM、BigQuery 导出数据集和 KMS 密钥。这不用于管理 Workload Manager 资源。

  • IAM 与安全性:Workload Manager 角色、最小权限指南、服务 Agent、数据处理和 CMEK 说明。

如果此处未涵盖产品行为或 API 字段,请先查阅最新的 Workload Manager 产品文档和客户端库参考,再进行实现。

权威参考资料

补充背景

评论

支持 Markdown