海洋CD是一种先进的部署Kubernetes应用程序的控制器。它提供了逐步部署能力,不断验证,auto-rollbacks防止事件代码更改。海洋CD可以安装在几分钟内帮助DevOps团队确保更安全的代码版本,允许开发人员提供应用程序更快和更大的信心。
通过三个主要支柱海洋CD支持这些目标:
- 进步的部署:的能力,逐步推出一个新的代码生产,以防止事件和限制的负面影响,如停机时间
- 连续验证:处理数据和触发实时查询与展示
- 自动回滚:能够自动反向推出和恢复到之前的版本如果你验证没有出现完全按照你的愿望
这三个柱子精心挑选并实现请求。所有三个包裹成一个解决方案是重要的,但很少在CI / CD景观作为一个完整的解决方案。
在这个博客中,我们将回顾连续部署过程海洋CD使用关注第二个支柱,不断验证,以及它如何可以很容易地配置了海洋CD。
指标验证
海洋CD提供快速配置逐步部署策略,可以利用多个Kubernetes工作负载,在集群。它提供了一系列的阶段,定义如何改变被推出。每个阶段可以包括多个指标,将测试代码已经更改后的应用程序的性能,影响推广的进度。
作为部署策略的一部分,海洋CD提供两种方法来验证新代码的行为如何在环境中部署。第一个是指标验证,使无数的配置指标的查询和规则,使用数据提供者NewRelic,普罗米修斯,DataDog,CloudWatch。海洋CD的独特性在于它处理实时查询请求的规则配置来确定指标已经失败或成功。海洋CD没有必要使用并行监控工具,因为所有的信息海洋中自动显示CD控制台。
普罗米修斯阶段验证发生在第二阶段的金丝雀部署
整合上述监视工具与海洋CD,用户需要创建(通过API,海洋CD、CLI或UI)两种验证供应商的实体海洋,格兰特CD访问所有监控工具使用所需的凭证,以及验证模板海洋,配置规则CD将行动。
自定义验证
如果用户没有使用任何上述监视工具,海洋CD提供了另一种类型的验证,也就是自定义验证。
在海洋CD,可以构建一个自定义验证如下:
- 工作分析:将触发Kubernetes工作期间在任何给定的时间推出和配置策略基于接收到的工作结果(成功或失败)。
- 网络分析:将执行HTTP请求与一些外部服务获得测量。它可以在不同的场合使用,如触发外部自动化。海洋CD不仅通知外部服务也会测量显示和自动采取行动基于预配置策略。
这是一个如何使用web分析的例子:
:“VerificationTemplate”
名称:“mywebanalysis”
指标:
名称:“webanalysis”
间隔:“10”
数:10
successCondition:“结果。好& &结果。successPercent > = 0.90”
供应商:
网络:
url: https://myurl.com
标题:
——关键:授权
价值:BearerToken
jsonPath:“{$ . data}”
上面的模板执行GET请求mywebhook URL,从而返回一个JSON。与海洋jsonPath参数,CD只显示从JSON请求数据的问题。
这个验证的实施部署策略,可以cross-cluster和多个工作负载使用。
UI将返回以下:
Web分析自定义阶段验证发生在第二阶段的金丝雀部署
接收的数据如何影响进步的部署?
在成功或失败的标准或自定义验证,验证海洋CD之前失败的策略集之前部署的触发器。有三个选项可供用户失败:
- 回滚:海洋CD回滚工作负载的版本在验证指标失败。它返回到前面的稳定版本。
- 暂停:海洋CD暂停推出在验证指标失败,允许用户选择实时如何追求推出。
- 促进:海洋CD促进你的推出,无论验证的结果。
额外的灵活性和粒度,用户可以选择要部署的代码没有任何政策相关。这个可以通过使布尔参数称为排练,发现作为验证模板实体的一部分。
试着海洋CD连续验证
通过这个博客,我们解释了三大支柱海洋CD Kubernetes应用程序为用户提供了部署代码时。我们主要还是关注连续验证一个用户可以配置和执行期间推出的部署。此外,我们展示了海洋CD允许设置内置验证使用众所周知的监视工具,以及描述可以使用自定义验证的方式。
海洋CD现在可以与所有现货控制台用户免费试用。我们有模板和示例快速启动你的第一个部署策略。新发现吗?安排一次演示开始。