Project StructureΒΆ
It is assumed that the folder circe/
is located on the users home path (for example: /home/apac
). The structure of the project within circe/
folder is the following:
- nodes.txt
- dag.txt
- configuration.txt (output of the HEFT algorithm)
- profiler node1.txt, profiler node2.txt,... (output of execution profiler)
- docker_execution_profiler/
- scheduler.py
- app/
- dag.txt
- requirements.txt
- Dockerfile
- DAG task files (task1.py, task2.py,...)
- DAG input file (input1.txt)
- start.sh
- profiler.py
- centralized scheduler with profiler/
- input/ (this folder should be created by user)
- output/ (this folder should be created by user)
- 1botnet.ipsum, 2botnet.ipsum (example input files)
- scheduler.py
- monitor.py
- securityapp (this folder contains application task files, in this case localpro.py, aggregate0.py,...)
- removeprocesses.py
- remove_and_restart.py
- readconfig.py
- heft/
- write_input_file.py
- heft_dup.py
- main.py
- create_input.py
- cpop.py
- read config.py
- input.tgff (output of write input file.py)
- readme.md
- central network profiler/
- folder central_input: link list.txt, nodes.txt, central.txt
- central copy nodes
- central init
- central query statistics.py
- central scheduler.py
- folder network script: automate droplet.py, droplet generate random files, droplet init, droplet scp time transfer
- folder mongo control
- mongo scrip/
- server.py
- install package.py
- mongo control/
- insert to mongo.py
- read info.py
- read info.pyc
- install package.py
- jobs.py
- ip path
Note that while we currently use an implementation of HEFT for use with CIRCE, other schedulers may be used as well.