From f0db8ba560c882d3fe297b5433acc128dc2d9343 Mon Sep 17 00:00:00 2001 From: Quentin Dufour Date: Wed, 14 Sep 2022 18:22:46 +0200 Subject: Scenario based benchmarks will be ready soon --- README.md | 56 +++++++++++++++++++++++++++++++------------------------- 1 file changed, 31 insertions(+), 25 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 92abc61..4ab842a 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,49 @@ # mknet -## Installation +mknet is a tool to simulate various network topologies +locally thanks to network namespaces and traffic control (tc). -```bash -sudo pip3 install git+https://git.deuxfleurs.fr/trinity-1686a/mknet -``` +## Prepare your environment -## Usage +Get the repository and its submodules: ```bash -sudo rm -rf /tmp/garage-testnet/ # always start by deleting previous run -sudo mknet create ./config.yml -sudo mknet run-all example/deploy_garage.sh -sudo mknet run dc1:dc1s1 garage -c /tmp/garage-testnet/dc1/dc1s1/garage.toml status -sudo mknet destroy +git clone https://git.deuxfleurs.fr/Deuxfleurs/mknet.git +cd mknet +git submodule update --init ``` -## Instrumented daemons +Compile benchmark tools: -If you want to use the scripts provided in the `example` folder, -you must add to your path some tools. +```bash +( cd benchmarks/warp && go build ) +( cd benchmarks/s3concurrent && go build ) +( cd benchmarks/s3lat && go build ) +``` -### Garage (`deploy_garage.sh`) +Switch to root as it is required by our tool, +and setup your python environment. ```bash -# see versions on https://garagehq.deuxfleurs.fr/_releases.html -export GRG_ARCH=x86_64-unknown-linux-musl -export GRG_VERSION=v0.5.0 +sudo -i +pip3 install --user . +( cd scenarios && pip3 install -r requirements.txt ) +``` -sudo wget https://garagehq.deuxfleurs.fr/_releases/${GRG_VERSION}/${GRG_ARCH}/garage -O /usr/local/bin/garage -sudo chmod +x /usr/local/bin/garage +## Run a test -garage help +(Not yet implemented) + +```bash +./mknet scenario ./benchmarks/garage-s3lat ./topo/single-dc.yml ``` -### Minio (`deploy_minio.py`) +## Manual usage -``` -sudo wget https://dl.min.io/server/minio/release/linux-amd64/minio -O /usr/local/bin/minio -sudo chmod +x /usr/local/bin/minio -``` +```bash +./mknet create ./topo/with-vdsl.yml +./mknet run-all ./scenarios/garage-manual +./mknet run dc1:dc1s1 /tmp/mknet-bin/garage* -c /tmp/mknet-store/garage/dc1/dc1s1/garage.toml status +./mknet run-all ./scenarios/clean +./mknet destroy -- cgit v1.2.3