Loading...
Loading...
当用户需要「部署Agent」、「部署我的ADK Agent」、「搭建CI/CD」、「配置密钥」、「排查部署问题」,或需要Agent Runtime、Cloud Run、GKE部署目标相关指导时,可使用本技能。内容涵盖部署工作流、服务账号、回滚操作及生产环境基础设施。本技能属于Google ADK(Agent Development Kit)技能套件的一部分。请勿将其用于API代码模式(请使用google-agents-cli-adk-code)、评估(请使用google-agents-cli-eval)或项目脚手架搭建(请使用google-agents-cli-scaffold)。
npx skill4agent add google/agents-cli google-agents-cli-deploy本指南优先推荐使用命令——它们将Terraform、Docker和部署流程封装为经过验证的流水线。如果你的项目尚未搭建脚手架,请查看agents-cli以先添加部署支持。/google-agents-cli-scaffold
references/cloud-run.mdagent-runtime.mdgke.mdterraform-patterns.mdbatch-inference.md/google-agents-cli-adk-codecicd-pipeline.mdinfra cicdtesting-deployed-agents.md可观测性: Cloud Trace、提示响应日志、BigQuery分析及第三方集成相关内容,请查看技能。/google-agents-cli-observability
| 评估标准 | Agent Runtime | Cloud Run | GKE |
|---|---|---|---|
| 支持语言 | Python | Python | Python(自定义容器可支持其他语言) |
| 弹性伸缩 | 托管式自动伸缩(可配置最小/最大实例数、并发数) | 完全可配置(最小/最大实例数、并发数、CPU分配) | 完整Kubernetes伸缩能力(HPA、VPA、节点自动配置) |
| 网络配置 | 支持VPC-SC和PSC | 完整VPC支持、直接VPC出站、IAP、入站规则 | 完整Kubernetes网络能力 |
| 会话状态 | 原生 | 内存存储(开发环境)、Cloud SQL或Agent Platform Sessions后端 | 内存存储(开发环境)、Cloud SQL或Agent Platform Sessions后端 |
| 批量/事件处理 | 不支持 | 原生触发器端点(Pub/Sub、Eventarc);详情请查看 | 自定义实现(Kubernetes Jobs、Pub/Sub) |
| 计费模式 | vCPU时长 + 内存时长(空闲时不计费) | 按实例秒数计费 + 最小实例成本 | 节点池成本(持续运行或自动配置) |
| 搭建复杂度 | 较低(托管式、专为Agent打造) | 中等(Dockerfile、Terraform、网络配置) | 较高(需具备Kubernetes专业知识) |
| 适用场景 | 托管式基础设施、最小化运维 | 自定义基础设施、事件驱动型工作负载 | 完全Kubernetes控制能力 |
产品名称映射: "Agent Engine" / "Vertex AI Agent Engine"现更名为Agent Runtime。请使用参数。--deployment-target agent_runtime
后台/定时/事件驱动型Agent: Agent Runtime不支持Pub/Sub、Eventarc或Cloud Scheduler触发器。此类工作负载请使用Cloud Run(推荐)或GKE。模式详情请查看trigger_sources第12节。/google-agents-cli-adk-code
OAuth / 用户授权Agent: 需要OAuth 2.0用户授权(例如访问Google Drive、Calendar或其他用户范围API)的Agent,请使用Agent Runtime搭配Gemini Enterprise。Cloud Run目前不支持托管式OAuth流程。示例请查看第2阶段的/google-agents-cli-workflow样本。adk-ae-oauth
agents-cli scaffold enhance . --deployment-target <target>agents-cli deployAgent Runtime超时恢复: Agent Runtime部署可能需要5-10分钟,可能会超出命令超时时间。如果部署命令被取消或超时,部署仍会在服务器端继续进行。运行检查进度——每60秒轮询一次,直到显示完成或失败。agents-cli deploy --status
agents-cli deploy部署前请勿运行。这不是部署的前置条件——agents-cli infra single-project可独立运行。如果用户需要可观测性功能(提示响应日志、BigQuery分析),可单独运行该命令——详情请查看agents-cli deploy。/google-agents-cli-observability
agents-cli infra single-projectdeployment/terraform/single-project/terraform apply# 可选——在单个GCP项目中搭建基础设施
agents-cli infra single-project注意:不会自动使用Terraform创建的agents-cli deploy。对于Agent Runtime目标,请通过app_sa或agents-cli deploy --service-account SA_EMAIL参数传入服务账号。uv run -m app.app_utils.deploy --service-account SA_EMAIL
| 参数 | 描述 | 适用目标 |
|---|---|---|
| GCP项目ID | 所有 |
| GCP区域 | 所有 |
| 部署后Agent使用的服务账号邮箱 | 所有 |
| 逗号分隔的 | Agent Runtime |
| 逗号分隔的 | Agent Runtime、Cloud Run |
| 启用Agent身份(预览版) | Agent Runtime |
| 内存限制(默认: | Cloud Run |
| 容器端口 | Cloud Run |
| 启用Identity-Aware Proxy | Cloud Run |
| 容器镜像URI(跳过源码构建) | Cloud Run、GKE |
| 启动部署后立即返回,不等待完成 | Agent Runtime、Cloud Run |
| 检查 | Agent Runtime、Cloud Run |
| 列出现有部署并退出 | 所有 |
| 打印将要执行的操作但不实际运行 | 所有 |
| 跳过项目确认提示 | 所有 |
agents-cli deploy --help--gcloud-- --timeout=600项目确认: 如果项目是自动解析的(未通过参数传入),命令在交互模式下会提示确认。由于Agent通常运行在非交互模式下,若依赖自动项目解析,必须传入--project参数才能继续执行。--no-confirm-project
infra cicdreferences/cicd-pipeline.mdreferences/cloud-run.mdhttps://adk.dev/deploy/cloud-run/index.mdambient-expense-agent/google-agents-cli-adk-codetrigger_sourcesdeploy.pyAdkAppAgent Runtime没有CLI命令。请通过gcloud或agents-cli deploy进行部署。通过Pythondeploy.pySDK进行查询。vertexai.Client
--no-wait--status# 启动部署,不阻塞当前进程
agents-cli deploy --no-wait
# 稍后检查进度
agents-cli deploy --status--statusdeployment_metadata.jsonreferences/agent-runtime.mdhttps://adk.dev/deploy/agent-engine/index.mdreferences/gke.mdhttps://adk.dev/deploy/gke/index.mdapp_sadeployment/terraform/iam.tfcicd_runner_sadeployment/terraform/iam.tfcicd_runner_saapp_saiam.serviceAccountUserapp_sasecretmanager.secretAccessorroles/secretmanager.adminservice-<PROJECT_NUMBER>@gcp-sa-cloudbuild.iam.gserviceaccount.comcloudbuild.googleapis.comsecretmanager.googleapis.comrun.googleapis.comgcloud services enable cloudbuild.googleapis.com secretmanager.googleapis.com run.googleapis.com --project=YOUR_PROJECT_ID# 创建密钥
echo -n "YOUR_API_KEY" | gcloud secrets create MY_SECRET_NAME --data-file=-
# 更新现有密钥
echo -n "NEW_API_KEY" | gcloud secrets versions add MY_SECRET_NAME --data-file=-app_sasecretmanager.secretAccessorservice-PROJECT_NUMBER@gcp-sa-aiplatform-re.iam.gserviceaccount.comapp_sasecretmanager.secretAccessoragents-cli deploy --secrets "API_KEY=my-api-key,DB_PASS=db-password:2"ENV_VAR=SECRET_IDENV_VAR=SECRET_ID:VERSIONos.environ.get("API_KEY")agents-cli run --url <service-url> --mode <a2a|adk> "your prompt"references/testing-deployed-agents.mdagents-cli deploymaingcloud run revisions list --service=SERVICE_NAME --region=REGION
gcloud run services update-traffic SERVICE_NAME \
--to-revisions=REVISION_NAME=100 --region=REGIONagents-cli deploykubectl rollout undokubectl rollout undo deployment/DEPLOYMENT_NAME -n NAMESPACE
kubectl rollout status deployment/DEPLOYMENT_NAME -n NAMESPACEgcloudgcloudreferences/terraform-patterns.md| 问题 | 解决方案 |
|---|---|
| Terraform状态锁定 | 在deployment/terraform/目录下执行 |
| GitHub Actions认证失败 | 在CI/CD Terraform目录下重新运行 |
| Cloud Build授权等待中 | 改用 |
| 资源已存在 | 使用 |
| Agent Runtime部署超时/挂起 | 部署需要5-10分钟;检查引擎是否已创建(请查看Agent Runtime专属配置部分) |
| 密钥不可用 | 确认 |
| 部署时出现403错误 | 检查 |
| 测试Cloud Run时出现403错误 | 默认配置为 |
| 冷启动过慢 | 在Cloud Run Terraform配置中设置 |
| Cloud Run出现503错误 | 检查资源限制(内存/CPU)、增加 |
| 授予IAM角色后立即出现403错误 | IAM权限生效并非即时——等待几分钟后重试。请勿重复授予相同角色 |
| Terraform已创建资源但似乎缺失 | 运行 |
| 部署失败或Agent无响应 | 查看Cloud Logging:Cloud Run执行 |
| 部署后Agent返回错误 | 在控制台打开Cloud Logging → 按服务名称(Cloud Run)或推理引擎资源(Agent Runtime)过滤 → 查找最近日志中的Python回溯信息或权限错误 |
/google-agents-cli-publish/google-agents-cli-workflow/google-agents-cli-adk-code/google-agents-cli-eval/google-agents-cli-scaffoldagents-cli scaffold createscaffold enhance/google-agents-cli-observability/google-agents-cli-publish