Skip to content

Run Scale tests

Daniel Shu edited this page Jun 3, 2020 · 5 revisions

Create a eucalyptus instance

Use: Ubuhntu 16.04 LTS(Xenial Xerus) Make sure to pick h1.4xlarge All other params can be set to default

SSH into this instance.

Install Go

wget -c https://storage.googleapis.com/golang/go1.14.3.linux-amd64.tar.gz

sudo tar -C /usr/local -xvzf go1.14.3.linux-amd64.tar.gz

mkdir -p ~/go/{bin,src,pkg}

Set gopath

export GOPATH="/home/ubuntu/go"

Install packages

/usr/local/go/bin/go get github.com/sirupsen/logrus
/usr/local/go/bin/go get github.com/nats-io/nats.go
/usr/local/go/bin/go get github.com/nats-io/nats-server

scp the tar file into this instance inside of /home/ubuntu/go/src/ and then untar it here (or git clone https://github.com/AartiJivrajani/All-On-Cloud-9.git)
Run the following

cd /home/ubuntu/go/src/All-On-Cloud-9
git fetch origin bpaxos2
git checkout bpaxos2

Now once all dependencies are installed: Open three separate terminals and ssh into the instance

On terminal 1:

cd /home/ubuntu/go/bin
./nats-server

On terminal 2

cd /home/ubuntu/go/src/All-On-Cloud-9/bpaxos/tests
sh scalability_test.sh

On terminal 3

cd /home/ubuntu/go/src/All-On-Cloud-9/bpaxos/test_client

At this point, you want to wait for all of the nodes from terminal 2 to finish initializing. You may run:

wc -l ../tests/statuslog.txt 

and when this value returns 22, then you are ready

/usr/local/go/bin/go run main.go

This will start our test for 5 proposers, 5 consensus nodes, 5 replicas, and sending 50 requests. These parameters are controlled from within All-On-Cloud-9/bpaxos/tests/scalability_test.sh and All-On-Cloud-9/bpaxos/test_client/main.go

Clone this wiki locally