阶段一完结篇:我为社区贡献了3个PR

KubeVela于2020年年底开源,距离现在还未满三年时间,是一个非常年轻的产物。KubeVela是非常创新的产物,如OAM模型的抽象设计。所以也并未成熟,除了官方文档,找不到更多资料,在使用过程中,我们也遇到各种大大小小的问题。

Terraform Controller是KubeVela提供的一个terraform插件,用于实现基础设施组件的部署。我在打通kubevela到混合云基础设施交付这条链路上,遇到的问题基本与Terraform Controller有关,而且我们也并没有什么奇奇怪怪的用法,就是非常简单的实现申请一个基础设施资源,但这样都能遇到很多问题。

我认为KubeVela的OAM模型也并非是完美的设计,它目的是通过一份application.yaml描述将部署一个应用依赖的中间件、基础设施都部署起来,但它没考虑到,多个应用依赖相同中间件以及相同基础设施的问题。

可以得出的结论是:kubevela还很少用户,使用kubevela交付基础设施的用户更少,使用kubevela交付中间件的用户更少,使用kubevela打通私有云/混合云交付基础设施的用户说不定我们是排在前面的。

在实践的过程中,我们遇到很多问题,事实告诉我,如果不研究透从一个应用的yaml编写到应用部署完成,包括基础设施资源的申请,我们以一种懵懂的状态根本hod不住后期投入生产使用可能出现的各种问题。而且当前遇见的问题也没有办法解决。所以我把KubeVela、Terraform Controller的源码看了一遍,并且尝试去修复遇见的一些问题。

也有些问题没办法通过提PR解决,属于架构本身的缺陷,但我们了解原理之后,能够通过编写插件去作为补充。

你可能感兴趣的:(云原生实战笔记,云原生,terraform)