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
helmcommand installedgitcommand 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.gitNavigate to the newly created
descant-clouddirectory:shcd descant-cloudIt is important that you are in the
descant-clouddirectory 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 updateInstall 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 \ --waitInstall 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-workflowsInstall 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 \ --waitInstall descant.cloud Helm chart:
shhelm upgrade --install service-chart ./helm/service-chart \ --namespace descant-system \ --create-namespaceIf 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 \ --waitThis step adds suggested Catalog repositories to speed up the process of creating new projects.