Commit Graph

55 Commits

Author SHA1 Message Date
Ingo Oppermann
0b1601542d Wait for follower and leader loops to finish 2024-08-19 15:22:24 +02:00
Ingo Oppermann
e12fb0be52 Fix cluster shutdown, limit parallel opstack worker 2024-07-17 16:48:33 +02:00
Ingo Oppermann
7e90bb87ce Allow to import report history for a process 2024-07-10 16:46:49 +02:00
Ingo Oppermann
480dbb7f53 Refactor cluster node code 2024-07-09 12:26:02 +02:00
Ingo Oppermann
28603aab98 Incorporate process throttling into deploy decision, fix bug in rebalance, parallelize opstack 2024-06-26 17:03:42 +02:00
Ingo Oppermann
c032cdf5c7 Add API for setting node status, respect it in leader tasks 2024-06-24 16:50:15 +02:00
Ingo Oppermann
a9d6b1ec49 Add API endpoints for relocating processes 2024-06-19 15:28:30 +02:00
Ingo Oppermann
de6a267fd4 Add operations to relocate processes 2024-06-18 16:50:59 +02:00
Ingo Oppermann
03da97217b Use faster JSON and gzip packages 2024-04-24 15:42:11 +02:00
Ingo Oppermann
487529c598 Expose general infos in cluster about, bump cluster API version to 2.0.0 2024-04-08 21:55:07 +02:00
Ingo Oppermann
fde99733c6 Add term number to cluster leader synchronization and rebalance logs 2023-09-04 15:06:25 +02:00
Ingo Oppermann
ce362e76bb Fix occasional process rebalance if node resources are not reliable 2023-09-04 12:16:02 +02:00
Ingo Oppermann
bc76b4615d Fix redeploying process when locally deleted 2023-07-23 20:33:18 +02:00
Ingo Oppermann
910c727585 Fix updating reference affinity map 2023-07-20 11:35:16 +02:00
Ingo Oppermann
1f24ea1b00 Check for correct error 2023-07-19 17:18:58 +02:00
Ingo Oppermann
8123b09dcf Fix providing correct last_contact value for node 2023-07-17 20:55:29 +02:00
Ingo Oppermann
bc04bb2df8 Simplify rebalancing 2023-07-17 15:10:47 +02:00
Ingo Oppermann
02079e30c5 Fix checking for nil-value 2023-07-17 12:48:17 +02:00
Ingo Oppermann
fd7354286e Extract functions, draft strategy for starting a process 2023-07-12 21:02:46 +02:00
Ingo Oppermann
c0c118340b Fix updating the process-node map 2023-07-12 12:22:37 +02:00
Ingo Oppermann
69ffec6b6a Fix writing empty error message 2023-07-11 22:37:40 +02:00
Ingo Oppermann
3883696034 Write deploy errors to cluster DB 2023-07-11 15:55:46 +02:00
Ingo Oppermann
0f06b8b5a0 Add /cluster/transfer/:id endpoint to transfer leadership to another node 2023-07-11 14:26:54 +02:00
Ingo Oppermann
d04254c891 Add /cluster/db/map/process endpoint 2023-07-11 10:57:56 +02:00
Ingo Oppermann
e49de44eb7 Deploy processes with order stop to nodes 2023-07-05 09:55:11 +02:00
Ingo Oppermann
c4d9d8afcb Make emergency leadership only available in a cluster with two nodes 2023-06-30 16:59:11 +02:00
Ingo Oppermann
2b58c11bb1 Fix cluster process update on metadata change 2023-06-28 16:26:36 +02:00
Ingo Oppermann
944d487730 Allow to send command to process on the cluster 2023-06-22 21:43:51 +02:00
Ingo Oppermann
db00144cab Clear locks only if not in emergency mode 2023-06-22 15:12:44 +02:00
Ingo Oppermann
a4d59a04b5 Add leader task to clear the expired locks 2023-06-22 14:12:02 +02:00
Ingo Oppermann
b35ac9ccc3 Allow proxied range requests, /cluster/process mimic /process 2023-06-21 13:14:27 +02:00
Ingo Oppermann
a728cc7839 Fix clusterNode/proxyNode 2023-06-14 22:05:59 +02:00
Ingo Oppermann
ccf4bee56d WIP: cluster node revamp, add version and config comparison 2023-06-13 10:25:08 +02:00
Ingo Oppermann
82ba3a8f82 WIP: introducing cluster versioning, degraded mode 2023-06-09 21:42:26 +02:00
Ingo Oppermann
108b9baaa4 Adjusting naming of functions 2023-06-08 14:48:28 +02:00
Ingo Oppermann
a03ce87ec7 Add tests 2023-06-08 13:21:14 +02:00
Ingo Oppermann
7e7d1caca7 Add EmergencyLeaderTimeout parameter, ignore throttling nodes, implement NodeRecoverTimeout, introduce processNodeMap in cluster DB 2023-06-07 22:08:07 +02:00
Ingo Oppermann
bd75a5ad0f Add SyncInterval and NodeRecoverTimeout to cluster config 2023-06-07 10:18:23 +02:00
Ingo Oppermann
8829b8fff0 Respect domain in cluster DB, allow metadata in process config for cluster 2023-06-05 21:19:11 +02:00
Ingo Oppermann
e532531eeb Allow to set process metadata in the cluster 2023-06-02 14:17:35 +02:00
Ingo Oppermann
a79cfa0c77 Merge branch 'clusteriam' into vod 2023-06-01 15:16:54 +02:00
Ingo Oppermann
89cc42c4b9 Add cluster IAM, update dependencies 2023-05-30 21:24:12 +02:00
Ingo Oppermann
7d2b7b4836 WIP: allow update processes in cluster 2023-05-12 12:59:01 +02:00
Ingo Oppermann
f3e410f4f5 Change resources to absolute values 2023-05-11 21:58:55 +02:00
Ingo Oppermann
e4ca661b25 Fix logging 2023-05-11 16:12:41 +02:00
Ingo Oppermann
f566dee9f2 Abstract raft into own package 2023-05-11 12:09:04 +02:00
Ingo Oppermann
d214607ff8 Move code into packages 2023-05-10 20:41:04 +02:00
Ingo Oppermann
862c36c9e6 Use reference affinity when distributing processes 2023-05-10 19:59:15 +02:00
Ingo Oppermann
7a2d0a7ad9 Use reference affinity while rebalancing processes 2023-05-10 15:45:08 +02:00
Ingo Oppermann
5af5c686ee Add basic rebalancing of processes 2023-05-10 14:01:40 +02:00