Commit graph

82 commits

Author SHA1 Message Date
Scott Schneider
c8988c3dbf Send 'running' stats to graphite 2014-02-11 12:51:36 -08:00
Scott Schneider
cc90d6618e New configuration parameter 'vm_lifetime'
This allows for configurable TTLs for hosts in the 'running' queue.
2014-02-06 11:20:15 -08:00
Scott Schneider
dc2cbbe712 Clean up the 'deploy_vm' method
Removing duplicate lines of code better accomplished with a '||'
fallback to the 'find_vm_heavy' method.
2014-02-05 12:41:54 -08:00
Scott Schneider
261fdb5007 Past-tense log messages 2014-02-05 11:29:57 -08:00
Scott Schneider
b6e15080de Adding missing 'start' variable 2014-02-04 15:13:38 -08:00
Scott Schneider
087be6014d Store 'clone' timestamps in Redis database
Using redis keys to store clone timestamps will allow for a global TTL
for VMs in the 'pending' pool; failed clones should be cleaned up and
retried after a set period of time (eg. 15m).
2014-02-04 15:05:24 -08:00
Scott Schneider
ab450662cc Remove non-inventory VMs sitting in 'completed' queue 2014-02-04 10:34:55 -08:00
Scott Schneider
bbe67ab8a3 Rework vCenter VM retrieval method
Previous, the propertyCollector method was used to find VMs within
vCenter.  This method was ineffecient, as it would retrieve a list of
the entire vCenter inventory and then parse for the specified VM.  This
has been replaced with a fetch via searchIndex.FindByDnsName, which
returns only the requested VM object.
2014-02-04 09:42:28 -08:00
Scott Schneider
ba3831bffb Remove VMs not found in vCenter inventory from 'ready' queues 2014-02-03 15:57:35 -08:00
Scott Schneider
b0105a1509 Catch clonevm_task exceptions 2014-02-03 10:26:21 -08:00
Scott Schneider
601a500100 Syntax fix 2014-01-23 13:38:59 -08:00
Scott Schneider
6f59436047 Recover from failed clones/deletes 2014-01-23 13:38:10 -08:00
Scott Schneider
f4caa5a3ad Implement clone rate-limiting 2014-01-21 16:28:41 -08:00
Scott Schneider
67ed2c8a2e Check 2013-12-13 11:22:06 -08:00
Scott Schneider
6611c210a5 Fixup for long-running destruction 2013-12-13 11:19:37 -08:00
Scott Schneider
43047fbf80 Delete long-running VMs after 12 hours 2013-12-13 10:13:28 -08:00
Scott Schneider
d13a9fcf3a Start keeping track of how long hosts are running 2013-12-12 10:04:49 -08:00
Scott Schneider
bcd90bde75 Catch ALL THE EXCEPTIONS 2013-12-12 10:02:29 -08:00
Scott Schneider
bac80108b2 Each pool gets it's own vSphere object 2013-12-06 14:16:56 -08:00
Scott Schneider
e67d8a5d54 Additional object-existance checks 2013-12-06 12:05:47 -08:00
Scott Schneider
77ffd7f829 Missing an 'and' 2013-12-05 11:46:58 -08:00
Scott Schneider
72b1cd485e Replace srem/sadd with smove, check power state of 'ready' and 'running' VMs 2013-12-05 11:38:11 -08:00
Scott Schneider
2912056b45 Only check VMs found in inventory 2013-12-04 11:37:51 -08:00
Scott Schneider
d581524b81 Separate ready_ttl and running_ttl config params 2013-12-04 11:31:23 -08:00
Scott Schneider
4f23d8bb31 Use pool['running_ttl'], or a default 2013-12-04 11:25:46 -08:00
Scott Schneider
754c27020c Quick hack to auto-destroy long-running VMs 2013-12-04 11:15:03 -08:00
Scott Schneider
7b866f788e Clear pending queue on init 2013-11-25 22:31:08 -08:00
Scott Schneider
7ac06dc4d6 Why so sleepy? 2013-11-25 22:29:59 -08:00
Scott Schneider
9228abb5d1 Remove (commented-out) race condition 2013-11-25 13:46:47 -08:00
Scott Schneider
4f64355241 Only one pools.each required... 2013-11-21 10:47:25 -08:00
Scott Schneider
e8881d601c Check for dead threads and restart them 2013-11-18 10:27:35 -08:00
Scott Schneider
8aab996666 Move pool-checks into a function 2013-11-18 09:59:01 -08:00
Scott Schneider
29ad2b9e09 Expire hosts in 'ready' pool with uptimes exceeding TTL 2013-11-13 13:55:51 -08:00
Scott Schneider
0a0177e226 Rename 'check_vm' function to 'check_pending_vm' 2013-11-13 13:45:50 -08:00
Scott Schneider
c80cac8def Send pool availability to graphite 2013-11-13 11:58:44 -08:00
Scott Schneider
ea0a6786a4 Fixing variable 2013-11-12 15:16:02 -08:00
Scott Schneider
44637cef86 Send destroy times to graphite 2013-11-12 15:11:48 -08:00
Scott Schneider
77fe40b59b Send metrics to graphite (if configured) 2013-11-12 15:03:34 -08:00
Scott Schneider
57975a489f Log to a (configurable) file 2013-11-08 10:48:51 -08:00
Scott Schneider
2f4bdaf67a Per-pool timeout settings 2013-11-06 17:28:41 -08:00
Scott Schneider
c3b6215961 Fewer vSphere queries = better 2013-11-06 15:56:32 -08:00
Scott Schneider
bc20975fba Revert "Consolidate scripts"
This reverts commit 8f18acfd2d91e1f35671f36552a669eb45754433.
2013-11-06 09:47:24 -08:00
Scott Schneider
485e6a0e4b Consolidate scripts 2013-11-06 09:36:41 -08:00
Scott Schneider
dfc36a519e Don't re-add hosts in 'running' pool 2013-11-05 15:25:55 -08:00
Scott Schneider
d957ddd089 Fail and redeploy if VM not 'ready' after 10 minutes 2013-11-05 14:31:35 -08:00
Scott Schneider
71a9150631 Revert "Only correlate Redis inventory with vCenter on startup"
This reverts commit 658496f776f684dfcc31d8423bbafff38ea94e27.
2013-11-05 14:13:09 -08:00
Scott Schneider
b7f922fb11 Only correlate Redis inventory with vCenter on startup 2013-11-05 13:32:10 -08:00
Scott Schneider
deea66b0da Refactor #1 2013-11-05 12:54:30 -08:00
Scott Schneider
a7d6b27847 Refactoring this mess of code 2013-11-05 12:54:08 -08:00
Scott Schneider
aea6e32e3d destroy_vm should clear out Redis queue 2013-11-05 10:25:43 -08:00