solana/net/remote/remote_client.sh

57 lines
1.3 KiB
Bash
Executable File

#!/bin/bash -e
deployMethod="$1"
netEntrypoint="$2"
numNodes="$3"
RUST_LOG="$4"
[[ -n $deployMethod ]] || exit
[[ -n $netEntrypoint ]] || exit
[[ -n $numNodes ]] || exit
cd "$(dirname "$0")"/../..
source net/common.sh
loadConfigFile
threadCount=$(nproc)
if [[ $threadCount -gt 4 ]]; then
threadCount=4
fi
./script/install-earlyoom.sh
case $deployMethod in
snap)
sudo snap install solana.snap --devmode --dangerous
rm solana.snap
sudo snap set solana metrics-config="$SOLANA_METRICS_CONFIG" rust-log="$RUST_LOG"
solana_bench_tps=/snap/bin/solana.bench-tps
;;
local)
PATH="$HOME"/.cargo/bin:"$PATH"
export USE_INSTALL=1
export RUST_LOG
rsync -vPrz "$netEntrypoint:~/.cargo/bin/solana*" ~/.cargo/bin/
solana_bench_tps=multinode-demo/client.sh
netEntrypoint="$:~/solana"
;;
*)
echo "Unknown deployment method: $deployMethod"
exit 1
esac
./scripts/oom-monitor.sh > oom-monitor.log 2>&1 &
while true; do
echo "=== Client start: $(date)" >> client.log
clientCommand="$solana_bench_tps $netEntrypoint $numNodes --loop -s 600 --sustained -t threadCount"
echo "$ $clientCommand" >> client.log
$clientCommand >> client.log 2>&1
$metricsWriteDatapoint "testnet-deploy,name=$netBasename clientexit=1"
echo Error: bench-tps should never exit | tee -a client.log
done