Commit graph

307 commits

Author SHA1 Message Date
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
Armon Dadgar 1947a19885 nomad: make struct names more specific to avoid confusion 2015-07-07 10:51:42 -06:00
Armon Dadgar d0cc7918f0 nomad: CRUD for jobs in state store 2015-07-07 10:41:05 -06:00
Armon Dadgar 8ba9e09596 nomad: support FSM snap/restore of indexes table 2015-07-06 15:51:01 -06:00
Armon Dadgar 6cbda1b2b8 nomad: testing the client endpoint GetNode 2015-07-06 15:38:57 -06:00
Armon Dadgar 68c6325ae1 nomad: track the index affecting a table 2015-07-06 15:30:43 -06:00
Armon Dadgar 9151c1400f nomad: starting client GetNode 2015-07-06 15:23:15 -06:00
Armon Dadgar 7bb70b3843 nomad: adding the update status endpoint 2015-07-06 14:50:40 -06:00
Armon Dadgar bb1e7e41e8 nomad: adding client deregister endpoint 2015-07-06 14:42:33 -06:00
Armon Dadgar c897e7c69a nomad: expose the raft index on write 2015-07-06 14:34:32 -06:00
Armon Dadgar a04d125760 nomad: adding test for client register 2015-07-06 14:23:11 -06:00
Armon Dadgar 1f8d11eb49 nomad: RPC layer should check for missing region 2015-07-06 14:18:12 -06:00
Armon Dadgar f16fc93d85 nomad: testing fsm snapshot and restore 2015-07-06 14:01:10 -06:00
Armon Dadgar 410f3a0555 nomad: adding methods to snapshot and restore nodes 2015-07-04 10:16:52 -07:00
Armon Dadgar 185e3cb3c7 nomad: FSM support for node updates 2015-07-03 18:41:36 -07:00
Armon Dadgar ee611d459f nomad: adding basic node CRUD 2015-07-03 18:19:43 -07:00
Armon Dadgar 76d4e6bd14 nomad: adding indexes to structs 2015-07-03 17:50:54 -07:00
Armon Dadgar cbbe50f022 nomad: adding basic test for schema 2015-07-03 17:48:02 -07:00
Armon Dadgar 9871e84c63 nomad: fixing client endpoint 2015-07-03 17:47:55 -07:00
Armon Dadgar abef9ca0a1 nomad: adding AllocMetric to track allocation metrics 2015-07-03 17:37:01 -07:00
Armon Dadgar 2c694c7e4c nomad: working on allocation schema 2015-07-03 17:11:53 -07:00
Armon Dadgar 00df4837bb nomad: working on job struct and schema 2015-07-03 16:57:48 -07:00
Armon Dadgar bbc03b1cc1 nomad: working on the node representation 2015-07-03 16:04:24 -07:00
Armon Dadgar 4b48b2c1b6 nomad: change to use MemDB instead of raw iradix 2015-07-03 14:46:30 -07:00
Armon Dadgar caa6e7672d memdb: refactor into seperate repo 2015-06-16 16:06:32 -07:00
Armon Dadgar 7c4dce412e memdb: richer testing 2015-06-16 15:42:46 -07:00
Armon Dadgar 54400bc05a memdb: testing compound index 2015-06-16 14:58:50 -07:00
Armon Dadgar a2ef0986fe memdb: support prefix based iteration 2015-06-16 14:32:37 -07:00
Armon Dadgar ae4566a9f5 memdb: support prefix on indexes 2015-06-16 14:15:30 -07:00
Armon Dadgar 064b8c49d1 memdb: Adding UUID indexer 2015-06-16 14:02:00 -07:00
Armon Dadgar ff6945a28b memdb: implement DeleteAll 2015-06-16 12:31:45 -07:00
Armon Dadgar 91630763be memdb: adding very basic index scanning 2015-06-16 12:16:15 -07:00
Armon Dadgar dae01c9e26 memdb: directly cast, avoid unsafe 2015-06-16 12:06:30 -07:00
Armon Dadgar a3d27408a2 memdb: support object delete 2015-06-16 12:01:19 -07:00
Armon Dadgar a0c6c507ca memdb: Supporting non-unique index values 2015-06-16 11:43:32 -07:00
Armon Dadgar 5dc6b81842 memdb: support update of objects 2015-06-07 19:47:59 -05:00
Armon Dadgar fc8bdd217b memdb: insert and first working 2015-06-07 19:38:01 -05:00
Armon Dadgar d0679bbe72 memdb: initialize and more testing 2015-06-07 13:42:03 -07:00
Armon Dadgar 96eecdfa0d memdb: testin txn abort and commit 2015-06-07 13:18:50 -07:00
Armon Dadgar 03928483c7 memdb: testing writer concurrency 2015-06-07 13:15:13 -07:00
Armon Dadgar 534d4c0619 memdb: testing schema validation 2015-06-07 13:07:55 -07:00
Armon Dadgar 3a867f9661 memdb: initial skeleton 2015-06-07 13:03:24 -07:00
Armon Dadgar 5fdf3c5d33 nomad: adding Client endpoint 2015-06-07 12:14:41 -07:00
Armon Dadgar dd8f5a0bef nomad: testing RPC forwarding 2015-06-07 12:08:47 -07:00
Armon Dadgar 405c03d873 nomad: refactor test code 2015-06-07 12:03:05 -07:00
Armon Dadgar 2a1767594e nomad: adding RPC forwarding methods 2015-06-07 11:50:53 -07:00
Armon Dadgar 4f78d6a7e9 nomad: adding connection pool 2015-06-07 11:50:29 -07:00
Armon Dadgar 8ecfa93a96 nomad: track local peers 2015-06-07 11:37:59 -07:00
Armon Dadgar ac6ed01a1c nomad: track local peers 2015-06-07 11:32:01 -07:00
Armon Dadgar 477cd88a40 nomad: adding response struct 2015-06-07 11:31:48 -07:00
Armon Dadgar f895cd0147 nomad: first pass at register struct 2015-06-07 11:18:59 -07:00
Armon Dadgar ffce4f931e nomad: adding basic RPC interfaces 2015-06-06 00:41:03 +02:00
Armon Dadgar fa2ff7a324 nomad: increase serf reap to 72h 2015-06-06 00:32:28 +02:00
Armon Dadgar b646ed9015 nomad: adding raftApply RPC 2015-06-06 00:22:05 +02:00
Armon Dadgar 6b63bfa5a2 structs: adding encode and decode 2015-06-06 00:21:17 +02:00
Armon Dadgar e8964a4975 nomad: adding utility methods 2015-06-06 00:14:08 +02:00
Armon Dadgar 21fdb8f4ee nomad: adding more test cases 2015-06-06 00:11:16 +02:00
Armon Dadgar 25aad83ea4 nomad: testing leader bridging of serf 2015-06-05 23:54:45 +02:00
Armon Dadgar 3d2a237e88 nomad: adding leader logic to add/remove raft peers 2015-06-04 13:38:41 +02:00
Armon Dadgar 0bca2285a4 nomad: testing status endpoint 2015-06-04 13:26:16 +02:00
Armon Dadgar 05fa151653 nomad: adding merge guard for non-nomad servers 2015-06-04 13:15:46 +02:00
Armon Dadgar e6636262dc nomad: testing bootstrap expect 2015-06-04 13:11:35 +02:00
Armon Dadgar c18c068bf2 nomad: testing remove peer 2015-06-04 13:02:39 +02:00
Armon Dadgar b456588d1c nomad: adding reconcile channel 2015-06-04 12:42:56 +02:00
Armon Dadgar 490fa1b7db nomad: testing serf join 2015-06-04 12:33:12 +02:00
Armon Dadgar 4f6ecce727 nomad: working on serf member parsing 2015-06-03 13:35:48 +02:00
Armon Dadgar a088a302e5 nomad: expose serf methods, add leave support 2015-06-03 13:25:50 +02:00
Armon Dadgar 6ebfa2bed4 nomad: expose serf stats 2015-06-03 13:08:04 +02:00
Armon Dadgar e219bc1e71 nomad: adding Serf integration 2015-06-03 12:58:00 +02:00
Armon Dadgar d52122f041 nomad: more skeleton 2015-06-03 12:26:50 +02:00
Armon Dadgar bad4bfadc4 nomad: embed the state store to reduce duplication 2015-06-03 11:26:49 +02:00
Armon Dadgar 06d0e5f9b1 nomad: adding immutable radix, snapshot support 2015-06-03 11:21:59 +02:00
Armon Dadgar 4c554f14bb nomad: support DevMode configuration 2015-06-01 21:11:40 +02:00
Armon Dadgar 1e7f84f3e6 nomad: adding basic structure for raft 2015-06-01 17:49:10 +02:00