问题标签 [canary-deployment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3779 浏览

android - Gradle 同步失败:找不到 org.jetbrains.kotlin(无意使用 Kotlin)

(在我看来不是这个问题的重复)

Android Studio 中的错误消息:

Gradle 同步失败:找不到 org.jetbrains.kotlin:kotlin-stdlib:1.1.3-2

我不明白为什么没有这个库 Gradle 不会同步,为什么 Kotlin 是强制性的。另外,我没有尝试或打算安装或使用 Kotlin 插件。

注意:这发生在我刚刚在开发更新频道上升级到最新的 Android Canary 版本之后。在稳定版本或我的代码本身中没有任何问题或与 Kotlin 相关的任何内容。

0 投票
1 回答
725 浏览

spinnaker - 如何在 Spinnaker 中设置滚动部署?

我刚开始尝试 Spinnaker。我已经阅读了教程https://www.spinnaker.io/guides/tutorials/codelabs/gcp-kubernetes-source-to-prod/,并且没有问题地工作。

现在我想更高级一点,进行滚动发布或金丝雀部署(https://www.spinnaker.io/concepts/#deployment-strategies),例如,可以只公开一个新的发布给 5% 的客户。

我在 spinnaker.io(或谷歌)上找不到任何关于如何设置的指南。谁能指导我正确的方向?

0 投票
1 回答
909 浏览

amazon-web-services - 如何进行金丝雀部署?

我有一个带有一个 ALB、两个 api 节点和一个 RDS 的 AWS 环境。我今天执行就地部署。我阅读了有关金丝雀版本的信息,并想知道如何将当前环境转换为使用金丝雀部署。我的环境完全在 AWS 上。我的主要问题是关于路由,拨号/拨号需要什么服务/组件?

0 投票
1 回答
1860 浏览

deployment - 蓝/绿部署、金丝雀发布和数据库一致性

有一些技术可以确保新更改不会破坏系统,例如上面提到的蓝绿或金丝雀部署。两者都意味着部分应用更改(仅更改基础架构的一部分,或与旧版本并行运行新版本)。

但是,如果数据结构发生任何重大变化,我不知道如何保持数据一致性(假设您对 GDPR 进行了更改——很可能是这样,对吧?)。

即使在基于 NoSQL 的解决方案上,它也可能会导致问题(正如我想象的那样)。我试图寻找解决方案,但这个问题只是被广泛提及,但很少得到解决。

如何引入这些技术并保持数据一致性?在实际应用中是如何正常实现的?

0 投票
2 回答
1470 浏览

deployment - 如何在deployment中指定不同版本的kubernetes中实现Canary部署

我有两个部署文件 1. deployment-1.yaml apiVersion: apps/v1 kind: Deployment metadata: name: process labels: app: process spec: replicas: 3 selector: matchLabels: app: process template: metadata: labels: app: process version: v1 spec: containers: - name: pull image: parma/k8s-php:red ports: - containerPort: 80

2. 部署-2.yaml apiVersion: apps/v1 kind: Deployment metadata: name: process labels: app: process spec: replicas: 3 selector: matchLabels: app: process template: metadata: labels: app: process version: v2 spec: containers: - name: pull image: parma/k8s-php:green ports: - containerPort: 80

由于我在 spec.template.metadata 中指定了两个不同的版本,它不会为两个副本集继续运行 6 个 pod,它只会启用最新的副本集并运行。

有没有办法通过保持单个部署中的副本集启动并运行 v1 中的 3 个 pod 和 v2 中的 3 个 pod 来实现金丝雀部署

0 投票
1 回答
839 浏览

kubernetes - Istio:蓝/绿部署

我可以创建一个流量策略来路由在不同 kubernetes 命名空间中运行的服务之间的流量吗?

目前,我的测试服务位于staging命名空间。另一方面,我在生产中的服务在production命名空间上。

我想平衡位于staging命名空间和production命名空间中的服务之间的流量。所以,10% 到staging:service90% 到production:service.

到目前为止,我已经能够创建一个虚拟服务和一个目标规则,但是这两个服务都在同一个命名空间内运行。

还有一个VirtualService

此配置在命名空间内运行的两个服务之间是平衡的istio-project

有任何想法吗?

编辑

0 投票
4 回答
6842 浏览

jenkins - Jenkins 可锁定资源 - 锁定而不解锁

我将“Locable Resources Plugin”与 Jenkins 多管道功能一起使用:

我有一种情况,我需要在一个管道中锁定资源并在另一个管道中解锁它。我有解决方法,但如果可能的话,我更喜欢使用锁定插件。

我想象这样的事情

它的原因

我正在实现金丝雀版本,并且通过我的管道有三种不同的路径(我考虑了其他解决方案,例如使用输入插件暂停管道 - 为我提供更多超出了这个问题的范围)。我想在评估金丝雀时锁定/暂停管道,然后在升级或回滚完成后再次解锁。省略lock声明的主体只是给了我java.lang.IllegalStateException: There is no body to invoke

0 投票
2 回答
1685 浏览

amazon-web-services - AWS 上的 Canary 版本和蓝绿部署

我目前正在 AWS S3 上的静态网站上实施 Canary 发布和蓝绿部署。基本上,我创建了两个 S3 存储桶(v1 和 v2)和 2 个云前端(我没有附加 CNAME)。然后,我在 Route 53 中创建 2 个 A 别名记录,每个权重路由策略为 50%。但是,我只使用笔记本电脑和移动设备访问我的域被路由到 v1。我什至要求我的同事打开我的域,他们也被路由到 v1。

我真的很困惑为什么没有用户被路由到 v2?

S3 中的 AWS 静态 Web

在此处输入图像描述

0 投票
0 回答
140 浏览

kubernetes - 如何使用 Istio 将流量镜像到两个地方?

作为我持续部署管道的一部分,我部署了金丝雀和基线,比较两者的指标并分析结果以确定是否将金丝雀推广到生产环境。为了改进收集的指标,我想使用 Istio 将生产流量镜像到金丝雀和基线部署。

为此,我有以下虚拟服务和目标规则,将流量镜像到我的金丝雀部署:

我怎样才能将流量镜像到基线,以便基线和金丝雀接收与我的生产部署相同的流量?

0 投票
1 回答
303 浏览

kubernetes - Kubernetes模式金丝雀部署冒烟测试最佳实践?

我有一个金丝雀部署过程,可以启动金丝雀豆荚并进行冒烟测试,但到目前为止,我正在对金丝雀豆荚和旧豆荚进行冒烟测试。我不确定我是否应该这样做,或者烟雾测试应该只在金丝雀豆荚上运行?