156 Commits

Author SHA1 Message Date
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
ca177becfa
Fix tests 2024-06-24 17:37:04 +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
166e313642
Fix tests 2024-06-19 15:38:42 +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
f5d9725a48
Return proper HTTP status on leave 2024-06-12 15:08:07 +02:00
Ingo Oppermann
1a64fddbb1
Allow cluster leave endpoint to remove any node in the cluster 2024-06-07 11:28:54 +02:00
Ingo Oppermann
03da97217b
Use faster JSON and gzip packages 2024-04-24 15:42:11 +02:00
Ingo Oppermann
423e0453de
Remove NodeID from ClusterAbout 2024-04-10 16:58:34 +02:00
Ingo Oppermann
4bc08d2b1e
Lift some message from the cluster to info 2024-04-10 10:39:34 +02:00
Ingo Oppermann
7a4875f818
Promote core version in cluster about 2024-04-09 15:57:17 +02:00
Ingo Oppermann
3b11c84545
Remove /v1/about cluster API endpoint 2024-04-09 15:56:40 +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
727c358921
Add filesystem access via cluster node 2024-03-13 15:11:20 +01:00
Ingo Oppermann
2c47ab77d2
Add missing implementation for GET /api/v3/cluster/fs/{storage} 2023-11-27 12:51:14 +01:00
Ingo Oppermann
8d63cafda0
Ignore self if in list of peers 2023-11-15 10:11:07 +01:00
Ingo Oppermann
48cc454314
Add expose 'mode' from avstream progress 2023-09-20 20:53:50 +02:00
Ingo Oppermann
a7cd4f4e50
Convert old resource format to types and resource 2023-09-18 21:12:04 +02:00
Ingo Oppermann
ad2a50df6f
Separate resource type and resource for IAM policies 2023-09-18 17:11:09 +02:00
Ingo Oppermann
92f2f6de8c
Add CreatedAt and UpdatedAt field to IAM user 2023-09-18 15:18:21 +02:00
Ingo Oppermann
8361e5fd3d
Use more precise wording 2023-09-11 14:54:37 +02:00
Ingo Oppermann
022c5c1a6d
Emit warnings 2023-09-11 14:42:46 +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
d19010944d
Add POST /cluster/process/probe endpoint 2023-08-09 14:10:16 +03:00
Ingo Oppermann
0b718b8b18
Add IAM identity alias to API 2023-08-03 17:28:02 +03:00
Ingo Oppermann
8be031a3d1
Use RLock instead of Lock 2023-07-26 11:34:29 +02:00
Ingo Oppermann
80feb0b565
Use RLock instead of Lock 2023-07-26 11:28:22 +02:00
Ingo Oppermann
d74165a90a
Add node resource error, replace ping with about 2023-07-25 17:17:20 +02:00
Ingo Oppermann
bb5b580561
Don't use a map for the process list 2023-07-24 10:32:51 +02:00
Ingo Oppermann
bc76b4615d
Fix redeploying process when locally deleted 2023-07-23 20:33:18 +02:00
Ingo Oppermann
6789dbb783
Fix potential nil dereference 2023-07-23 16:15:01 +02:00
Ingo Oppermann
2844d2d7a2
Split Lock type into its own file 2023-07-21 15:38:43 +02:00
Ingo Oppermann
ff2b7fe054
Add cache for file to node relation in cluster proxy 2023-07-20 20:51:20 +02:00
Ingo Oppermann
e6391b0b7b
Replace polling with asking other nodes for files in proxy
Polling has the drawback, that it's usually delayed and can lead to
404 responses even though the files would be available on another
node. With asking, this problem doesn't exist but it may lead to
more internal requests and a bit higher latency.
2023-07-20 15:17:03 +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
34db225eb0
Return map of nodes 2023-07-17 15:39:03 +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
cefd35f7da
Refactor cluster.About() data 2023-07-14 11:22:08 +02:00
Ingo Oppermann
fd7354286e
Extract functions, draft strategy for starting a process 2023-07-12 21:02:46 +02:00
Ingo Oppermann
fe715adbce
Split cluster handler into smaller files 2023-07-12 14:18:01 +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