Commit Graph
78 Commits
Author SHA1 Message Date
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 1bcb8836ef auto resubscribe a corrosion subscription if an error occurs 2024-10-03 16:13:03 +10:00
Pavel Sviderski 840943b3b0 split corrosion client subscription in a separate file 2024-10-03 14:10:09 +10:00
Pavel Sviderski 518eae9bd2 split corrosion queries in a separate file, make subscription more consistent with queries 2024-10-03 14:07:25 +10:00
Pavel Sviderski 06a4001080 refactor corrosion client to accept custom http client, fix backoff for every request 2024-10-03 13:58:28 +10:00
Pavel Sviderski b73577e1a0 implement subscription in corrosion client 2024-10-02 18:28:54 +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 e123f7214e add exponential backoff for network errors in corrosion client 2024-10-01 23:15:36 +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 6d4698fc1d implement Query in corrosion API client 2024-09-30 19:00:51 +10:00
Pavel Sviderski 708e14a4e0 add Exec and ExecMulti methods to corrosion API client 2024-09-29 10:25:54 +10:00
Pavel Sviderski c80de16ebe init corrosion API client 2024-09-28 20:42:57 +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 93a9e322f4 provision machine when adding it to the cluster 2024-09-23 14:50:35 +10:00
Pavel Sviderski d66818ea77 detect if the machine is already initialised 2024-09-23 14:21:06 +10:00
Pavel Sviderski 43e2bf86fb fix concurrent output in install.sh 2024-09-21 00:46:58 +10:00
Pavel Sviderski d735d568b3 run install.sh script when initialising a cluster on the init machine 2024-09-21 00:43:33 +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 ea8dfca14c delete old unused ClusterClient 2024-09-20 23:04:40 +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
Pavel Sviderski 47073f017f update network peers when new machine added 2024-09-12 13:40:10 +10:00
Pavel Sviderski a64caf34a7 add Token RPC endpoint to grab a machine token for adding it to a cluster 2024-09-12 09:55:02 +10:00
Pavel Sviderski fb236fb922 establish SSH connection when adding a new machine 2024-09-11 20:46:43 +10:00
Pavel Sviderski 03c2c0df39 refactor cluster connection in CLI 2024-09-11 18:40:06 +10:00
Pavel Sviderski c56f81bac2 add TODO 2024-09-11 16:10:36 +10:00
Pavel Sviderski da72c0515a refactor cluster server to initialise state when initialising cluster, allow machine to be reinitialised 2024-09-11 14:50:52 +10:00
Pavel Sviderski 676f22a935 start WG network when the machine is initialised via RPC call 2024-09-10 18:23:55 +10:00
Pavel Sviderski 4e2640bbd2 rename machines to connections in config 2024-09-10 16:20:00 +10:00
Pavel Sviderski ddf7d23351 set uncloud group on the unix socket to allow configured non-root users to access it 2024-09-10 16:13:20 +10:00
Pavel Sviderski 9e44d30328 implement CLI init cluster, add SSH and WireGuard cluster connectors 2024-09-10 13:48:14 +10:00
Pavel Sviderski fd314bcf65 add ssh destination to connection config 2024-09-10 13:46:17 +10:00