#!/usr/bin/env bash set -e ################################################## # create compute instances gcloud compute instances create \ bench-agent-a-1 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-a-2 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-a-3 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure export GCP_KEY_PATH=/etc/gcp-key-etcd-development.json gcloud compute instances create \ bench-tester-a \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure \ --metadata-from-file gcp-key-etcd=${GCP_KEY_PATH} gcloud compute instances create \ bench-agent-b-1 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-b-2 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-b-3 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure export GCP_KEY_PATH=/etc/gcp-key-etcd-development.json gcloud compute instances create \ bench-tester-b \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure \ --metadata-from-file gcp-key-etcd=${GCP_KEY_PATH} gcloud compute instances create \ bench-agent-c-1 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-c-2 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-c-3 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure export GCP_KEY_PATH=/etc/gcp-key-etcd-development.json gcloud compute instances create \ bench-tester-c \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure \ --metadata-from-file gcp-key-etcd=${GCP_KEY_PATH} gcloud compute instances create \ bench-agent-d-1 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-d-2 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure gcloud compute instances create \ bench-agent-d-3 \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure export GCP_KEY_PATH=/etc/gcp-key-etcd-development.json gcloud compute instances create \ bench-tester-d \ --custom-cpu=16 \ --custom-memory=60 \ --image-family=ubuntu-1710 \ --image-project=ubuntu-os-cloud \ --boot-disk-size=300 \ --boot-disk-type="pd-ssd" \ --network dbtester \ --zone us-west1-a \ --maintenance-policy=MIGRATE \ --restart-on-failure \ --metadata-from-file gcp-key-etcd=${GCP_KEY_PATH} ################################################## ################################################## gcloud compute ssh --zone=us-west1-a bench-agent-a-1 gcloud compute ssh --zone=us-west1-a bench-agent-a-2 gcloud compute ssh --zone=us-west1-a bench-agent-a-3 gcloud compute ssh --zone=us-west1-a bench-tester-a gcloud compute ssh --zone=us-west1-a bench-agent-b-1 gcloud compute ssh --zone=us-west1-a bench-agent-b-2 gcloud compute ssh --zone=us-west1-a bench-agent-b-3 gcloud compute ssh --zone=us-west1-a bench-tester-b gcloud compute ssh --zone=us-west1-a bench-agent-c-1 gcloud compute ssh --zone=us-west1-a bench-agent-c-2 gcloud compute ssh --zone=us-west1-a bench-agent-c-3 gcloud compute ssh --zone=us-west1-a bench-tester-c gcloud compute ssh --zone=us-west1-a bench-agent-d-1 gcloud compute ssh --zone=us-west1-a bench-agent-d-2 gcloud compute ssh --zone=us-west1-a bench-agent-d-3 gcloud compute ssh --zone=us-west1-a bench-tester-d gcloud compute instances list <> ${HOME}/.bashrc; PATH_VAR=$PATH":/usr/local/go/bin:$(echo $HOME)/go/bin"; echo "export PATH=$(echo $PATH_VAR)" >> ${HOME}/.bashrc; source ${HOME}/.bashrc; fi mkdir -p ${GOPATH}/bin/ source ${HOME}/.bashrc go version ################################################## ################################################## USER_NAME=coreos BRANCH_NAME=master GIT_PATH=github.com/coreos/etcd rm -rf ${GOPATH}/src/${GIT_PATH} mkdir -p ${GOPATH}/src/github.com/coreos git clone https://github.com/${USER_NAME}/etcd \ --branch ${BRANCH_NAME} \ ${GOPATH}/src/${GIT_PATH} cd ${GOPATH}/src/${GIT_PATH} < /tmp/gcp-key-etcd-development.json sudo mv /tmp/gcp-key-etcd-development.json /etc/gcp-key-etcd-development.json head -10 /etc/gcp-key-etcd-development.json # copy the tester configuration from git repository cp ${HOME}/go/src/github.com/coreos/dbtester/test-results/2018Q2-02-etcd-client-balancer/write-1M-keys-best-throughput.yaml ${HOME}/config.yaml cat ${HOME}/config.yaml sudo service ntp stop sudo ntpdate time.google.com sudo service ntp start nohup dbtester control \ --database-id etcd__tip \ --config config.yaml > ${HOME}/client-control.log 2>&1 & sleep 7s tail -f ${HOME}/client-control.log < ${HOME}/client-control.log 2>&1 & nohup dbtester control \ --database-id etcd__v3_3 \ --config config.yaml > ${HOME}/client-control.log 2>&1 & nohup dbtester control \ --database-id etcd__tip \ --config config.yaml > ${HOME}/client-control.log 2>&1 & nohup dbtester control \ --database-id etcd__other \ --config config.yaml > ${HOME}/client-control.log 2>&1 & nohup dbtester control \ --database-id zookeeper__r3_5_3_beta \ --config config.yaml > ${HOME}/client-control.log 2>&1 & nohup dbtester control \ --database-id consul__v1_0_2 \ --config config.yaml > ${HOME}/client-control.log 2>&1 & COMMENT ################################################## ################################################## # analyze; get all data from remote machines # and specify 'analyze' configuration file, # this aggregates data, generates all graphs, texts cd ${HOME}/go/src/github.com/coreos/dbtester go install -v ./cmd/dbtester gsutil -m cp -R gs://dbtester-results/2018Q2-02-etcd-client-balancer . cp ./test-results/2018Q2-02-etcd-client-balancer/read-3M-same-keys-best-throughput.yaml ./2018Q2-02-etcd-client-balancer/read-3M-same-keys-best-throughput/ dbtester analyze --config 2018Q2-02-etcd-client-balancer/read-3M-same-keys-best-throughput/read-3M-same-keys-best-throughput.yaml cp ./test-results/2018Q2-02-etcd-client-balancer/write-1M-keys-best-throughput.yaml ./2018Q2-02-etcd-client-balancer/write-1M-keys-best-throughput/ dbtester analyze --config 2018Q2-02-etcd-client-balancer/write-1M-keys-best-throughput/write-1M-keys-best-throughput.yaml gsutil -m cp -R 2018Q2-02-etcd-client-balancer gs://dbtester-results/ gsutil -m acl ch -u allUsers:R -r gs://dbtester-results/2018Q2-02-etcd-client-balancer ################################################## <0 Layout->Title and Fonts Write 2M 256-byte key-value pairs, Latency Write 500K 256-byte key-value pairs, Latency (1-connection) font 30 Axes->Title->X empty Axes->Titles->Y Latency (millisecond) font 18 Axes->Tick Labels->X Axes->Tick Labels->Y font 17 Axes->Range Auto Range, Log Legend font 22 Layout->Margins Top 200px ######################## COMMENT