Solana Validator configuration
This documentation guide you on how to bootstrap a Solana Validator with our ansible playbook.
Last updated
This documentation guide you on how to bootstrap a Solana Validator with our ansible playbook.
Last updated
We choose ansible to automate the validator setup. You can find playbooks here.
It's good practice to read the source code before executing it.
For simplicity, we execute our ansible directly on the validator node.
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
-c testnet
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
-c testnet
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://amsterdam.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://amsterdam.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 74.118.140.240:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://amsterdam.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://amsterdam.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 74.118.140.240:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://frankfurt.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://frankfurt.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 145.40.93.84:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://frankfurt.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://frankfurt.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 145.40.93.84:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://ny.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://ny.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 141.98.216.96:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://ny.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://ny.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 141.98.216.96:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://tokyo.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://tokyo.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 202.8.9.160:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://tokyo.mainnet.block-engine.jito.wtf \
--jito-relayer-url http://tokyo.mainnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 202.8.9.160:1002 \
--jito-tip-payment-program-pubkey T1pyyaTNZsKv2WcRAB8oVnk93mLJw2XzjtVYqCsaHqt \
--jito-distribution-program-pubkey 4R3gSG8BpU4t19KYj8CfnbtRpnT8gtk4dvTHxVRwc2r7 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://dallas.testnet.block-engine.jito.wtf \
--jito-relayer-url http://dallas.testnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 147.28.154.132:1002 \
--jito-tip-payment-program-pubkey DCN82qDxJAQuSqHhv2BJuAgi41SPeKZB5ioBCTMNDrCC \
--jito-distribution-program-pubkey F2Zu7QZiTYUhPd7u9ukRVwxh7B71oA3NMJcHuCHc29P2 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500 \
-c testnet
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://dallas.testnet.block-engine.jito.wtf \
--jito-relayer-url http://dallas.testnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 147.28.154.132:1002 \
--jito-tip-payment-program-pubkey DCN82qDxJAQuSqHhv2BJuAgi41SPeKZB5ioBCTMNDrCC \
--jito-distribution-program-pubkey F2Zu7QZiTYUhPd7u9ukRVwxh7B71oA3NMJcHuCHc29P2 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500 \
-c testnet
To see the complete list of args.
./scripts/init_validator.sh -h
The init_validator.sh script is a wrapper to install some ansible dependencies and pass args to the playbook.
Go to the solana-bootstrap directory
cd solana-bootstart
We recommend not putting accounts on ramdisk for a validator with 256GB or less of ram.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account False \
--swap-file-size-gb 256 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://nyc.testnet.block-engine.jito.wtf \
--jito-relayer-url http://nyc.testnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 136.144.58.40:1002 \
--jito-tip-payment-program-pubkey DCN82qDxJAQuSqHhv2BJuAgi41SPeKZB5ioBCTMNDrCC \
--jito-distribution-program-pubkey F2Zu7QZiTYUhPd7u9ukRVwxh7B71oA3NMJcHuCHc29P2 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500 \
-c testnet
For a validator with 512GB or more, we recommend putting accounts on ramdisk.
sudo ./scripts/init_validator.sh \
--use-ramdisk-for-account True \
--swap-file-size-gb 512 \
--ledger-path /mnt/solana_ledger/ledger \
--jito-enable True \
--jito-block-engine-url https://nyc.testnet.block-engine.jito.wtf \
--jito-relayer-url http://nyc.testnet.relayer.jito.wtf:8100 \
--jito-receiver-addr 136.144.58.40:1002 \
--jito-tip-payment-program-pubkey DCN82qDxJAQuSqHhv2BJuAgi41SPeKZB5ioBCTMNDrCC \
--jito-distribution-program-pubkey F2Zu7QZiTYUhPd7u9ukRVwxh7B71oA3NMJcHuCHc29P2 \
--jito-merkle-root-upload-authority GZctHpWXmsZC1YHACTGGcHhYxjdRqQvTpYkb9LMvxDib \
--jito-commission-bps 500 \
-c testnet
To see the complete list of args.
./scripts/init_validator.sh -h