Installing descant.cloud
Requirements
- existing Kubernetes cluster, empty cluster is recommended, otherwise make sure that versions of installed components are compatible with descant.cloud requirements
helm
command installedgit
command installed- POSIX-compatible shell (bash, zsh, etc.) to execute below commands
- at least 4 GB of memory on your cluster
Prepare your environment
Select the proper context for your Kubernetes cluster:
shkubectl config use-context <your-cluster-name>
Make sure your current user has enough permissions to install Helm charts and create resources in the target cluster. We recommend invoking the installation as a cluster admin.
Clone the descant.cloud repository:
shgit clone https://github.com/descant-cloud/descant-cloud.git
Navigate to the newly created
descant-cloud
directory:shcd descant-cloud
It is important that you are in the
descant-cloud
directory when running the following commands.Add the required Helm repositories:
shhelm repo list | grep -q "^crossplane" || helm repo add crossplane https://charts.crossplane.io/stable helm repo list | grep -q "^argo" || helm repo add argo https://argoproj.github.io/argo-helm helm repo list | grep -q "^metrics-server" || helm repo add metrics-server https://kubernetes-sigs.github.io/metrics-server helm repo update
Install Crossplane Helm chart:
shhelm upgrade --install crossplane crossplane/crossplane \ --namespace crossplane-system \ --create-namespace \ --wait \ --set args="{--enable-environment-configs,--enable-ssa-claims,--enable-usages}"
Install Metrics Server Helm chart:
shhelm upgrade --install metrics-server metrics-server/metrics-server \ --namespace kube-system \ --wait
Install Argo Workflows Helm chart:
shhelm upgrade --install argo-workflows argo/argo-workflows \ --namespace argo-workflows \ --create-namespace \ --wait \ --set controller.metricsConfig.enabled=false \ --set controller.serviceMonitor.enabled=false \ --set controller.workflowNamespaces[0]=argo-workflows \ --set controller.workflowDefaults.spec.serviceAccountName=argo-workflow \ --set workflow.serviceAccount.create=true \ --set server.managedNamespace=argo-workflows
Install Crossplane packages Helm chart - this is a required step to make sure that all Crossplane components (providers, functions, etc.) are properly installed and configured:
shhelm upgrade --install crossplane-packages ./helm/crossplane-packages \ --namespace crossplane-system \ --create-namespace \ --wait
Install descant.cloud Helm chart:
shhelm upgrade --install service-chart ./helm/service-chart \ --namespace descant-system \ --create-namespace
If you are using enterprise edition, you need to configure container repository credentials in order to pull container images with enterprise features enabled:
shhelm upgrade --install service-chart ./helm/service-chart \ --namespace descant-system \ --create-namespace \ --set enterprise.repository.url=<url-to-your-git-repository> \ --set enterprise.repository.username=<username> \ --set enterprise.repository.password=<password> \ --set enterprise.repository.version=<version>
Install descant.cloud blueprints Helm chart:
shhelm upgrade --install service-blueprints ./helm/service-blueprints \ --namespace descant-system \ --create-namespace \ --wait
(optional) Install descant.cloud fixtures Helm chart:
shhelm upgrade --install service-fixtures ./helm/service-fixtures \ --namespace descant-default-project \ --create-namespace \ --wait
This step adds suggested Catalog repositories to speed up the process of creating new projects.