sv-manager

Solana Validator Manager

View on GitHub

Solana Validation Manager – Advanced Manual

Node requirements

What does it do with your Validator Node exactly

Configure Ubuntu

Ubuntu role

that role configures your ubuntu node to be more performant and stable with validation

  1. Create ansible user
  2. Create solana user
  3. Create swap file
  4. Create ram disk for accounts db
  5. Set cpu governor to performance
  6. Configure firewall

Bootstrap Solana cli

Solana cli role

that role installs or updates solana cli

Configure node monitoring

that role configures sending of validator and node metrics to our grafana dashboard

How to install Ansible

On macOS

brew update; brew install ansible

On Ubuntu

apt-get update; apt-get install ansible

On Windows

unfortunately ansible is not directly supported on Windows, we are working on a docker image which will directly provide a support for Solana Validator Manager, until that you can use ansible docker image on your own.

How to configure Solana Validator Manager

!only testnet configuration is supported now!

  1. clone git repository git clone …
  2. copy or rename inventory_example directory to directory named inventory
  3. add to your inventory/hosts.yaml
all:
  children:
    local:
      vars:
        become: false
        ansible_connection: local
        ansible_python_interpreter: ""
      hosts:
        localhost
    remote:
      vars:
        ansible_user: root
      children:
        validator:
          vars:
            validator_name: <- HERE
#            keybase_username: ""
#            validator_homepage: ""
            upload_validator_keys: False <- Set it to True if you want to upload your keys
#            secrets_path: /home/solana/.secrets
#            set_validator_info: True
#            service_user: solana
#            ledger_path: /home/solana/ledger
#            lvm_enabled: False
#            lvm_vg: vg00
#            solana_validator_service: restarted <- Set it to stopped if you want to check your setup
#            swap_file_size_gb: 64
#            ramdisk_size_gb: 64
#            cluster_environment: testnet
#            cluster_rpc_address: https://api.testnet.solana.com
          hosts:
            0.0.0.0 <- HERE

in case you have already identity keys (the most of you will have at least a validator identity key)

  1. copy your validator identity key, if any, into .secrets//solana
  2. copy your vote account identity key, if any, into .secrets//solana
  3. set upload_validator_keys to True

How to use

from local machine

  1. make sure you have access to you validator node as a root user via ssh-key
  2. configure hosts.yaml
  3. start playbook

ansible-playbook install_validator.yaml -v

if you run an ubuntu server with more or less standard configuration than in few minutes your validator node should be up, and you can observe your metrics on our metrics dashboard

from Validator Node

coming soon!

Which functions are supported

Install Validator Node

ansible-playbook pb_install_validator.yaml -v

Update Solana Version

...
validator:
  version: v1.6.7 <- set new version here
...

Install or update Monitoring

How to install monitoring with ansible

ansible-playbook pb_install_monitoring.yaml -v

How to install monitoring manually

From server command line, user root, paste the whole command and run it:

/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/mfactory-lab/sv-manager/latest/install/install_monitoring.sh)”

Migrate your current setup to supported by sv-manager

How to migrate your setup semi-automatically

coming soon

How to migrate your setup manually

coming soon