KubeVela:一个高可扩展的云原生应用平台与核心引擎
整理 | 叶子
一、软件介绍
KubeVela 是一个简单易用且高度可扩展的应用管理平台与核心引擎。KubeVela 是基于 Kubernetes 与 OAM 技术构建的。
详细的说,对于应用开发人员来讲,KubeVela 是一个非常低心智负担的云原生应用管理平台,核心功能是让开发人员方便快捷地在 Kubernetes 上定义与交付现代微服务应用,无需了解任何 Kubernetes 本身相关的细节。在这一点上,KubeVela 可以被认为是云原生社区的 Heroku。
另一方面,对于平台团队来讲,KubeVela 是一个强大并且高可扩展的云原生应用平台核心引擎。基于这样一个引擎,平台团队可以快速、高效地以 Kubernetes 原生的方式在 KubeVela 中植入任何来自云原生社区的应用管理能力,从而基于 KubeVela 打造出自己需要的云原生平台,比如:云原生数据库 PaaS、云原生 AI 平台、甚至 Serverless 服务。在这一点上,KubeVela 可以被认为是一个“以应用为中心”的 Kubernetes 发行版,以 OAM 为核心,让平台团队可以基于 KubeVela 快速打造出属于自己的 PaaS、Serverless 乃至任何面向用户的云原生平台项目。
二、下载地址
三、KubeVela 整体架构
四、安装
要求:
Kubernetes集群> = v1.15.0
安装并配置了kubectl
下载kubevela
通过脚本下载
1 | curl -fsSl https://kubevela.io/install.sh | bash |
从github下载
vela
从发行页面下载最新的二进制文件。解压缩
vela
二进制文件并将其添加$PATH
到入门中。
1 | $ sudo mv ./vela /usr/local/bin/vela |
初始化kubevela
执行vela install
安装KubeVela服务器组件及其依赖组件。
将安装以下依赖项组件以及Vela服务器组件:
Prometheus Stack
Cert-manager
Flagger
KEDA
注意:如果k8s集群的monitoring这个namespace下已经安装了Prometheus-operator,则kubevela安装的 prometheus stack 会造成冲突。
配置保存在“ vela-system / vela-config”中的ConfigMap中
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | [root@master-01 kubevela]# vela install - Installing Vela Core Chart: install chart vela-core, version 0.1.0, desc : A Helm chart for Kube Vela core, contains 35 file Successfully installed the chart, status: deployed, last deployed time = 2020-12-03 11:06:34.3800069 +0800 CST m=+6.951945903 Automatically discover capabilities successfully ✅ Add(8) Update(0) Delete(0) TYPE CATEGORY DESCRIPTION +task workload One-off task to run a piece of code or script to completion +webservice workload Long-running scalable service with stable endpoint to receive external traffic +worker workload Long-running scalable backend worker without network endpoint +autoscale trait Automatically scale the app following certain triggers or metrics +metrics trait Configure metrics targets to be monitored for the app +rollout trait Configure canary deployment strategy to release the app +route trait Configure route policy to the app +scaler trait Manually scale the app - Finished successfully. [root@master-01 kubevela]# kubectl get pod -n vela-system NAME READY STATUS RESTARTS AGE flagger-7846864bbf-m6wxt 1/1 Running 0 50s kubevela-vela-core-f8b987775-mdjqm 0/1 Running 0 65s [root@master-01 kubevela]# kubectl get pod -n cert-manager NAME READY STATUS RESTARTS AGE cert-manager-79c5f9946-gx9s9 1/1 Running 0 70s cert-manager-cainjector-76c9d55b6f-f478g 1/1 Running 0 70s cert-manager-webhook-6d4c5c44bb-bw9vh 1/1 Running 0 70s [root@master-01 kubevela]# kubectl get pod -n keda NAME READY STATUS RESTARTS AGE keda-operator-566d494bf-mqpn8 0/1 Running 0 68s keda-operator-metrics-apiserver-698865dc8b-fg4gn 1/1 Running 0 68s |
参考资料:
https://my.oschina.net/u/3874284/blog/4772552
https://mp.weixin.qq.com/s/z8BpT5fYlVao9wixealZVA
往期推荐
2021-01-26
2021-01-25
2021-01-22
扫码关注最新动态
公众号ID:fosslab
我就知道你“在看”