【问题标题】:How to rollback after deploying to Google Cloud Run部署到 Google Cloud Run 后如何回滚
【发布时间】:2019-09-19 16:21:54
【问题描述】:

我开始使用 Google Cloud Run,至少从表面上看,它看起来是一个很棒的工具。我想不通的一件事是如何有效地进行回滚。

我通过命令行部署我的服务

gcloud beta run deploy my-service --image my-image

如果我发现我的新部署有问题,我希望可以选择回滚到以前的版本。

有没有办法将流量回滚或迁移到特定版本?

【问题讨论】:

  • 我确认,Cloud Run 很棒!我是粉丝(也是 Alpha 测试员)。精彩纷呈,敬请期待!

标签: rollback google-cloud-run


【解决方案1】:

这是托管平台上即将推出的功能!耐心点!

现在,只需使用以前的映像部署一个新修订版即可。您可以通过 UI 使用 CLI 浏览图像。获取带有摘要的图像并部署它。

要列出修订版,请使用gcloud beta run revisions list --filter <service name> --platform managed

获取修订版的图像gcloud beta run revisions describe <revision name> --platform managed --region <region> --format 'value(status.imageDigest)'

如果您更改版本之间的版本,请注意 env var(您也可以在 GUI 或 CLI 上看到这一点)

用于列出修订版的变量gcloud beta run revisions describe <revision name> --platform managed --region <region> --format 'default(spec.containers)'

对于 GKE 上的 Cloud Run,您可以使用 YAML 更新路由。首先从 CLoud Run 中提取路线 gcloud beta run routes describe <service name> > route.yaml

更改说明末尾指向的修订:

traffic:
  - percent: 100
    revisionName: <revision Name>

然后执行kubectl apply -f route.yaml

【讨论】:

  • 我也是这么想的!感谢您提出的解决方法,同时我会尽量保持耐心。
  • 应用error: unable to recognize "route.yaml": no matches for kind "Route" in version "serving.knative.dev/v1alpha1时出现此错误
  • 这个还可以吗?会为我们节省一些时间。
  • @adamshamsudeen Route 记录在这里,是 Knative 服务 0.3 的一部分。检查您的集群和部署的组件。
  • @LukePighetti,它在 Cloud Run for Anthos(在 GKE 上)上可用,因此,在所有符合 Knative 服务的 K8S 集群上都可用。在托管的 Cloud Run 上,它尚不可用。
猜你喜欢
  • 2023-01-13
  • 2019-10-24
  • 2020-11-04
  • 2022-10-24
  • 2023-02-26
  • 1970-01-01
  • 2021-05-17
  • 2021-05-31
  • 2021-02-02
相关资源
最近更新 更多