Alex Dadgar
561f9634ba
Fix counts
2016-01-04 14:33:10 -08:00
Alex Dadgar
c0721e45f6
Fix bug, add tests, and cli output
2016-01-04 14:23:06 -08:00
Alex Dadgar
36752b9ed4
Store the available nodes in the alloc metric
2016-01-04 12:07:33 -08:00
Alex Dadgar
d6aa36b417
Merge pull request #618 from hashicorp/f-node-class-constraint
...
Add node class to constraints
2015-12-28 13:27:38 -08:00
Alex Dadgar
0b29c2046d
Test ebug log
2015-12-23 19:44:42 -08:00
Alex Dadgar
5e71751a1d
Add node class to constraints
2015-12-21 17:15:34 -08:00
Alex Dadgar
92823b71a8
merge
2015-12-16 15:01:15 -08:00
Alex Dadgar
2218a79815
Add garbage collection to jobs
2015-12-16 15:00:45 -08:00
Diptanu Choudhury
0cc1275782
Added a test to make sure services no longer present are being removed
2015-12-15 10:43:56 -08:00
Diptanu Choudhury
ba5561cae0
Making sure existing ids for services are not re-generated
2015-12-15 09:14:32 -08:00
Diptanu Choudhury
7a8acd32e4
Populating service ids only if allocations can be placed for system jobs
2015-12-15 08:38:18 -08:00
Diptanu Choudhury
ddaf74fb65
Added a test to prove services are removed from the map in Alloc if they are removed from the Tasks
2015-12-15 08:35:26 -08:00
Diptanu Choudhury
b7f556fabc
Changed some comments
2015-12-14 18:05:58 -08:00
Diptanu Choudhury
1c76715358
Re-initializing the service map for in place updates
2015-12-14 17:06:58 -08:00
Diptanu Choudhury
2eb03e1d23
Renamed serviceId to serviceID
2015-12-14 15:57:56 -08:00
Diptanu Choudhury
76486d71e2
Making the allocs hold service ids
2015-12-14 15:08:35 -08:00
Chris Hines
5f0c30b926
Skip unreliable time measurement assertions on Windows.
2015-12-09 14:55:57 -05:00
Alex Dadgar
9801db55b3
Remove unnecessary copy
2015-11-23 16:36:12 -08:00
Alex Dadgar
9b99eeeec4
Remove shared reference to network resources across allocs
2015-11-23 16:32:30 -08:00
Chris Bednarski
9f40143684
Merge branch 'master' into f-port-labels
2015-11-16 16:02:38 -08:00
Alex Dadgar
bdf7497f1b
Initialize task state in allocation sent by scheduler
2015-11-16 15:14:21 -08:00
Diptanu Choudhury
babc68adfb
Fixing the scheduler tests
2015-11-16 13:10:57 -08:00
Alex Dadgar
3cdbfc010f
Remove weight and hard/soft fields from constraint
2015-10-27 14:31:14 -07:00
Alex Dadgar
c7f904ff31
Merge pull request #321 from hashicorp/f-unique-constraint
...
Add "distinctHost" constraint
2015-10-26 14:18:57 -07:00
Alex Dadgar
1784387e1d
Rename Dynamic -> ProposedAllocConstraintIterator
2015-10-26 14:12:54 -07:00
Alex Dadgar
a9135b92b2
Cleanup DynamicConstraintIterator
2015-10-26 14:01:32 -07:00
Alex Dadgar
fd9c2baf02
Constants for constraints and renaming to use undescore instead of camel
2015-10-26 13:47:56 -07:00
Alex Dadgar
2b2b6c321a
Check for environment variable updates for tasks
2015-10-23 14:52:06 -07:00
Alex Dadgar
be50fe6254
Fix markdown and log messages
2015-10-23 09:56:48 -07:00
Alex Dadgar
ecc4f98f3a
Change "unique" to "distinctHosts"
2015-10-22 17:40:41 -07:00
Alex Dadgar
861a65288c
Fix test and simplify some boolean logic/fix metrics counting
2015-10-22 16:45:03 -07:00
Alex Dadgar
783b0b5aee
Add dynamic constraint to generic_scheduler
2015-10-22 15:09:03 -07:00
Alex Dadgar
910dcc49fb
DynamicConstraintIterator that implements the unique constraint
2015-10-22 14:31:12 -07:00
Gregory Man
400363079c
Make go vet happy
2015-10-21 15:47:36 +03:00
Alex Dadgar
d9b78ffdfe
Remove base nodes from stack constructors
2015-10-16 17:05:23 -07:00
Alex Dadgar
1a1febba4f
Unit tests for the refactor scheduler methods
2015-10-16 16:35:55 -07:00
Alex Dadgar
1ec921a3c2
Refactor task group constraint logic in generic/system stack
2015-10-16 14:00:51 -07:00
Alex Dadgar
ab9acb9edf
diffResult stores values not pointers
2015-10-16 11:43:09 -07:00
Alex Dadgar
406e135ce8
Add negative test to DriverIterator, increase system scheduler attempts, and fix evictAndPlace status message
2015-10-16 11:36:26 -07:00
Alex Dadgar
70c39bd5a4
Add diffSystemAlloc which gives richer information which node to place a system allocation
2015-10-15 13:14:44 -07:00
Alex Dadgar
65fd28d7d1
Refactor shared code between schedulers
2015-10-14 18:39:44 -07:00
Alex Dadgar
692efe513d
Use valid driver values in test
2015-10-14 18:39:44 -07:00
Alex Dadgar
494244ed06
System scheduler and system stack
2015-10-14 18:39:44 -07:00
Armon Dadgar
931a113cb5
scheduler: adding regexp and version constraint cache
2015-10-12 20:15:07 -07:00
Armon Dadgar
81c08ba66e
scheduler: support lexical ordering constraints
2015-10-11 15:57:06 -04:00
Armon Dadgar
751fa61b3e
scheduler: adding regexp constraints
2015-10-11 15:35:13 -04:00
Armon Dadgar
86ca7c59a1
scheduler: adding version constraint logic
2015-10-11 15:12:39 -04:00
Ivo Verberk
c6e1b13b51
Fix vet warnings
2015-10-07 12:26:58 +02:00
Armon Dadgar
32f4e9e401
scheduler: tasks updated should only check if number of dynamic ports is different
2015-10-04 15:53:02 -04:00
Armon Dadgar
b213462cb4
Change CPU from float64 to int
2015-09-23 11:14:32 -07:00
Armon Dadgar
d442a49fde
scheduler: job anti-affinity score should record as negative
2015-09-22 22:24:07 -07:00
Armon Dadgar
90a82da0fd
scheduler: do not skip job anti-affinity
2015-09-22 22:20:07 -07:00
Armon Dadgar
a23c8bf713
scheduler: Allow rolling update, assign eval first.Fixes #91
2015-09-22 21:45:25 -07:00
Chris Bednarski
168c959497
Added named ports
2015-09-22 13:59:16 -07:00
Armon Dadgar
ee2fd15cc2
scheduler: ignore allocations in terminal state
2015-09-17 21:25:55 -07:00
Armon Dadgar
38471c81a0
scheduler: pass failure reason to ExhaustedNode
2015-09-13 18:38:26 -07:00
Armon Dadgar
cece4473b8
scheduler: in-place update should preserve network offer
2015-09-13 17:06:34 -07:00
Armon Dadgar
fcd367e657
scheduler: track dimension of exhaustion
2015-09-13 16:48:01 -07:00
Armon Dadgar
f71527dadf
schedule: avoid in-place update of task if network resources are different
2015-09-13 16:41:53 -07:00
Armon Dadgar
cf0a546fdc
scheduler: expose reason network offer failed
2015-09-13 16:41:32 -07:00
Armon Dadgar
c6f5a8e029
scheduler: thread through the TaskResources
2015-09-13 15:20:50 -07:00
Armon Dadgar
cb3aa5d4db
nomad: update for new AllocsFit API
2015-09-13 14:57:58 -07:00
Armon Dadgar
aed6bd8a41
scheduler: use the new network index
2015-09-13 14:37:09 -07:00
Armon Dadgar
e901b0a1ca
nomad: moving network index
2015-09-13 14:35:28 -07:00
Armon Dadgar
625308661a
scheduler: binpacker makes network offers
2015-09-13 14:31:32 -07:00
Armon Dadgar
b0eb463823
scheduler: expose AddReserved, add test
2015-09-13 14:31:01 -07:00
Armon Dadgar
5c8f1c0fa5
scheduler: adding helper library for network assignments
2015-09-12 19:34:46 -07:00
Armon Dadgar
0e38f0e914
scheduler: refactor shared logic
2015-09-12 14:44:40 -07:00
Armon Dadgar
4333b7370b
scheduler: recompute scan limit on SetNodes
2015-09-11 12:03:41 -07:00
Armon Dadgar
e804567324
scheduler: Adding SetLimit to LimitIterator
2015-09-11 12:01:22 -07:00
Armon Dadgar
ea0795995d
Use a single implementation of GenerateUUID
2015-09-07 15:23:03 -07:00
Armon Dadgar
b0ef497f92
scheduler: use update strategy for rolling updates
2015-09-07 15:17:39 -07:00
Armon Dadgar
e7c0bb5e1e
scheduler: Adding CreateEval to Planner
2015-09-07 14:26:29 -07:00
Armon Dadgar
c8bcb292a0
scheduler: support in-place allocation updates
2015-09-07 12:27:12 -07:00
Armon Dadgar
c2eff48412
scheduler: util method to diff task groups
2015-09-07 12:25:23 -07:00
Armon Dadgar
f8ee848fee
scheduler: share context and stack
2015-09-07 11:34:59 -07:00
Armon Dadgar
4a348cc0da
scheduler: allow updating the base nodes
2015-09-07 11:30:13 -07:00
Armon Dadgar
5b45705165
scheduler: allow StaticIterator to update base set
2015-09-07 11:26:16 -07:00
Armon Dadgar
f1a93b0aa7
scheduler: pull node shuffle into util
2015-09-07 11:23:38 -07:00
Armon Dadgar
8bedd3769c
nomad: unifying the state store API
2015-09-06 20:56:38 -07:00
Armon Dadgar
1a5579384a
nomad: cleanup API descrepencies
2015-09-06 20:47:42 -07:00
Armon Dadgar
5832b2f147
nomad: adding drain as node property
2015-09-06 19:47:02 -07:00
Chris Bednarski
96cb220ff4
Update references to "os" to use "kernel.name"
...
This brings test code and mocks up to date with the fingerprinter. This was a slightly larger change than I anticipated, but I think it's good for two reasons:
1. More semanitcally correct. `os.name` is something like "Windows 10 Pro" or "Ubuntu", while `kernel.name` is "windows" or "linux". `os.version` and `kernel.version` match these semantics.
2. `kernel.name` is much easier to grep for than `os`, which is helpful because oracle can't help us with strings.
2015-08-28 01:30:47 -07:00
Armon Dadgar
2ee6947844
scheduler: updating for new APIs
2015-08-25 17:06:06 -07:00
Armon Dadgar
b77e4ff343
scheduler: update tests to filter terminal allocs
2015-08-23 16:30:57 -07:00
Armon Dadgar
f04e2b81ba
nomad: adding evicted state for allocs
2015-08-22 18:30:49 -07:00
Armon Dadgar
383a6aa76d
scheduler: adding job anti-affinity to the generic stack
2015-08-16 10:37:11 -07:00
Armon Dadgar
6d60c4c623
scheduler: adding JobAntiAffinityIterator
2015-08-16 10:32:25 -07:00
Armon Dadgar
f4e9ef8d1e
scheduler: move proposed alloc logic to Context
2015-08-16 10:28:58 -07:00
Armon Dadgar
0dff5a77a2
scheduler: coalesce failures by task group
2015-08-16 10:03:21 -07:00
Armon Dadgar
107da3a174
scheduler: track sub-scores
2015-08-16 09:57:30 -07:00
Armon Dadgar
1fd148d97d
nomad: fixing vet errors
2015-08-15 16:10:10 -07:00
Armon Dadgar
088cc37487
scheduler: update status and test retry limit
2015-08-15 14:47:13 -07:00
Armon Dadgar
cae67b7f60
nomad: expose UpdateEval as a planner
2015-08-15 14:25:00 -07:00
Armon Dadgar
9fd8049e16
scheduler: create allocs for failed placements
2015-08-15 13:40:13 -07:00
Armon Dadgar
da90c453ce
nomad: adding index on EvalID and Status to alloc
2015-08-15 13:27:42 -07:00
Armon Dadgar
3f16a21658
nomad: remove NodesByDatacenterStatus
2015-08-15 13:11:42 -07:00
Armon Dadgar
6738e9fe08
nomad: associate alloc with eval
2015-08-15 13:08:06 -07:00
Armon Dadgar
0b1d096f87
scheduler: adding minor specialization for batch
2015-08-13 22:35:48 -07:00
Armon Dadgar
ddfe28e694
scheduler: ServiceScheduler is now GenericScheduler with service and batch modes
2015-08-13 22:28:37 -07:00