Skip to main content
版本:v1.2

快速安装

如果是要升级现有的 KubeVela,请直接阅读 升级指南。 如果需要离线安装,请参考 KubeVela 离线部署手册

1. 准备控制平面的 Kubernetes 集群

确保:

  • Kubernetes 集群版本 >= v1.19 && <= v1.22

若你已是 Kubernetes 用户,具有满足上述条件的集群,请直接进入 下一节 。若你没有满足要求的集群,可通过下述方式安装便捷安装。生产场景推荐使用云服务或 RKE 安装方式。

KubeVela 控制平面依赖 Kubernetes。它可以放置在任何托管 Kubernetes 作为底座的产品或自建 Kubernetes 集群中。

你可以使用 kind 或 minikube 在本地部署、测试 KubeVela。

当搭建生产环境时,请先准备生产用 Kubernetes 集群或使用云厂商提供的 Kubernetes 服务。

仅适用于测试/试用场景。

安装 Kind 命令行工具后,创建集群:

cat <<EOF | kind create cluster --image=kindest/node:v1.20.7 --config=-
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
kubeadmConfigPatches:
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "ingress-ready=true"
extraPortMappings:
- containerPort: 80
hostPort: 80
protocol: TCP
- containerPort: 443
hostPort: 443
protocol: TCP
EOF

安装 ingress 启用路由访问功能:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/kind/deploy.yaml

2. 安装 KubeVela CLI

KubeVela CLI 提供了命令行工具来便捷的应用终端管理能力。

MacOS/Linux

curl -fsSl https://kubevela.io/script/install.sh | bash -s 1.2.4

Windows

仅支持安装正式发行版本。

powershell -Command "iwr -useb https://kubevela.io/script/install.ps1 | iex"

3. 安装 KubeVela Core

Vela CLI 版本需要 >=1.2.3

vela install
成功安装后预期输出如下:
...
Watching for changes to Job kubevela-vela-core-cluster-gateway-tls-secret-patch with timeout of 18m0s
Add/Modify event for kubevela-vela-core-cluster-gateway-tls-secret-patch: ADDED
kubevela-vela-core-cluster-gateway-tls-secret-patch: Jobs active: 0, jobs failed: 0, jobs succeeded: 0
Add/Modify event for kubevela-vela-core-cluster-gateway-tls-secret-patch: MODIFIED
kubevela-vela-core-cluster-gateway-tls-secret-patch: Jobs active: 1, jobs failed: 0, jobs succeeded: 0
Add/Modify event for kubevela-vela-core-cluster-gateway-tls-secret-patch: MODIFIED
kubevela-vela-core-cluster-gateway-tls-secret-patch: Jobs active: 1, jobs failed: 0, jobs succeeded: 0
Add/Modify event for kubevela-vela-core-cluster-gateway-tls-secret-patch: MODIFIED
Starting delete for "kubevela-vela-core-admission" ServiceAccount
Starting delete for "kubevela-vela-core-admission" ClusterRole
Starting delete for "kubevela-vela-core-admission" ClusterRoleBinding
Starting delete for "kubevela-vela-core-admission" Role
Starting delete for "kubevela-vela-core-admission" RoleBinding
Starting delete for "kubevela-vela-core-admission-patch" Job
Starting delete for "kubevela-vela-core-cluster-gateway-admission" ServiceAccount
Starting delete for "kubevela-vela-core-cluster-gateway-admission" Role
Starting delete for "kubevela-vela-core-cluster-gateway-admission" RoleBinding
Starting delete for "kubevela-vela-core-cluster-gateway-tls-secret-patch" Job

KubeVela control plane has been successfully set up on your cluster.
If you want to enable dashboard, please run "vela addon enable velaux"

4. 安装 VelaUX

VelaUX 是一个可视化操作界面,包括 UI+API 服务,它适用于大多数厂商开箱即用的获取应用交付和管理能力。

vela addon enable velaux serviceType=NodePort

# 获取映射的端口,通过该端口访问 VelaUX
kubectl get service velaux -n vela-system -o jsonpath="{.spec.ports[0].nodePort}"

国内环境可使用以下安装方式:

vela addon enable velaux serviceType=NodePort repo=acr.kubevela.net

serviceType 配置 velaux 服务的访问方式,如果你使用云服务集群,请配置为 serviceType=LoadBalancer,启用完成后通过以下方式获取访问地址:

vela addon enable velaux serviceType=LoadBalancer repo=acr.kubevela.net

kubectl get service velaux -n vela-system -o jsonpath="{.status.loadBalancer.ingress[0].ip}"

如果你的集群中已经安装了 Nginx Ingress Controller,而且你具有可用的域名,你可以这样部署 VelaUX(请使用真实域名替换 example.doamin.com):

vela addon enable velaux repo=acr.kubevela.net domain=example.doamin.com

对于生产环境,请考虑启用 MongoDB 作为 VelaUX 的数据存储,使用 MongoDB 作为数据库的配置方式参考如下:

vela addon enable velaux dbType=mongodb database=kubevela dbURL=mongodb://<Mongo-Host>:<Mongo-Port>

5. 卸载

如果你试用完成后需要卸载 KubeVela,可参考如下操作进行:

在卸载之前,请先将所有应用删除,所有 addon 禁用。

  1. 卸载 VelaUX
vela addon disable velaux
  1. 卸载 KubeVela Core
vela uninstall
  1. 卸载 KubeVela 安装的 CRD

删除前,需要确保所有对应的 CR 资源已删除。

kubectl get crd |grep oam | awk '{print $1}' | xargs kubectl delete crd

下一步