Installation
Requirements:
- Kubernetes cluster >= v1.18 && < v1.22
- Kubectl && .
KubeVela relies on Kubernetes as a control plane. The control plane could be any managed Kubernetes offering or your cluster.
For local deployment and test, you could use or minikube
.
For production usage, you could use your Kubernetes cluster or Kubernetes services provided by cloud providers.
- Kind
- Minikube
- RKE
- Cloud Provider
Minikube is NOT RECOMMENDED for production.
Follow the minikube installation guide.
Then spins up a minikube cluster
Install ingress to enable service route
minikube addons enable ingress
This section guides to install a RKE Kubernetes cluster, you can refer to their installation guides for .
(1) Docker
The RKE depends on docker, Please install Docker on all servers or virtual machines, if not installed follow the docker installation guide.
Download RKE binary from .
If your internet access was limited, try using the binary cached by KubeVela team:
wget https://static.kubevela.net/binary/rke/rke_linux-amd64 -O /usr/bin/rke
chmod +x /usr/bin/rke
(3)Install RKE cluster
Please switch to a non-root user who has permission to operate docker and execute the following commands.
mkdir ~/rkeinit && cd ~/rkeinit
# Wizard-style configuration
rke config
# Kubernetes Cluster Installation
rke up
# Install kubectl Command
mkdir ~/.kube
cp kube_config_cluster.yml ~/.kube/config
docker cp kubelet:/usr/local/bin/kubectl /usr/local/bin/kubectl
Kind is NOT RECOMMENDED for production.
Follow this guide to install kind.
Then spins up a kind cluster:
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
kubeletExtraArgs:
node-labels: "ingress-ready=true"
extraPortMappings:
- containerPort: 80
hostPort: 80
protocol: TCP
- containerPort: 443
hostPort: 443
protocol: TCP
EOF
Install ingress controller to enable service route
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/kind/deploy.yaml
- Alibaba Cloud
- AWS EKS Service
- Azure
- Google GKE Service
Please make sure one of the is available.
Before installation, please make sure that Helm is available. If not installed, please head to Helm Installation first.
- Add and update KubeVela Helm chart repo
helm repo add kubevela https://charts.kubevela.net/core
helm repo update
- Install KubeVela Core
- Verify KubeVela Core installation
helm test kubevela -n vela-system
check out the outcome
Pod kubevela-application-test pending
Pod kubevela-application-test pending
Pod kubevela-application-test running
Pod kubevela-application-test succeeded
LAST DEPLOYED: Tue Apr 13 18:42:20 2021
NAMESPACE: vela-system
STATUS: deployed
REVISION: 1
TEST SUITE: kubevela-application-test
Last Started: Fri Apr 16 20:49:10 2021
Last Completed: Fri Apr 16 20:50:04 2021
Phase: Succeeded
TEST SUITE: first-vela-app
Last Started: Fri Apr 16 20:49:10 2021
Last Completed: Fri Apr 16 20:49:10 2021
Phase: Succeeded
NOTES:
Welcome to use the KubeVela! Enjoy your shipping application journey!
VelaUX is a dashboard including UI+API services, it enables you to do everything around application delivery and management.
1. Install KubeVela CLI
- Script
- Homebrew
- Download directly from releases
MacOS/Linux
curl -fsSl https://kubevela.io/script/install.sh | bash -s 1.2.0
Windows
Only the official release version is supported.
powershell -Command "iwr -useb https://kubevela.io/script/install.ps1 | iex"
macOS/Linux
Update your brew first. Please note that the brew method only supports the installation of the official release version.
brew update
Then install KubeVela CLI
brew install kubevela
- Download the latest
vela
binary file via release log. - Unzip the binary file, and configure the environment variables in
$PATH
, and you’re done.
2. Install VelaUX via Addon
vela addon enable velaux
expected output:
Addon: velaux enabled Successfully.
By default, velaux didn’t have any exposed port, you can view it by:
vela port-forward addon-velaux -n vela-system
Choose > Cluster: local | Namespace: vela-system | Component: velaux | Kind: Service
for visit.
If you have loadbalaner or ingress, please refer to VelaUX addon docs for more advanced installation ways.
Before uninstalling kubevela, you must delete all applications and disable all addons.
- Uninstall VelaUX
vela addon disable velaux
- Uninstall KubeVela Core
helm uninstall -n vela-system kubevela
- Uninstall CRD
- After installed KubeVela, let’s begin to 。