-
Notifications
You must be signed in to change notification settings - Fork 10
vHive Benchmarking
Theodor Amariucai edited this page Apr 4, 2021
·
12 revisions
git clone --single-branch --branch deployment https://github.com/ease-lab/vhive-bench.git
cd vhive-bench
bash initialize_machine.sh
- Save the following in
prod-cons.yaml
:
cat > prod-cons.yaml <<- EOM
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
namespace: default
spec:
template:
spec:
containers:
- image: crccheck/hello-world:latest # Stub image. See https://github.com/ease-lab/vhive/issues/68
ports:
- name: h2c # For GRPC support
containerPort: 50051
env:
- name: GUEST_PORT # Port on which the firecracker-containerd container is accepting requests
value: "50051"
- name: GUEST_IMAGE # Container image to use for firecracker-containerd container
value: "vhiveease/vhive-bench:latest"
EOM
- Start the functions:
kn service apply producer -f prod-cons.yaml --concurrency-target 1 --scale=1
kn service apply consumer -f prod-cons.yaml --concurrency-target 1 --scale=1
sudo ./main -o latency-samples -g endpoints -c experiments/data-transfer/inline/vhive/quick-warm-IAT10s.json
- Create K8s minio storage:
sudo chown -R $USER $HOME/.kube
sudo mkdir -p /minio-storage
cd ~/vhive/configs/storage/minio
MINIO_NODE_NAME=$HOSTNAME MINIO_PATH=/minio-storage envsubst < pv.yaml | kubectl apply -f -
kubectl apply -f pv-claim.yaml
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
- Create K8s minio bucket:
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin
mc alias set myminio http://10.96.0.46:9000 minio minio123
mc mb myminio/mybucket
- Run the tool:
sudo ./main -o latency-samples -g endpoints -c experiments/data-transfer/storage/vhive-minio/quick-warm-IAT10s.json