Paul Lorenz
700ec34177
Make link heartbeats configurable. Add unresponsive close timeout. Fixes openziti/fabric#796
2023-09-18 22:40:19 -04:00
Paul Lorenz
a631f48643
Do some forwarder option cleaning. Remove unused latency options
2023-08-22 20:37:59 -04:00
Paul Lorenz
a7fe59e184
Do some configuration tidying
2023-08-22 20:37:25 -04:00
Paul Lorenz
509364d908
Remove trace events from dispatcher. Move trace to common
2023-08-16 12:39:42 -04:00
Paul Lorenz
cdfd037da9
Move protobuf definitions to common
2023-08-10 19:38:48 -04:00
Paul Lorenz
00a39c9900
Move logcontext package to common
2023-08-10 18:07:00 -04:00
Paul Lorenz
368d6e5568
Move config, ctrl_msg and handler_common to common/
2023-08-10 17:29:08 -04:00
Paul Lorenz
8dbc759d45
move event and events packages to controller
2023-08-10 17:10:17 -04:00
Paul Lorenz
f15b8bef23
Add some more config value validation and guardrails
2023-08-03 17:07:49 -04:00
Paul Lorenz
2ee9539f9c
Move link calculation to routers. Fixes #692 , fixes #749 , fixes openziti/fabric#343
2023-08-03 17:07:48 -04:00
Paul Lorenz
8149b69614
Add support for quiescing and dequiescing routers. Fixes openziti/fabric#538
...
Quiesce marks all terminators as failed and stores the previous state.
Dequiesce restores all terminators with failed state and stored previous
state to their previous state
2023-06-05 17:46:13 -04:00
Paul Lorenz
ef555a536e
Notify controller of forward faults on links. Fixes #724 . If reroute fails, circuit should be torn down. Fixes openziti/fabric#725
2023-05-25 15:05:28 -04:00
Paul Lorenz
bc9bac6f0d
Add config support for link groups. Doesn't use group config yet.
2023-05-11 09:34:33 -04:00
Paul Lorenz
a19a2ab2fe
Annotate circuit events with circuit tags, similar to usage. Fixes openziti/fabric#684
2023-04-25 22:54:22 -04:00
Paul Lorenz
23110fccb2
Implement entity change events. Fixes openziti/fabric#562
2023-04-25 11:38:03 -04:00
Paul Lorenz
bf76453ce8
Update to go 1.20
2023-04-25 11:32:34 -04:00
Paul Lorenz
d1d0fe781b
Update for storage API changes.
2023-04-25 11:32:33 -04:00
Paul Lorenz
cc09f32c34
Implement batched terminator deletes
2023-03-28 13:18:59 -04:00
Paul Lorenz
32da1861ca
Add router disable flag. Fixes openziti/fabric#651
2023-03-27 14:18:43 -04: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
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
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
4d05c59df0
Run gofmt -w -s
2022-08-22 14:17:43 -04:00
Paul Lorenz
e0f5092a08
Use one port for ctrl channel to router and controllers. Allow syncing existing DB to raft. Fixes #471 . Fixes openziti/fabric#479 .
2022-08-22 12:09:07 -04:00
Paul Lorenz
858642bc38
Move UpdatedFields to fabric. Start moving model layer to generics
2022-07-27 11:33:24 -04:00
Paul Lorenz
98160bb8b0
Merge pull request openziti/fabric#448 from openziti/link-events
...
Refactor events subsystem. Add link events. Fixes openziti/fabric#415
2022-07-19 10:59:27 -04:00
Paul Lorenz
7abe5d5605
Cleanup circuits for deleted routers. Fixes openziti/fabric#452
2022-07-18 15:03:35 -04:00
Paul Lorenz
77bce93e85
Refactor events subsystem. Add link events. Fixes openziti/fabric#415
...
Previously we often had two sets of events, one in the network
package, and then another in the events package. We now only
have one, in the events package. Events now have a public API,
with minimal deps. There's an implementation package which has
the dependencies. This allows the network package to generate
events, without have a circular dependency on the events
implementation package.
2022-07-15 18:31:52 -04:00
Paul Lorenz
57bd46b285
Fix misleading error message. Fixes openziti/fabric#446
2022-07-14 15:30:34 -04:00
Paul Lorenz
3d49022f4a
Update for foundation changes
2022-07-01 14:29:12 -04:00
Paul Lorenz
b26fcf8909
Fix copyright
2022-06-29 16:59:46 -04:00
Paul Lorenz
a731cd9aec
Circuit failed events and rename terminator identity -> instanceId
2022-06-22 14:34:32 -04:00
Paul Lorenz
a64c626cb4
Controller -> Manager for entity managers
2022-06-02 22:53:22 -04:00
Paul Lorenz
eaa75d48c6
Initial support for distributed model via RAFT
2022-06-02 22:49:55 -04:00
Cam Otts
0c7ff2bd5e
threaded a timout through fabric ( #356 )
...
* threaded a timout through fabric
* updated default timeout
* pr comments
* fix timing
* applied pr comments
* removed one more utc
* updated to time until and conditionally add deadline
* signed commit
* small proto change
* regenerate pb
* missed extra import
2022-05-12 14:32:18 -05:00
Paul Lorenz
374af45b6d
Merge pull request openziti/fabric#386 from openziti/update-protobuf
...
Update to current protobuf library
2022-05-11 12:58:11 -04:00
Paul Lorenz
8dfdce7fab
Update to current protobuf library
2022-05-10 14:54:00 -04:00
Paul Lorenz
2cdf3f469c
Verify router instead of link when getting new link dial
2022-05-10 14:26:55 -04:00
Paul Lorenz
69bc2fb0cc
Update to transport/v2
2022-05-10 11:58:41 -04:00
Paul Lorenz
1874ab5f27
Allow a new control channel to takeover even if the router is already connected
...
Add churn limiter so it can only happen so often
2022-04-28 14:55:14 -04:00
Paul Lorenz
e21d41df05
Notify controller of invalid destinations in routes.
...
Allow xgress and links to be destinguished by ID suffix
If a link destination is missing, send a link fault
Add forget-link router debug agent op to allow testing invalid
destinations
2022-04-26 22:16:58 -04:00
Paul Lorenz
85a4d8484b
Address review comments
2022-04-26 13:49:33 -04:00
Cam Otts
113c37024e
Added heartbeat logging/metrics to control channel ( #341 )
...
* Added heartbeat logging/metrics to control channel
* pr comments
* misunderstood last pr comment
* moved channel closing to happen in either case
2022-04-06 11:10:58 -05:00
Paul Lorenz
8150358d6b
Add service id to log message
2022-04-05 22:34:30 -04:00