Michael Quigley
98a311e5e3
Merge branch 'main' into usage_reporting_interval
2023-02-28 13:54:13 -05:00
Michael Quigley
53dcd24e26
tweaks for reporting interval
2023-02-28 11:56:39 -05:00
Paul Lorenz
820e6391a4
Add heartbeat config and controller peer heartbeats. Fixes openziti/fabric#507
...
Adds config to controller for heartbeat config
Add config to routers for heartbeat config
Adds configurable heartbeats to controller <-> controller connections
2023-02-28 09:47:53 -05:00
Paul Lorenz
3d6a9ec6d7
Merge pull request openziti/fabric#611 from openziti/add-cluster-events
...
Add cluster events
2023-02-20 10:34:02 -05:00
Paul Lorenz
7ed8aa1635
Add cluster events. Fixes openziti/fabric#584
2023-02-20 10:27:17 -05:00
Paul Lorenz
d7446280ad
Merge pull request openziti/fabric#609 from openziti/add-transfer-leadership
...
Add transfer-leadership command. Fixes openziti/fabric#599
2023-02-20 10:24:40 -05:00
Paul Lorenz
1379618165
Update inspect names from routers -> connected-routers and clusterconfig -> cluster-config
2023-02-17 13:39:40 -05:00
Paul Lorenz
82b3b8b742
Add transfer-leadership command. Fixes openziti/fabric#599
2023-02-17 12:55:10 -05:00
Paul Lorenz
6de811dc66
Ensure we use peer's advertise address. Fixes openziti/fabric#606
2023-02-17 10:46:59 -05:00
Paul Lorenz
cf2ee0347a
Support showing connected routers. Fixes openziti/fabric#598
2023-02-16 17:11:58 -05:00
Paul Lorenz
abb0eb96fb
Add more raft configuration options. Fixes openziti/fabric#597
...
Add more raft config knobs
Refactor peer handles to be consistent with other handlers
Allow inspect to work across controllers
Add config and clusterconfig inspect support
2023-02-15 23:47:57 -05:00
Paul Lorenz
9fdb4f445c
Cleanup ctrl advertise address config loading
2023-02-10 09:57:31 -05:00
Paul Lorenz
52a8ba6a57
Miscellaneous raft related updates
...
Add initial cluster events.
Simplify ctrl <-> ctrl connection.
Fix version mismatch detection
2023-02-09 15:24:23 -05:00
Paul Lorenz
8f5b5b5c33
Compress snapshots with gzip for efficiency. Fixes openziti/fabric#583
2023-02-09 14:40:34 -05:00
Paul Lorenz
6a3e69950b
Only update router controlelrs if running in raft cluster
2023-02-02 15:41:14 -05:00
Paul Lorenz
3a110eccc7
Add ability to report initiator local/remote addr. Add to circuit events. Fixes openziti/fabric#592
2023-01-24 16:16:53 -05:00
Paul Lorenz
345943b25e
Merge pull request openziti/fabric#591 from openziti/consistent-service-metrics
...
Only track service metrics on current route attempts. Fixes openziti/fabric#588
2023-01-19 21:58:24 -05:00
Paul Lorenz
5635a51061
Only track service metrics on current route attempts. Fixes openziti/fabric#588
2023-01-19 11:21:31 -05:00
Paul Lorenz
e02dde0cd7
Add duration to circuit updated/deleted events. Closes openziti/fabric#589
2023-01-19 11:16:47 -05:00
Cam Otts
1a6fb53271
Router controller updates ( #537 )
...
* progress on controller communication
* added yaml encoding/decoding
* move dispatch callbacks to be more consistent
* update unit tests
* small cleaups
* Add new datadir to unit tests
* fix linter
* Was able to use FSM hooks to get configuration updates to show raft state
* Send index to prevent older versions from being applied and added leader override
* pr comments and added/removed ctrl connections
* added error logging
* pr comments
* spelling and bad log newlines
* added delete from the toconnect map and added end case to the background connect
* reordered removal from map
* added mtx around access. Forgot that was changed to be unsopported.
2023-01-18 09:19:13 -06:00
Cam Otts
c299a06669
Added raft leave and raft list members ( #580 )
...
* Added raft leave and raft list members
* reordered agent raft leave to only check address if is is not found
* instead of adding second raft ctrl, just cast the dispatcher
2023-01-12 10:18:13 -06:00
Paul Lorenz
482a4fd0fc
Update enable/disable ctrl ch to allow specifying controller. Update to use channel ops. Fix openziti/fabric#508
2023-01-11 14:14:43 -05:00
Paul Lorenz
b5bae84325
Fix some handler removal. Only propagate crud terminator events on leader by default. Fixes openziti/fabric#573
2023-01-04 09:53:36 -05:00
Paul Lorenz
6aa8649d07
Merge pull request openziti/fabric#570 from openziti/ha-migrations
...
Support auto-migrate and agent initiated migration. Fixes openziti/fabric#569
2022-12-29 14:24:31 -05:00
Paul Lorenz
f2e2471548
Wait for cluster to elect leader. Don't require local node to be leader
2022-12-29 14:07:23 -05:00
Paul Lorenz
70434cd102
Move advertise addr to ctrl:options. Fixes openziti/fabric#571
2022-12-29 09:38:39 -05:00
Paul Lorenz
374b74ea79
Support auto-migrate and agent initiated migration. Fixes openziti/fabric#569
2022-12-28 17:06:27 -05:00
Paul Lorenz
b63f14618f
Change controller db name. Fix debug log output
2022-12-23 10:11:01 -05:00
Paul Lorenz
14900a491b
Merge pull request openziti/fabric#564 from openziti/stream-events
...
Support streaming all events to websocket. Remove stream metrics and …
2022-12-20 09:39:34 -05:00
Paul Lorenz
26f5af9d47
Support streaming all events to websocket. Remove stream metrics and cicuits. Fixes openziti/fabric#563
2022-12-20 09:36:15 -05:00
Paul Lorenz
e0c894dce9
Merge pull request openziti/fabric#557 from openziti/add-min-cost-delta
...
Add minimum cost delta for smart rerouting. Fixes openziti/fabric#552
2022-12-19 11:22:02 -05:00
Paul Lorenz
ca9db4a78c
Add minimum cost delta for smart rerouting. Fixes openziti/fabric#552
2022-12-19 11:20:04 -05:00
Paul Lorenz
1eac29740c
Allow terminators to be marked as system entities. Fixes openziti/fabric#558
2022-12-16 13:11:45 -05:00
Paul Lorenz
7caa06c6a3
Add new usage type to metrics stream
2022-12-15 12:21:59 -05:00
Paul Lorenz
c6ccfd0980
Update to latest hclog
2022-12-12 13:42:49 -05:00
Paul Lorenz
87b6c9c681
Support bootstrap members in the config file
2022-12-06 12:28:25 -05:00
Paul Lorenz
3e880f0428
Controller SPIFFE ids should have /controller/ in the path
2022-12-01 09:52:55 -05:00
Paul Lorenz
74de7e65ee
update CODEOWNERS to sig-core and update MM notifications
2022-11-30 12:22:14 -05:00
Paul Lorenz
9905987b9e
Various HA related fixes
...
* Router cert handling fix
* Always start with empty bolt db, so raft journal can be applied
cleanly
* Allow looking up raft member ids, so you only need to provide addr
* Report metrics to all controllers. Fixes openziti/fabric#525
2022-11-11 14:08:12 -05:00
Paul Lorenz
ec885daed5
Always use a new router instance for connected routers so we can ensure
...
disconnect handling applies to the right instance
2022-10-24 14:44:27 -04:00
Paul Lorenz
4a1f234839
Add linter and update deps
2022-10-10 13:29:40 -04:00
Paul Lorenz
02539e9e16
Support multiple control channels. Fixes openziti/fabric#469
2022-09-29 12:06:41 -04:00
Paul Lorenz
519574497e
Update to channel v2
2022-09-26 17:00:34 -04:00
Cam Otts
ddbe41aca2
Readonly lock ( #504 )
...
* initial work for adding readonly lock
* Added checks on peer adding/removing
* added tests around readonly checking and setting
* updated error and change atomic to not be a pointer
2022-09-26 13:53:55 -05:00
Paul Lorenz
9aa41409b3
Cleanup trace controller loop. Refactor for multiple control channels: openziti/fabric#469
2022-09-22 11:05:35 -04:00
Paul Lorenz
aafa99ae6f
Fix some linting issues. svcId -> serviceId
2022-09-15 17:34:44 -04:00
Paul Lorenz
aa6124105d
Update to usage v3. Adds circuit tags to usage. Fixes openziti/fabric#496
2022-09-15 17:34:33 -04:00
Paul Lorenz
c77160ba6d
Fix patching tags on routers and services. Fixes openziti/fabric#499
2022-09-14 23:29:07 -04:00
Paul Lorenz
096e981959
Add remote addr to circuit events. Fixes openziti/fabric#459
2022-09-06 22:58:06 -04:00
Paul Lorenz
77efd9a560
Wait for changes request from follow to be applied to follower before returning. Fixes openziti/fabric#481
2022-08-26 12:47:20 -04:00