使用 Nocalhost 与 KubeVela 端云联调,一键完成多集群混合云环境部署

2a973ebaa2a0d29cd0f7d5d3b03536ba.gif

作者:雾雾、玉易才(KubeVela、Nocalhost 团队)

在云原生快速发展的当下,如何让云的技术赋能业务开发?在上线应用时,如何让云的开发者在现代化的多集群、混合云环境中便捷地进行应用的开发和调试?在部署过程中,又该如何让应用部署具备充分的验证和可靠性?

这些至关重要的问题,都是我们急需解决的。

在本文中,我们将结合 KubeVela 以及 Nocalhost 开源项目,给出一个基于 Kubernetes 和容器生态的端云联调、一键完成多集群混合环境部署的解决方案,来回答上述问题。

当一个新应用需要开发上线时,我们希望本地 IDE 中调试的结果能和云端最终部署的状态保持一致。这样一致的姿态,能最大程度上给予我们部署的信心,并且让我们可以采用类似 GitOps 这种更高效、敏捷的方式迭代应用更新。即:当新代码被推送至代码仓库中后,环境中的应用会自动化地实时更新。同时,基于端云联调的模式,可以让这整个过程不仅敏捷高效、同样更加稳定可靠。

基于 KubeVela 和 Nocalhost,我们可以完成这样一种部署过程:

2d22496473653a4a9a20ade07ae77f85.png

如图:通过 KubeVela 创建应用,将应用部署到测试环境后,暂停部署。使用 Nocalhost 在测试环境中对应用进行云端联调。调试完毕后,将调试完毕的代码推送到代码仓库,通过 KubeVela 进行 GitOps 部署,在测试环境进行验证后,再同步更新到生产环境。

在本文中,我们将介绍如何使用 KubeVela 及 Nocalhost 完成上述云端应用开发及上线的全过程。

01

什么是 KubeVela

Aliware

KubeVela 是一个简单易用且高度可扩展的应用交付和管理平台,基于 Kubernetes 与 OAM 技术构建。其核心功能是让开发人员方便快捷地在 Kubernetes 上定义与交付现代微服务应用,而无需了解任何 Kubernetes 本身相关的细节。

KubeVela 提供了 VelaUX 功能,能够让整个应用分发的过程可视化,使应用组装、分发、交付的流程变得更简单。在 UX 上,不仅可以便捷地通过页面及时了解整个交付链路状态,还可以通过配置触发器,使应用随着制品仓库的更新而更新。

而在本文的场景中,KubeVela 提供了以下能力:

  1. 完整的 GitOps 发布:

  • KubeVela 同时支持了 Pull 模式以及 Push 模式的 GitOps 发布:我们只需要将更新后的代码推送到代码仓库,KubeVela 就能自动基于最新代码完成部署。在本文中,我们将使用 Push 模式的 GitOps,关于 Pull 模式的 GitOps 支持,可以查看文末文章[1]。

  1. 强大的工作流能力,实现跨环境(集群)部署、审批以及通知:

  • KubeVela 借助其工作流能力,可以轻松让应用实现跨环境部署,并且支持用户在编排工作流的过程中,加入例如人工审批、消息通知等功能,使整个部署过程生产级可用。

  1. 应用抽象能力,让开发者都能看懂使用并且自定义基础设施能力

  • KubeVela 遵循 OAM 的开放应用模型,提供了一套简单易用的应用抽象能力,使开发者能够更加清晰地理解应用的功能,并且可以自定义基础设施能力。例如,对于一个简单的应用来说,我们可以将其划分为组件,运维特征,工作流三大部分。在本文的例子中,我们的组件是一个简单的业务应用;在运维特征部分,我们为这个组件绑定了一个 Nocalhost 的运维特征,让这个组件能够使用 Nocalhost 端云联调的能力;在工作流部分,通过多环境管理ÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值