Files
kubevela/charts/vela-core/README.md
2022-03-31 17:33:06 +08:00

11 KiB



Make shipping applications more enjoyable.

Build status Go Report Card Docker Pulls codecov LICENSE Releases TODOs Twitter Artifact HUB CII Best Practices

KubeVela helm chart

KubeVela is a modern application platform that makes it easier and faster to deliver and manage applications across hybrid, multi-cloud environments. At the mean time, it is highly extensible and programmable, which can adapt to your needs as they grow.

TL;DR

helm repo add kubevela https://charts.kubevela.net/core
helm repo update
helm install --create-namespace -n vela-system kubevela kubevela/vela-core --wait

Prerequisites

  • Kubernetes >= v1.19 && < v1.22

Parameters

KubeVela core parameters

Name Description Value
systemDefinitionNamespace System definition namespace, if unspecified, will use built-in variable .Release.Namespace. nil
applicationRevisionLimit Application revision limit 10
definitionRevisionLimit Definition revision limit 20
concurrentReconciles concurrentReconciles is the concurrent reconcile number of the controller 4
controllerArgs.reSyncPeriod The period for resync the applications 5m
OAMSpecVer OAMSpecVer is the oam spec version controller want to setup v0.3
disableCaps Disable capability rollout
enableFluxcdAddon Whether to enable fluxcd addon false
dependCheckWait dependCheckWait is the time to wait for ApplicationConfiguration's dependent-resource ready 30s

KubeVela workflow parameters

Name Description Value
workflow.backoff.maxTime.waitState The max backoff time of workflow in a wait condition 60
workflow.backoff.maxTime.failedState The max backoff time of workflow in a failed condition 300
workflow.step.errorRetryTimes The max retry times of a failed workflow step 10

KubeVela controller parameters

Name Description Value
replicaCount KubeVela controller replica count 1
imageRegistry Image registry ""
image.repository Image repository oamdev/vela-core
image.tag Image tag latest
image.pullPolicy Image pull policy Always
resources.limits.cpu KubeVela controller's cpu limit 500m
resources.limits.memory KubeVela controller's memory limit 1Gi
resources.requests.cpu KubeVela controller's cpu request 50m
resources.requests.memory KubeVela controller's memory request 20Mi
webhookService.type KubeVela webhook service type ClusterIP
webhookService.port KubeVela webhook service port 9443
healthCheck.port KubeVela health check port 9440

MultiCluster parameters

Name Description Value
multicluster.enabled Whether to enable multi-cluster true
multicluster.clusterGateway.replicaCount ClusterGateway replica count 1
multicluster.clusterGateway.port ClusterGateway port 9443
multicluster.clusterGateway.image.repository ClusterGateway image repository oamdev/cluster-gateway
multicluster.clusterGateway.image.tag ClusterGateway image tag v1.3.0
multicluster.clusterGateway.image.pullPolicy ClusterGateway image pull policy IfNotPresent
multicluster.clusterGateway.resources.limits.cpu ClusterGateway cpu limit 100m
multicluster.clusterGateway.resources.limits.memory ClusterGateway memory limit 200Mi
multicluster.clusterGateway.secureTLS.enabled Whether to enable secure TLS true
multicluster.clusterGateway.secureTLS.certPath Path to the certificate file /etc/k8s-cluster-gateway-certs

Test parameters

Name Description Value
test.app.repository Test app repository oamdev/hello-world
test.app.tag Test app tag v1
test.k8s.repository Test k8s repository oamdev/alpine-k8s
test.k8s.tag Test k8s tag 1.18.2

Common parameters

Name Description Value
imagePullSecrets Image pull secrets []
nameOverride Override name ""
fullnameOverride Fullname override ""
serviceAccount.create Specifies whether a service account should be created true
serviceAccount.annotations Annotations to add to the service account {}
serviceAccount.name The name of the service account to use. If not set and create is true, a name is generated using the fullname template nil
nodeSelector Node selector {}
tolerations Tolerations []
affinity Affinity {}
rbac.create Specifies whether a RBAC role should be created true
logDebug Enable debug logs for development purpose false
logFilePath If non-empty, write log files in this path ""
logFileMaxSize Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. 1024
kubeClient.qps The qps for reconcile clients, default is 50 50
kubeClient.burst The burst for reconcile clients, default is 100 100

Uninstallation

Vela CLI

To uninstall KubeVela, you can just run the following command by vela CLI:

vela uninstall --force

Helm CLI

Notice: You must disable all the addons before uninstallation, this is a script for convenience.

#! /bin/sh
addon=$(vela addon list|grep enabled|awk {'print $1'})

fluxcd=false
for var in ${addon[*]}
do
  if [ $var == "fluxcd" ]; then
      fluxcd=true
      continue
      else
        vela addon disable $var
  fi
done
if [ $fluxcd ]; then
    vela addon disable fluxcd
fi

To uninstall the KubeVela helm release:

$ helm uninstall -n vela-system kubevela

Finally, this command will remove all the Kubernetes resources associated with KubeVela and remove this chart release.