asd #1
@ -1,7 +1,4 @@
|
||||
# maxMemoryUsage must be defined
|
||||
baseName="crunner0";
|
||||
namePrefix="cubs";
|
||||
runners="";
|
||||
|
||||
function usedMemoryPercent () {
|
||||
memoryAvailable=$(head /proc/meminfo|grep MemAvail|grep -Po '\d+');
|
||||
@ -12,7 +9,9 @@ function usedMemoryPercent () {
|
||||
}
|
||||
|
||||
function buildRunners () {
|
||||
|
||||
baseName="crunner0";
|
||||
namePrefix="cubs";
|
||||
runners="";
|
||||
usedMemoryPercent;
|
||||
|
||||
# maxMemoryUsage must be defined
|
||||
@ -26,8 +25,6 @@ function buildRunners () {
|
||||
fi
|
||||
usedMemoryPercent;
|
||||
done
|
||||
|
||||
echo $runners;
|
||||
}
|
||||
buildRunners;
|
||||
exit 0;
|
25
routes/crontab_syslog.txt
Normal file
25
routes/crontab_syslog.txt
Normal file
@ -0,0 +1,25 @@
|
||||
Oct 20 21:52:16 dev--CLW10-3066 crontab[1885]: (virt) REPLACE (virt)
|
||||
Oct 20 21:52:37 dev--CLW10-3066 crontab[2166]: (virt) LIST (virt)
|
||||
Oct 20 21:53:03 dev--CLW10-3066 crontab[2168]: (virt) LIST (virt)
|
||||
Oct 20 22:01:01 dev--CLW10-3066 CRON[18873]: (virt) CMD (source /home/virt/allocate_runners.sh)
|
||||
Oct 20 23:01:01 dev--CLW10-3066 CRON[1867]: (virt) CMD (source /home/virt/allocate_runners.sh)
|
||||
|
||||
|
||||
|
||||
|
||||
ALL CRON
|
||||
Oct 20 21:52:13 dev--CLW10-3066 cron[1443]: (CRON) INFO (pidfile fd = 3)
|
||||
Oct 20 21:52:13 dev--CLW10-3066 cron[1443]: (CRON) INFO (Running @reboot jobs)
|
||||
Oct 20 21:52:16 dev--CLW10-3066 crontab[1885]: (virt) REPLACE (virt)
|
||||
Oct 20 21:52:37 dev--CLW10-3066 crontab[2166]: (virt) LIST (virt)
|
||||
Oct 20 21:53:03 dev--CLW10-3066 crontab[2168]: (virt) LIST (virt)
|
||||
Oct 20 22:01:01 dev--CLW10-3066 CRON[18873]: (virt) CMD (source /home/virt/allocate_runners.sh)
|
||||
Oct 20 22:01:01 dev--CLW10-3066 CRON[18870]: (CRON) info (No MTA installed, discarding output)
|
||||
Oct 20 22:17:01 dev--CLW10-3066 cron[1443]: Authentication token is no longer valid; new one required
|
||||
Oct 20 22:17:01 dev--CLW10-3066 CRON[18913]: Authentication token is no longer valid; new one required
|
||||
Oct 20 22:17:53 dev--CLW10-3066 cron[1393]: (CRON) INFO (pidfile fd = 3)
|
||||
Oct 20 22:17:53 dev--CLW10-3066 cron[1393]: (CRON) INFO (Running @reboot jobs)
|
||||
Oct 20 23:01:01 dev--CLW10-3066 CRON[1867]: (virt) CMD (source /home/virt/allocate_runners.sh)
|
||||
Oct 20 23:01:01 dev--CLW10-3066 CRON[1865]: (CRON) info (No MTA installed, discarding output)
|
||||
Oct 20 23:17:01 dev--CLW10-3066 cron[1393]: Authentication token is no longer valid; new one required
|
||||
Oct 20 23:17:01 dev--CLW10-3066 CRON[1897]: Authentication token is no longer valid; new one required
|
@ -222,7 +222,15 @@ var Worker = (function(){
|
||||
});
|
||||
};
|
||||
|
||||
proto.startRunners = function(args){
|
||||
proto.__buildCommand = function(file, maxMemoryUsage){
|
||||
var command = `echo "export PATH=\${PATH};export maxMemoryUsage=${maxMemoryUsage};`;
|
||||
command += `echo '${file.toString("base64")}'|base64 --decode|bash" | cat > /home/virt/allocate_runners.sh`;
|
||||
command += ` && echo "*/1 * * * * source /home/virt/allocate_runners.sh >> /home/virt/allocate_runners.log 2>&1" | crontab -;`;
|
||||
return command;
|
||||
};
|
||||
|
||||
proto.startRunners = function(args, count){
|
||||
if ( count > 3) return;
|
||||
// onStart is not necessary
|
||||
var worker = this;
|
||||
args.stopPercent = args.stopPercent || 80;
|
||||
@ -242,18 +250,24 @@ var Worker = (function(){
|
||||
|
||||
worker.isBuildingRunners = true;
|
||||
fs.readFile(__dirname + "/../allocate_runners.sh", function(error, file){
|
||||
var command = '(crontab -l > /tmp/virtjobs && echo "1 * * * * export PATH=${PATH};' +
|
||||
"export maxMemoryUsage=${args.stopPercent};" + `echo '${file.toString("base64")}'|base64 --decode|bash")`
|
||||
+ ">> /tmp/virtjobs && crontab /tmp/virtjobs && rm /tmp/virtjobs;";
|
||||
var command = worker.__buildCommand(file, args.stopPercent);
|
||||
|
||||
lxc.exec(command, worker.ip, function(data, error, stderr){
|
||||
console.log(arguments);
|
||||
if (error) {
|
||||
console.log("ERROR: ",stderr);
|
||||
setTimeout(function(){
|
||||
count = count || 0;
|
||||
worker.startRunners(args, ++count);
|
||||
}, 0);
|
||||
} else {
|
||||
console.log("SUCCESS: ", data , worker.ip);
|
||||
}
|
||||
// Just send the job over and set a timeout
|
||||
// to wait before checking runners
|
||||
setTimeout(function(){
|
||||
worker.sync(args.callback);
|
||||
// 900000 < thats 15 min not 90 sec
|
||||
}, 90000);
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user