Install Resoto with Kubernetes
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.
- Helm (version 3 or above)
- Kubernetes cluster (kind or minikube should work as well)
- At least 2 CPU cores and 8 GB of RAM
Resoto performs CPU-intensive graph operations. In a production setup, we recommend at least four cores and 16 gigabytes of RAM. See Configuring Resoto Worker for more information.
Prepare ArangoDB Database
If you don't have ArangoDB, you can use the operator to install it. See more info here.
You can use the following commands to install the database:
$ helm repo add arangodb https://arangodb.github.io/kube-arangodb
$ helm repo update
$ helm install kube-arangodb-crd arangodb/kube-arangodb-crd
$ helm install kube-arangodb arangodb/kube-arangodb
$ kubectl apply -f - <<EOF
These instructions were tested with version 1.2.15 of the operator.
Then, wait until the ArangoDB deployment is ready:
$ kubectl wait --for=condition=ready arangodeployment/single-server
Create Helm Values File
This is the minimum configuration, which points to an empty ArangoDB database with default username and password.
The installation will create a separate database and password and secure the database installation with a generated password. You can find the generated database password in the secret
someengineering/helm-chart GitHub repository for a list of configurable values.
Install Helm Chart
Add the Resoto Helm chart repository:
$ helm repo add someengineering https://helm.some.engineering
Next, install Resoto using Helm:
$ helm install resoto someengineering/resoto --set image.tag=2.4.1 -f resoto-values.yaml
And just like that, you have Resoto running in a Kubernetes cluster! A collect run will begin automatically. This first collect usually takes less than 3 minutes.
Launching the Resoto Command-Line Interface
resh command is used to interact with
We need to first make sure that the deployment is available:
$ kubectl wait --for=condition=available deployment/resoto-resotocore
Then, simply execute the following to access the Resoto Shell interface:
$ kubectl exec -it service/resoto-resotocore -- resh