Ingo Oppermann
e5f0b3a57f
Add KV store in cluster DB
2023-06-22 16:20:09 +02:00
Ingo Oppermann
dc3e7afc52
Add locks on the cluster DB
2023-06-22 12:22:25 +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
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
ae84fd1d21
Create module for cluster IAM adapters
2023-06-07 10:02:35 +02:00
Ingo Oppermann
3ac7ead20d
Add the resource limits to the metrics
2023-06-06 15:20:59 +02:00
Ingo Oppermann
3adf5fd7d4
Add docs for internal cluster API at /v1/swagger/index.html
2023-06-06 13:00:16 +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
d652fd213b
Check for identical configs on process update
2023-06-01 16:43:17 +02:00
Ingo Oppermann
401156e4d2
Enforce policies
2023-05-31 16:39:43 +02:00
Ingo Oppermann
3a6bb02bfd
Fix reloading policies, add API endpoints for observing internal cluster state
2023-05-31 11:23:54 +02:00
Ingo Oppermann
89cc42c4b9
Add cluster IAM, update dependencies
2023-05-30 21:24:12 +02:00
Ingo Oppermann
1974442814
Allow to add and remove identites
2023-05-26 20:06:34 +02:00
Ingo Oppermann
56e03308c2
Add call chain to add a new user
2023-05-26 12:25:05 +02:00
Ingo Oppermann
6a4c715f75
Fix update process, list process in raft store
2023-05-13 21:21:47 +02:00
Ingo Oppermann
29242b96ca
Allow to update a process
2023-05-13 20:29:42 +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
ae04dc50c7
Add process synchronization in leader role
2023-05-09 20:48:30 +02:00
Ingo Oppermann
ab86b8fd5d
Allow to add self to nodes
2023-05-08 11:39:43 +02:00
Ingo Oppermann
b8b2990e61
Add process storage in raft
2023-05-05 17:31:57 +02:00
Ingo Oppermann
95a1306a77
Remove api address from join request
2023-05-05 09:03:45 +02:00
Ingo Oppermann
7f59c188cf
Remove node storage, use raft configuration instead; re-establish file and stream proxying
2023-05-04 19:49:53 +02:00
Ingo Oppermann
d201921a33
Allow to provide complete cluster configuration
...
Replace CORE_CLUSTER_JOIN_ADDRESS with CORE_CLUSTER_PEERS. This is
a comma separated list of cluster members with their IDs of the form
ID@host:port
On startup the node tries to connect to all the peers. In case of
sudden deaths of a node this will allow to find back into the
cluster. The list in CLUSTER_PEERS is a starting point of known
peers. Other node that are not in that list can still join the
cluster.
File and stream proxy has been moved to the Proxy type.
2023-05-03 16:13:05 +02:00
Ingo Oppermann
4eb0258ba4
Add automatic bootstrap and recovery
2023-05-02 15:49:46 +02:00
Ingo Oppermann
75c11eb475
WIP: add recover option
2023-04-24 10:54:53 +02:00
Ingo Oppermann
386bdc0b6e
WIP: add emergency leader, api circuit breaker
2023-04-21 17:19:21 +02:00
Ingo Oppermann
27f19f9188
WIP: internal API
2023-04-17 14:01:20 +02:00
Ingo Oppermann
7643959bf8
WIP: raft leadership
2023-04-13 21:44:24 +02:00
Ingo Oppermann
e6b64dbe97
WIP: raft
2023-04-13 09:42:19 +02:00
Ingo Oppermann
9ef4ae9b5e
Fix cluster api responses
2022-09-28 21:49:25 +02:00
Ingo Oppermann
8312718f9c
Prevent adding a node to itself
2022-08-16 18:04:22 +03:00
Ingo Oppermann
16ada6225b
Fetch resources list in parallel
2022-08-16 16:09:46 +03:00
Ingo Oppermann
50164ea78e
Get files from diskfs and memfs via API
2022-08-16 14:32:58 +03:00
Ingo Oppermann
fe2d4e247e
Set cluster node ips on session block list
2022-08-15 13:52:38 +03:00
Ingo Oppermann
c04ab1e82f
Add SRT proxying
2022-08-08 16:53:37 +02:00
Ingo Oppermann
f4acc0457f
Add rtmp proxying
2022-08-05 16:34:08 +02:00
Ingo Oppermann
5af85c6a8b
Add diskfs proxying
2022-08-05 12:30:25 +02:00
Ingo Oppermann
c31fd657be
Add proxying memfs files
2022-08-04 16:43:19 +02:00
Ingo Oppermann
fe889aa4e2
Add basic node handling
2022-08-03 22:05:28 +02:00