This directory includes deployment scripts that help to deploy ResilientDB on multiple machines. At present, these scripts only support deploying KV service and KV Performance server.
Add the IP addresses of the machines where you wish to deploy ResilientDB replicas and client proxy in the file config/kv_server.conf. Create the ssh key file in the config “config/key.conf” and put your ssh key there (See the key_example.conf as an example). We recommend using private IP addresses of each machine.
root is ubuntu and the current working directory is located at /home/ubuntu/. If this is not the case for your machines, you would need to update the scripts.To deploy the KV service, run the following command from the deploy directory:
./script/deploy.sh ./config/kv_server.conf
If the script outputs Servers are running, it implies that you have successfully deployed ReslientDB KV Service on desired machines.
Note: this script creates a directory config_out, which includes keys and certificates for all the replicas and the proxy. Further, it includes the configuration for replicas server.config and proxy client.config.
To do so, we need to build and run the KV client tools:
cd ../.. bazel build service/tools/kv/api_tools/kv_service_tools bazel-bin/service/tools/kv/api_tools/kv_service_tools scripts/deploy/config_out/client.config get test 1234
Or:
bazel run //service/tools/kv/api_tools:kv_service_tools -- $PWD/config_out/client.config get test
Our benchmark is based on the Key-Value service.
Before running, place the private IP addresses of your machines in the file config/kv_performance_server.conf.
Run the script:
./performance/pbft_performance.sh config/kv_performance_server.conf
Results will be saved locally and be shown on the screen as well.
The default path for the workspace to deploy the system is /home/ubuntu If you want to change the path, you can update script/env.sh