Commit graph

323 commits

Author SHA1 Message Date
Armon Dadgar a30295cef0 nomad: splitting alloc desired and client status 2015-08-25 16:18:37 -07:00
Armon Dadgar 7e644b7cc9 nomad: use fast and slow exponential backoff in worker 2015-08-23 17:39:49 -07:00
Armon Dadgar 8e32075210 client: making progress 2015-08-23 16:49:48 -07:00
Armon Dadgar b77e4ff343 scheduler: update tests to filter terminal allocs 2015-08-23 16:30:57 -07:00
Armon Dadgar b632173b81 nomad: default number of schedulers to number of cores 2015-08-23 13:59:26 -07:00
Armon Dadgar dd55475198 nomad: disable one worker when leader 2015-08-23 13:59:13 -07:00
Armon Dadgar d4e2faf216 nomad: track the workers in the pool 2015-08-23 10:53:53 -07:00
Armon Dadgar 8c2bc337e6 nomad: adding ability to pause a worker 2015-08-23 10:52:31 -07:00
Armon Dadgar c72e6cdb78 nomad: plan apply handles update of existing allocation 2015-08-22 19:37:21 -07:00
Armon Dadgar 5668c971be nomad: add client.GetAllocs with blocking query support 2015-08-22 19:17:49 -07:00
Armon Dadgar c362ca0ffd nomad/state: adding watching mechanisms 2015-08-22 18:57:15 -07:00
Armon Dadgar f04e2b81ba nomad: adding evicted state for allocs 2015-08-22 18:30:49 -07:00
Armon Dadgar 5b2dc385ec nomad: adding evict state for allocs 2015-08-22 18:27:51 -07:00
Armon Dadgar 6c8791ccf8 nomad: client does periodic heartbeat 2015-08-22 18:16:05 -07:00
Armon Dadgar 4e61f6db47 nomad: Client.UpdateStatus used for heartbeats 2015-08-22 17:49:48 -07:00
Armon Dadgar 678addc990 nomad: testing heartbeat resets 2015-08-22 17:37:50 -07:00
Armon Dadgar 3d48ff4c6f nomad: no heartbeat for nodes in terminal status 2015-08-22 17:17:13 -07:00
Armon Dadgar e489ee8ebd nomad: add rate based scaling util methods 2015-08-22 17:12:24 -07:00
Armon Dadgar 8ca758ba05 nomad: remove the client implementation 2015-08-20 16:13:43 -07:00
Armon Dadgar 40def1a187 nomad: expose RuntimeStats 2015-08-20 15:29:30 -07:00
Armon Dadgar d71aae8722 nomad: remove magic bytes 2015-08-20 15:07:22 -07:00
Armon Dadgar 3847133ca6 nomad: test client RPC forwarding 2015-08-16 17:51:29 -07:00
Armon Dadgar af891a50f5 nomad: adding simple client 2015-08-16 17:44:18 -07:00
Armon Dadgar 5973fd192c nomad: improve test reliability 2015-08-16 17:43:30 -07:00
Armon Dadgar c1d8ab0983 nomad: rename client endpoint struct 2015-08-16 17:40:35 -07:00
Armon Dadgar 1e36821bfd changing default ports 2015-08-16 15:10:11 -07:00
Armon Dadgar c1aa76cc3b nomad: reap failed evaluations 2015-08-16 11:10:18 -07:00
Armon Dadgar 79a1471b85 nomad: add delivery limit to eval broker 2015-08-16 10:55:55 -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 2c8d404e15 nomad: adding endpoint to force node re-evaluate 2015-08-15 18:20:35 -07:00
Armon Dadgar 0c07e8ef11 nomad: endpoint to force re-evaluation of job 2015-08-15 18:11:26 -07:00
Armon Dadgar df8e992172 nomad: document some potential races 2015-08-15 18:03:05 -07:00
Armon Dadgar 2ad0189b88 nomad: Integrate Eval GC with FSM time table 2015-08-15 17:42:51 -07:00
Armon Dadgar 3b97632a99 nomad: integrate time table with FSM 2015-08-15 17:38:13 -07:00
Armon Dadgar 114f2aaba7 nomad: test overflow 2015-08-15 17:18:19 -07:00
Armon Dadgar bda6a7584f nomad: adding timetable to track time to raft index 2015-08-15 17:13:24 -07:00
Armon Dadgar 4a52c2a357 nomad: log error 2015-08-15 16:08:12 -07:00
Armon Dadgar 08df32732f nomad: core scheduler will GC evaluations and allocations 2015-08-15 16:07:50 -07:00
Armon Dadgar 499a7456f9 nomad: updating structs 2015-08-15 16:07:22 -07:00
Armon Dadgar 5b718cea0d nomad: Adding Eval.Reap 2015-08-15 15:42:44 -07:00
Armon Dadgar a80249204f nomad: DeleteEval request can take a list of evals and allocations 2015-08-15 15:39:29 -07:00
Armon Dadgar b75cc4b9fb nomad: periodic dispatch of eval GC 2015-08-15 15:15:00 -07:00
Armon Dadgar cae67b7f60 nomad: expose UpdateEval as a planner 2015-08-15 14:25:00 -07:00
Armon Dadgar dd82bdb059 nomad: rename to EvalToken 2015-08-15 14:22:21 -07:00
Armon Dadgar 39c82cd1bd nomad: adding eval update functionality 2015-08-15 14:16:40 -07:00
Armon Dadgar 9fd8049e16 scheduler: create allocs for failed placements 2015-08-15 13:40:13 -07:00
Armon Dadgar cabefa46bf nomad: thread through failed allocations 2015-08-15 13:33:20 -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 aadecdd805 nomad: adding version API endpoint 2015-08-15 12:59:10 -07:00
Armon Dadgar 8dfcb99e7f nomad: rename SystemScheduler to CoreScheduler 2015-08-15 12:38:58 -07:00
Armon Dadgar 431f0278ac nomad: backport Consul pool fix 2015-08-15 12:35:18 -07:00
Armon Dadgar dcf4952974 nomad: remove unused field 2015-08-13 22:21:41 -07:00
Armon Dadgar 6f62ceb2ae scheduler: test job registration 2015-08-13 22:07:01 -07:00
Armon Dadgar b290aac24f scheduler: testing service stack 2015-08-13 21:55:37 -07:00
Armon Dadgar 64bab68680 scheduler: basic metrics integration 2015-08-13 21:46:33 -07:00
Armon Dadgar 89eef4ed6a scheduler: simplifying 2015-08-13 18:16:32 -07:00
Armon Dadgar b2ad51c791 scheduler: major refactor 2015-08-13 17:11:20 -07:00
Armon Dadgar 194723e7bf nomad: rename util method 2015-08-13 16:40:51 -07:00
Armon Dadgar eafa8ccd21 scheduler: simplify eviction logic 2015-08-13 16:29:28 -07:00
Armon Dadgar 6977133bc9 scheduler: testing utility methods 2015-08-13 16:25:59 -07:00
Armon Dadgar fcd6ccbd53 scheduler: working on plan submission 2015-08-13 15:17:24 -07:00
Armon Dadgar 33f4e3f0dc nomad: tweak structs 2015-08-13 14:02:39 -07:00
Armon Dadgar a077605114 nomad: adding NodesByDatacenterStatus 2015-08-13 13:17:03 -07:00
Armon Dadgar df21ab3d10 scheduler: working on bin pack 2015-08-13 11:54:59 -07:00
Armon Dadgar f7007bfeb5 nomad: avoid split-brain in plan processing due to leader transition or eval retry 2015-08-12 15:44:36 -07:00
Armon Dadgar 183a238481 nomad: avoid split-brain eval handling after leader transition 2015-08-12 15:25:31 -07:00
Armon Dadgar 00b0740914 nomad: adding name to allocation 2015-08-11 16:34:06 -07:00
Armon Dadgar 343b1b9c89 nomad: move state and mocks into shared packages 2015-08-11 14:27:14 -07:00
Armon Dadgar b320eed46b nomad: planner can fast-path evict-only plans 2015-08-07 09:37:45 -07:00
Armon Dadgar c09da9fa51 nomad: measure invoke time per scheduler 2015-08-06 17:45:27 -07:00
Armon Dadgar b908a76d29 nomad: Adding AllocsByJob 2015-08-06 17:36:10 -07:00
Armon Dadgar 09a8c15d7e scheduler: adding service scheduler definition 2015-08-06 17:25:14 -07:00
Armon Dadgar 8c2f8cddd0 nomad: create system scheduler as needed 2015-08-06 17:08:40 -07:00
Armon Dadgar 5f1ebb9274 nomad: adding special 'system' scheduler 2015-08-06 17:04:35 -07:00
Armon Dadgar 8a4af54f0b nomad: fixing tset for new api 2015-08-06 17:02:37 -07:00
Armon Dadgar 98dc6e13fd nomad: client updates generate evaluaitons 2015-08-06 16:39:20 -07:00
Armon Dadgar a2feb20903 nomad: UpsertEvals can take a list of Evals 2015-08-06 14:51:15 -07:00
Armon Dadgar 3002698393 nomad: job deregister creates an evaluation 2015-08-06 14:17:18 -07:00
Armon Dadgar 41a4a21caf nomad: job create/update creates evaluation 2015-08-06 11:48:44 -07:00
Armon Dadgar b5100eeefb nomad: FSM enqueues evaluations 2015-08-06 11:32:42 -07:00
Armon Dadgar 9398dc997b nomad: share enqueue logic 2015-08-06 11:28:55 -07:00
Armon Dadgar a8a01f8828 nomad: remove eval broker from state store 2015-08-06 11:09:59 -07:00
Armon Dadgar 011484ea74 nomad: eval broker serializes by JobID 2015-08-05 17:55:15 -07:00
Armon Dadgar 078d80432a nomad: deduplicate enqueue of evaluations 2015-08-05 17:06:02 -07:00
Armon Dadgar c246349c63 nomad: restore eval broker on leader transition 2015-08-05 16:53:54 -07:00
Armon Dadgar fe14b62605 nomad: increase test reliability 2015-08-05 16:46:07 -07:00
Armon Dadgar 7cdcc45c64 nomad: cleanup stats goroutines 2015-08-05 16:45:50 -07:00
Armon Dadgar 2f05a260bb nomad: add checking if eval broker enabled 2015-08-05 16:41:39 -07:00
Armon Dadgar 67b891b85c nomad: test leader enables plan queue 2015-08-05 16:32:46 -07:00
Armon Dadgar 2f84e37cd0 nomad: allow testing if plan queue enabled 2015-08-05 16:30:57 -07:00
Armon Dadgar 4b35992d06 nomad: test worker plan submission 2015-08-05 16:23:47 -07:00
Armon Dadgar db78ce9a02 nomad: make worker more resilient to transient errors 2015-08-05 16:23:37 -07:00
Armon Dadgar 8da3a6b062 nomad: use correct nodes index 2015-08-05 16:23:17 -07:00
Armon Dadgar 03973a273b nomad: test AllocsByNode 2015-08-04 18:32:50 -07:00
Armon Dadgar 3aba600230 nomad: testing plan evaluation 2015-08-04 18:30:05 -07:00
Armon Dadgar 2382993b78 nomad: testing apply plan 2015-08-04 18:18:44 -07:00
Armon Dadgar d758d459f7 nomad: test evaluation of node plan 2015-08-04 18:10:57 -07:00
Armon Dadgar f733ba0efa nomad: share alloc fitting test 2015-08-04 17:48:24 -07:00
Armon Dadgar 1701275936 nomad: share resource adding 2015-08-04 17:41:02 -07:00
Armon Dadgar f23e0db780 nomad: share and test superset 2015-08-04 17:32:57 -07:00
Armon Dadgar b140ba5f51 nomad: share port overcommit check 2015-08-04 17:28:19 -07:00
Armon Dadgar 0c3bab297c nomad: testing 2015-08-04 17:23:42 -07:00
Armon Dadgar edb2820182 nomad: move and test function 2015-08-04 17:19:05 -07:00
Armon Dadgar 8913a42674 nomad: move and test max function 2015-08-04 17:13:40 -07:00
Armon Dadgar 6025b22952 nomad: check for err in test 2015-08-04 17:13:32 -07:00
Armon Dadgar df6ab9898b nomad: fixing tests 2015-08-04 17:11:20 -07:00
Armon Dadgar 549e9c1a7f nomad: add some profiling 2015-08-04 16:35:49 -07:00
Armon Dadgar 0c8b50ea45 nomad: first pass at plan eval and apply 2015-08-04 16:32:46 -07:00
Armon Dadgar 44b391bf8b nomad: adding the FSM CRUD 2015-08-04 14:04:33 -07:00
Armon Dadgar 6adf1d2af0 nomad: adding the FSM CRUD 2015-08-04 14:04:26 -07:00
Armon Dadgar e322534550 nomad: state store CRUD for allocations 2015-08-04 13:56:41 -07:00
Armon Dadgar 1034eec8b3 structs: working on plan and plan result 2015-07-28 17:49:45 -07:00
Armon Dadgar 1a3afe3425 nomad: use plan enqueue time instead of eval create index 2015-07-28 17:49:27 -07:00
Armon Dadgar 3938231a9e nomad: more worker testing 2015-07-28 17:20:06 -07:00
Armon Dadgar 8e66fdfdab nomad: test waitForIndex 2015-07-28 17:11:00 -07:00
Armon Dadgar 0cfb67e918 nomad: testing worker acking 2015-07-28 17:05:59 -07:00
Armon Dadgar c65b2c472b nomad: testing worker dequeue 2015-07-28 17:02:54 -07:00
Armon Dadgar 9e6c0c9c3a nomad: guard against plan during shutdown 2015-07-28 16:52:13 -07:00
Armon Dadgar 2b4501bee8 nomad: improving worker, submit plans 2015-07-28 16:36:15 -07:00
Armon Dadgar 59d45bba4f nomad: enable all builtin schedulers by default 2015-07-28 16:19:52 -07:00
Armon Dadgar d7e9927661 nomad: integrating worker and scheduler 2015-07-28 16:15:32 -07:00
Armon Dadgar 8bed5f724f nomad: test placeholders 2015-07-28 15:15:42 -07:00
Armon Dadgar 3c2a16038b nomad: first pass adding scheduling workers 2015-07-28 15:12:08 -07:00
Armon Dadgar 8f2b878ea8 nomad: fix Eval.Dequeue forwarding 2015-07-28 15:01:29 -07:00
Armon Dadgar 4be2c1b9db nomad: adding plan endpoint 2015-07-27 15:31:49 -07:00
Armon Dadgar adcad9a5fb nomad: fixing plan queue dequeue with no timeout 2015-07-27 15:31:39 -07:00
Armon Dadgar b0830f631d nomad: adding skeleton no-op plan evaluator 2015-07-27 15:31:09 -07:00
Armon Dadgar 743c7f32ef nomad: integrate plan queue 2015-07-27 15:11:42 -07:00
Armon Dadgar 3a4efce389 nomad: adding plan queue 2015-07-27 14:59:16 -07:00
Armon Dadgar 7f49f25de1 nomad: ensure FIFO dequeue with same priority 2015-07-23 22:58:12 -07:00
Armon Dadgar 487acdd3c7 nomad: threading eval broker through fsm and state store 2015-07-23 22:30:08 -07:00
Armon Dadgar 93b832cf59 nomad: emit metrics from the eval broker 2015-07-23 22:17:37 -07:00
Armon Dadgar e820b3ae3c nomad: adding Eval endpoints for Ack and Nack 2015-07-23 22:11:25 -07:00
Armon Dadgar 0a08c1ce49 nomad: adding Eval.Dequeue endpoint 2015-07-23 21:58:51 -07:00
Armon Dadgar 8839045d52 nomad: enable/disable eval broker based on leadership 2015-07-23 21:58:38 -07:00
Armon Dadgar 7aad418345 nomad: method to test if outstanding evaluation 2015-07-23 21:58:13 -07:00
Armon Dadgar fc11808fe9 nomad: add eval broker, configurable nack timeout 2015-07-23 21:44:17 -07:00
Armon Dadgar 5fcc39c399 nomad: testing the eval broker 2015-07-23 21:37:28 -07:00
Armon Dadgar 2a76fd34f0 nomad: first pass at eval broker 2015-07-23 17:31:08 -07:00
Armon Dadgar 890db2d2b7 nomad: adding utility shuffle 2015-07-23 17:30:07 -07:00
Armon Dadgar eff7170c77 nomad: adding RPC endpoints for fetching Eval 2015-07-23 16:00:19 -07:00
Armon Dadgar 9b921d9f92 nomad: adding FSM support for evaluations 2015-07-23 15:52:38 -07:00
Armon Dadgar a69c71b239 nomad: CRUD for evals in state store 2015-07-23 15:43:06 -07:00
Armon Dadgar 60e786100b nomad: Adding Eval model 2015-07-23 15:27:13 -07:00
Armon Dadgar d39d3585a2 nomad: reduce mixed terminology by adding ID to Job 2015-07-23 15:15:48 -07:00
Armon Dadgar 501a57f9d8 nomad: Adding the CRUD endpoints for jobs 2015-07-23 14:41:18 -07:00
Armon Dadgar bc0cea6d26 nomad: add FSM support for Jobs 2015-07-07 10:55:47 -06:00