Quick Start¶
Installation¶
Git¶
Clone the repo using
git clone https://github.com/MadhavJivrajani/YACS.git
Change the directory
cd YACS
Install dependencies
Setup a virtualenv if python versions are incompatible
Dependencies and Requirements¶
yacs
runs on Python 3.6.xInstallation can be done by running
pip install .
For help on running the CLI, run
yacs --help
Building Docs¶
Change directory using
cd docs
Install dependencies using
pip install -r requirements.txt
Build the docs by running
make html
The docs should now be available in
docs/_build
Usage¶
Running the
Master
:
yacs master --config=path_to_config --sched=scheduling_policy
Running the
Worker
:The
port
andworker_id
should be provided according to theconfig
provided in theMaster
yacs worker --port=port --id=worker_id
Submitting
jobs
and testing:
python gen_requests.py <no. of requests>
Docker¶
Run the following commands to start YACS using Docker:
cd docker
docker build -t master . # build image for master
docker build -t w1 -f worker_dockerfile . # build image for a worker
The images can also be pulled from Dockerhub:
Name of master’s docker image:
aditiahuja/yacs_master
Name of worker’s docker image:
aditiahuja/yacs_worker
Pull the images by running:
docker pull aditiahuja/yacs_master
docker pull aditiahuja/yacs_worker
Running YACS:
In the
yacs/docker
directory, run./start.sh <scheduling policy> <no. of workers>
. For eg../start.sh LL 3
.Enter the ID and port for each worker and then the number of requests.
To inspect the logs, run
docker exec -it master bash -c "cat yacs.log"
.