kubectl
plugins for licensing, configuration, and environment conformance testing.
Simple Installation
If you have an existing Kubernetes cluster you can run the following command from a workstation that haskubectl
access to the cluster.
ClusterIP
to enable you to access the admin from https://localhost:8800. From here you’ll be walked through the preflight checks, configuration and initial deployment of the application.
If you need to use your existing deployment pipeline (i.e. version control system), make custom configuration tweaks and/or deploy to multiple or remote environments, please see our advanced existing cluster installation instructions below.
Ingress Controller
If you are installing to an existing cluster, we expect you to bring your own Ingress Controller. You will have to add the annotations to the Config section in the admin console under the Ingress Controller Annotations option.
<deepsource-application-namespace>
is the Kubernetes namespace where the application is installed, usuallydeepsource
in case of installing in an existing cluster with KOTS.
Advanced Installation
DeepSource Enterprise is packaged as a Kubernetes application that can run on any Kubernetes cluster that meets minimum requirements:- Kubernetes v1.20.0 or later (although we recommend v1.30)
- A default storage class that can be used for relocatable storage
- A single namespace that all of the DeepSource Enterprise components will be deployed to
- A standard ingress controller that can be accessed by the clients sending error reports
Considerations prior to installation
-
Ensure you have two node pools:
- One for application workloads. We recommend having 16 CPUs and 32 GB memory for your application workload node pool.
- One for analysis workloads. We recommend having 10 CPUs and 36 GB memory for your analysis workload node pool.
-
Ensure you have two namespaces created. One of the namespace will be used for deploying the application workloads and the other namespace (named as
deepsource-analysis
) will be used for running analysis workloads. - You will also need to add node selectors to both your node pools to ensure proper isolation of application workloads from analysis workloads.
View and apply kubernetes manifests
If you’re unable or uncomfortable installing the admin console directly from KOTS, you can first pull the manifests that you’ll be deploying and kubectl apply those manifests. By default, these manifests are delivered with an empty kustomization.yaml in case you need to make last mile configuration changes with kustomize.Edit configuration locally
Using your favorite editor open the file:~/deepsource-fowl/upstream/userdata/config.yaml
, make any changes you need and save it, and then rerun kots pull to apply those changes to the deployable YAML manifest.