Skip to main content
This page walks you through preparing a Linux server for Chainstack Self-Hosted. By the end, you will have a running Kubernetes cluster and all required command-line tools installed. For hardware and software specifications, see System requirements.

Install Kubernetes (k3s)

k3s is a lightweight Kubernetes distribution suitable for single-server deployments. Other distributions (k8s, EKS, GKE, AKS) are also supported, but k3s is what’s tested and documented.
You should see output indicating the cluster is running and your node is in Ready state.

Install required tools

Helm

Helm is the package manager used to deploy Chainstack Self-Hosted.

yq

The installer uses yq (mikefarah version) to process YAML configuration files.

openssl

openssl is used during installation to generate certificates and RSA keys. It is pre-installed on most Linux distributions.
If openssl is not installed, install it with your package manager:

Configure storage

Default storage (single disk)

If your server uses a single disk, the default k3s local-path storage class works out of the box. No additional configuration is needed.

Multi-disk storage with TopoLVM

If you have multiple disks available for blockchain node data, set up LVM and TopoLVM for dynamic storage provisioning.

Set up LVM

Device paths vary by provider. The paths /dev/sdb, /dev/sdc, /dev/sdd are examples. On DigitalOcean, volumes appear under /dev/disk/by-id/. On AWS, they may be /dev/nvme1n1, /dev/nvme2n1, etc. Always verify your actual device paths with lsblk before creating physical volumes.

Install TopoLVM

Set TopoLVM as the default storage class

Verify your environment

Run these commands to confirm everything is in place before proceeding to Installation:
All commands should complete without errors. Your node should show Ready status, and at least one storage class should be listed.
Last modified on April 13, 2026