Initial Server Setup
This is a guide for getting your server setup before installing Solana software.
Reconfigure DNS (Recommended)
By default DNS resolution is managed by `systemd-resolved`, however, we sometimes notice slow resolution time. Is it why we recommend to setup DNS resolution manually to point to fast DNS servers (Google or Cloudflare)?
sudo rm -rf /etc/resolv.conf && \
sudo touch /etc/resolv.conf && \
echo -e "nameserver 8.8.8.8\nnameserver 8.8.1.1\n" | sudo tee /etc/resolv.conf
Format and mount a primary disk for accounts, snapshots and logs (Optional)
This step depends on how your server is initially configured. For instance, if the first disk is where the OS is installed by default and enough space is available to contain accounts, snapshots, and logs, you can skip this step.
Find unused disk
sudo parted -l | grep Error
Choose partitioning Standard
sudo parted /dev/<device> mklabel gpt
Create the new Partition
sudo parted -a opt /dev/<device> mkpart primary ext4 0% 100%
Create a filesystem on the new partition
sudo mkfs.ext4 -L solana_ledger /dev/<device partition>
Get the uuid
sudo lsblk -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT
Add mount entry in /etc/fstab
/dev/disk/by-uuid/<device partition uuid> /mnt/solana ext4 defaults 0 2
Mount device
sudo mount -ab
Format and mount a secondary disk for the ledger (Recommended)
If you deploy your server with no RAID option in order to dedicate a disk for the ledger, you can configure your secondary disk as follow:
Find unused disk
sudo parted -l | grep Error
Choose partitioning Standard
sudo parted /dev/<device> mklabel gpt
Create the new Partition
sudo parted -a opt /dev/<device> mkpart primary ext4 0% 100%
Create a filesystem on the new partition
sudo mkfs.ext4 -L solana_ledger /dev/<device partition>
Get the uuid
sudo lsblk -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT
Add mount entry in /etc/fstab
/dev/disk/by-uuid/<device partition uuid> /mnt/solana_ledger ext4 defaults 0 2
Mount device
sudo mount -ab
Install generic ubuntu kernel (Recommended)
It's possible that your Ubuntu server is installed with a low-latency kernel. In this case, we recommend you install the generic kernel.
First, identify if you have a low-latency kernel
uname -a
# In case of low latency kernel, you should got something like that:
# 5.4.0-139-lowlatency #156-Ubuntu SMP PREEMPT Fri Jan 20 18:09:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
If low latency kernel is installed then install generic kernel
sudo apt-get install --install-recommends linux-generic-hwe-20.04
Reboot when installation is completed
Last updated