Commit Graph
181 Commits
Author SHA1 Message Date
Pavel Sviderski 2c62e1f6df refactor machine name generation using secrets package 2024-11-14 11:47:22 +10:00
Pavel Sviderski 913fb2da0c update ListMachines to include machine state from Corrosion membership 2024-11-13 16:48:55 +10:00
Pavel Sviderski bd0e7f44b2 init corrosion admin client in machine 2024-11-12 15:23:02 +10:00
Pavel Sviderski c70c8a6ec1 validate machine info before returning in ListMachine 2024-11-10 19:38:55 +10:00
Pavel Sviderski 1316dd3ffc fix proxy Director usage and close on shutdown 2024-11-08 15:50:28 +10:00
Pavel Sviderski 4493bb3c27 support gRPC proxy to remote backends 2024-11-08 15:49:21 +10:00
Pavel Sviderski b23699470b add EmptyResponse common message 2024-11-08 11:48:58 +10:00
Pavel Sviderski 34316c77cf add helper Empty message 2024-11-08 11:32:42 +10:00
Pavel Sviderski c2b466b046 add common Metadata message to be injected in reply messages by gRPC proxy 2024-11-08 11:28:04 +10:00
Pavel Sviderski d36429e6e5 replace API server with transparent gRPC proxy that routes requests to local machine API 2024-11-05 20:05:31 +10:00
Pavel Sviderski 17b96a8744 move default uncloud socket to /run/uncloud/uncloud.sock 2024-11-04 20:02:48 +10:00
Pavel Sviderski a54666a7ac update run command to run a stub service container on the connected node 2024-11-01 15:05:07 +10:00
Pavel Sviderski 5cb765d286 add Docker gRPC service to create and start a Docker container on machine 2024-11-01 15:04:06 +10:00
Pavel Sviderski 5fe77c688b exclude Docker bridge br-[0-9a-f]{12} interfaces from machine routable IPs 2024-10-31 18:35:59 +10:00
Pavel Sviderski 2f6c988125 do not rotate endpoints on daemon restart, handle endpoint changes on established reverse peer connections 2024-10-13 01:15:32 -04:00
Pavel Sviderski 3a644771ca watch for peer endpoint changes and preserve in machine state 2024-10-08 16:51:40 +10:00
Pavel Sviderski 2eff7d1e22 format 2024-10-07 20:06:56 +10:00
Pavel Sviderski f06dd865fa update existing WG peers instead of replacing to not interrupt and lose track of handshakes 2024-10-07 20:06:15 +10:00
Pavel Sviderski ee580df6af automatically rotate WG peer endpoints if can't establish a connection 2024-10-07 17:24:18 +10:00
Pavel Sviderski 2c0cf28509 fix peer status persistence, update status every second 2024-10-07 15:35:15 +10:00
Pavel Sviderski 7b98ed34df calculate WG peer connection status 2024-10-07 14:58:21 +10:00
Pavel Sviderski 5094149406 improve error message for adding machine that already exists in the cluster 2024-10-04 20:45:54 +10:00
Pavel Sviderski 336bdf9f4b add minor log 2024-10-04 18:46:52 +10:00
Pavel Sviderski e5bda92ec6 add opptimistic sleep on corrosion service start to wait for schema initialisation 2024-10-04 16:19:07 +10:00
Pavel Sviderski fd3ad91136 update network controller to reconfigure network peers on machine changes 2024-10-04 16:18:08 +10:00
Pavel Sviderski 94186b2ae7 allow to subscribe to machine changes in the cluster store 2024-10-04 16:14:59 +10:00
Pavel Sviderski c3ba43a8fa delete old non-distributed cluster state, fix storing endpoints in store 2024-10-02 13:03:17 +10:00
Pavel Sviderski b688742e5a remove the concept of cluster user (at least the current implementation) 2024-10-02 11:50:40 +10:00
Pavel Sviderski 4ec87db8e8 add init machine to store when initialising a cluster 2024-10-02 11:34:54 +10:00
Pavel Sviderski c6358474ac add comments 2024-10-02 09:25:12 +10:00
Pavel Sviderski 8fbf406007 relax relationship between corrosion service, init cluster with new store 2024-10-01 23:37:07 +10:00
Pavel Sviderski 3287691a31 start corrosion service even when machine is not initialised to be able to init cluster 2024-10-01 15:04:20 +10:00
Pavel Sviderski 6f9fc69c2e fix corrosion data dir, add reload to systemd unit 2024-10-01 13:33:54 +10:00
Pavel Sviderski 0effba0adb create corrosion store when initialising machine 2024-09-30 23:10:56 +10:00
Pavel Sviderski 667ecadd30 init cluster store backed by corrosion 2024-09-30 20:46:41 +10:00
Pavel Sviderski 68845e7607 refactor corrosion service init for machine 2024-09-30 20:46:29 +10:00
Pavel Sviderski 3e9718f08c update store schema when configuring corrosion, create machines table 2024-09-27 20:10:05 +10:00
Pavel Sviderski 69c9167355 configure corrosion bootstrap peers when initialising a machine 2024-09-26 20:36:13 +10:00
Pavel Sviderski b25938acc1 clean up corrosion systemd service 2024-09-26 19:14:25 +10:00
Pavel Sviderski 1ec3376be5 remove indentations from corrosion config 2024-09-26 18:06:45 +10:00
Pavel Sviderski 9fcc319c3a create corrosion config 2024-09-26 17:00:30 +10:00
Pavel Sviderski 2f7463ebe3 refactor corrosion into interface service 2024-09-25 23:59:56 +10:00
Pavel Sviderski d66818ea77 detect if the machine is already initialised 2024-09-23 14:21:06 +10:00
Pavel Sviderski fdb277c2df fix internal/machine package to build on darwin 2024-09-20 23:18:58 +10:00
Pavel Sviderski 73be824f30 convert systemd unit to Type=notify and report readiness 2024-09-20 23:11:00 +10:00
Pavel Sviderski 1a5a78e4b3 setup Docker network and iptables forwarding when starting machine 2024-09-19 17:15:33 +10:00
Pavel Sviderski 5dc0832449 refactor network operations into networkController to start/stop when joining/leaving cluster 2024-09-18 15:55:02 +10:00
Pavel Sviderski 3f497b5e58 add couple TODOs 2024-09-12 17:45:31 +10:00
Pavel Sviderski bd53e3f20e machine add: configure remote machine to join the cluster network 2024-09-12 17:03:23 +10:00
Pavel Sviderski 4e042be7b7 add machine list command and corresponding RPC endpoint 2024-09-12 14:52:07 +10:00