imperial-qore / cosco Goto Github PK
View Code? Open in Web Editor NEW[TPDS'21] COSCO: Container Orchestration using Co-Simulation and Gradient Based Optimization for Fog Computing Environments
License: BSD 3-Clause "New" or "Revised" License
[TPDS'21] COSCO: Container Orchestration using Co-Simulation and Gradient Based Optimization for Fog Computing Environments
License: BSD 3-Clause "New" or "Revised" License
Hi there,
great job though.
Recently I got to know this project and I was trying to set it up and test it in the gitpod, but when I try to run the main.py, it thoughts some exception to me. like this screemshot:
I haven't changed anything after starting a workspace on gitpod so I don't think I have messed up anything.
Can you please help me with this?
Thanks a lot for your open source code. I have some doubts. I found that metrics['slaviolations'] = len(np.where([c.destroyAt > c.sla for c in destroyed]))
in the stats.py file. No matter how many c.destroyAt > c.sla
, this metrics['slaviolations']
can only be 1 each time. Is this correct?Hope to hear from you, thank you very much.
I have a question.After running it, the prompt reports an error,
for example:if not container or not container.dependentOn:
error:AttributeError: 'Container' object has no attribute 'dependentOn'
The function getApparentIPS(self)
in container.py
def getApparentIPS(self): if self.hostid == -1: return self.ipsmodel.getMaxIPS() hostBaseIPS = self.getHost().getBaseIPS() hostIPSCap = self.getHost().ipsCap canUseIPS = (hostIPSCap - hostBaseIPS) / len(self.env.getContainersOfHost(self.hostid)) return min(self.ipsmodel.getMaxIPS(), self.getBaseIPS() + canUseIPS)
As hostBaseIPS = self.getHost().getBaseIPS()
get number from ips_list
, the hostBaseIPS
may get big number in a certain interval. When the host is nearly fully loaded, and all containers in the host are not migrated, when container.execute(0)
is executed, canUseIPS will appear negative, resulting in a negative execution time.
This happens at runtime. Hope to get your reply to see if my understanding is correct. Many thanks.
Hi, Tuli.
Thank you so much for this wonderful code!
I read the wiki, for the Vagrant, however, I did not find the method of setting VMs in Vagrant.
when i run
python main.py -e Vagrant -m 0
it seems stopped here
resp = requests.get("http://"+IP+":8081/request", data=json.dumps(payload))
i have no idea about 8081.
I wonder if I miss some tutoril about how to set VMs in vagrant
thank you very much if any advance!!!
Could you please help me to know how the scheduling time for each application is defined in the COSCO simulator. I checked the Bitbrains and Azur workload datasets as well where the scheduling time and end time are not defined. Also, could you please explain to me how the container is allocated in the COSCO simulator?
Hi,
I have a problem running the cosco on physical environment. I run it on VLAN mode. I don't have access to azure, AWS or any other famous cloud provider. I have access to 10 VMs with same resources you have been used in Demo video. I have not ran any specific command on my worker VMs, except for copying the public key.
According to your last video on the youtube playlist, we should run some kind of deplyoyment on the VMs, but I couldn't figure out how can I do that with out using the AZ command you used in the video, and I think my error that I have pasted as the subject of this issue happens because of that.
Could any one please help me with how can I deploy worker's applications on my vms without using cloud provider's specific packages?
hello,When I ran the code, the following problem, how to solve it, thanks for the reply.
Traceback (most recent call last):
File "D:\edgedownload\COSCO-workflow\main.py", line 233, in
datacenter, workload, scheduler, env, stats = initalizeEnvironment(env, logger)
File "D:\edgedownload\COSCO-workflow\main.py", line 134, in initalizeEnvironment
decision = scheduler.placement(deployed) # Decide placement using container ids
File "D:\edgedownload\COSCO-workflow\scheduler\MCDS.py", line 41, in placement
decision = self.run_MCSearch(containerIDs)
File "D:\edgedownload\COSCO-workflow\scheduler\MCDS.py", line 23, in run_MCSearch
apps, edges = self.env.stats.formGraph()
AttributeError: 'Stats' object has no attribute 'formGraph'
Hi Team,
Could you please advise me if there is any possibility of adding the deadline for the task or workload SWSD(Workload) or Task() class file where I need to change the modification to make the simulator work
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.