快速安装
如果是要升级现有的 KubeVela,请直接阅读升级指南.
1.2 版本已发布,欢迎试用。去安装
1. 选择放置控制平面的集群
确保:
- Kubernetes 集群版本 >= v1.18.0
- 安装并配置 kubectl 命令行工具
KubeVela 得以成为控制平面,主要是依赖 Kubernetes 。它可以放置在任何托管 Kubernetes 作为底座的产品或你自己的集群中。
你可以使用 kind 或 minikube 在本地部署、测试 KubeVela,或者使用云厂商提供的 Kubernetes 服务做生产部署。
- Kind
- RKE
- Minikube
- Cloud Provider
{" "}
(1)安装 Docker (可选):RKE 的安装依赖于 Docker, 如未安装,请参考 Docker 安装指南.
{" "}
(2)安装 RKE 命令行:下载 RKE 二进制文件, 前往 RKE Release 页面.
如果你的网络受限无法下载(特别是中国用户),可直接使用下述方式安装:
wget https://static.kubevela.net/binary/rke/rke_linux-amd64 -O /usr/bin/rke
chmod +x /usr/bin/rke
{" "}
(3)安装 Kubernetes 集群: mkdir ~/rkeinit && cd ~/rkeinit
# 引导式配置,可参考 [RKE集群配置说明文档](https://rancher.com/docs/rke/latest/en/example-yamls/)。
rke config
# 安装集群
rke up
# 安装 Kubectl 命令行工具
mkdir ~/.kube
cp kube_config_cluster.yml ~/.kube/config
docker cp kubelet:/usr/local/bin/kubectl /usr/local/bin/kubectl
安装 Kind 命令行工具后,创建集群:
cat <<EOF | kind create cluster --image=kindest/node:v1.18.15 --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
注意: 请确保云厂商的集群已安装或启用 ingress-nginx 以保证路由访问功能可正常使用。
2. 安装 KubeVela
在安装之前,请确保 Helm 工具是可用的,如未安装,请参考 安装说明 安装完成。
如果你的网络情况很难下载成功 Helm,请点击使用国内镜像来安装(仅适用于 linux-amd64)
- 添加并更新 KubeVela Helm chart 仓库
helm repo add kubevela https://charts.kubevela.net/core
helm repo update
- 安装 KubeVela
helm install --create-namespace -n vela-system kubevela kubevela/vela-core --set multicluster.enabled=true --wait
你可以参考 自定义安装
获取更多安装模式和功能。
验证 chart 安装是否成功
helm test kubevela -n vela-system
点击查看期望输出
3. 【可选】安装 KubeVela CLI
KubeVela CLI 可以让你更便捷地来管理应用交付。不过,它不是必须使用的。
KubeVela CLI 也可以通过 kubectl plugin 的方式来安装,或者通过二进制文件.
- Script
- Homebrew
- Download directly from releases
macOS/Linux
curl -fsSl https://kubevela.io/script/install.sh | bash
Windows
powershell -Command "iwr -useb https://kubevela.io/script/install.ps1 | iex"
macOS/Linux
先更新下你的 brew
brew update
紧接着安装 KubeVela
brew install kubevela
4. 【可选】安装插件
KubeVela 支持一系列开箱即用的插件,建议你至少开启以下插件:
Helm 以及 Kustomize 组件功能插件
vela addon enable fluxcd
Terraform 插件
vela addon enable terraform
阿里云 Terraform Provider 插件
执行如下命令开启 Terraform 对阿里云的支持,可以创建和消费云资源:
其中,请参考如何获取 Access Key设置 Access Key,参考 Region 列表 中的
RegionId
设置ALICLOUD_REGION
。 参数ALICLOUD_SECURITY_TOKEN
是可选的,你可以通过 这篇介绍 设置。vela addon enable terraform/provider-alibaba ALICLOUD_ACCESS_KEY=<xxx> ALICLOUD_SECRET_KEY=<yyy> ALICLOUD_REGION=<region>
Azure Terraform Provider 插件
执行如下命令开启 Terraform 对 Azure 的支持,可以创建和消费云资源:
参考 Authenticate Terraform to Azure,设置如下参数。
vela addon enable terraform/provider-azure ARM_CLIENT_ID=<aaa> ARM_CLIENT_SECRET=<bbb> ARM_SUBSCRIPTION_ID=<ccc> ARM_TENANT_ID=<ddd>
AWS Terraform Provider 插件
执行如下命令开启 Terraform 对 AWS 的支持,可以创建和消费云资源:
参考 Authenticate Terraform to AWS,设置如下参数。
vela addon enable terraform/provider-aws AWS_ACCESS_KEY_ID=<aaa> AWS_SECRET_ACCESS_KEY=<bbb> AWS_DEFAULT_REGION=<region>
5. 查看已安装能力
如果没安装 vela 命令行工具,你也可以通过
kubectl get comp -A
和kubectl get trait -A
代替.
通过
vela
CLI 来看看有哪些组件类型:vela components
查看输出
通过
vela
CLI 来看看有哪些运维功能:vela traits
查看输出
以上的这些能力都是已经内置的,随取随用。而由于 KubeVela 从一开始就被设计成可编程的,你可以按玩乐高积木一样,添加任何你需要的功能。