A multi-tenant key-value store into which untrusted extensions can be pushed down at run-time
Running Sandstorm on CloudLab
To run Sandstorm on CloudLab, do the following
- Instantiate an experiment using the
sandstorm-clusterprofile under the
sandstormproject (you will need to join the project first). When asked, allocate two machines for the experiment.
- Once the experiment has begun, clone this repository on both the allocated machines.
- Next, run
scripts/setup.py --fullfrom the root directory on both machines. This script installs Rust, DPDK, and binds a 10 GbE network card to DPDK. It saves the PCI and MAC addresses of the bound NIC to a file called
- Create a toml file (
db/server.toml) for the server on one machine, and a toml file (
db/client.toml) for the client on the other machine. There are example files under
- Update the toml files with the correct MAC and PCI addresses (generated during Step 3).
- To run the server, run
make, followed by `sudo scripts/run-server' from the root directory.
- To run the ycsb client, run
make, followed by
sudo scripts/run-ycsbfrom the root directory.