Commit Graph

1206 Commits

Author SHA1 Message Date
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 e5f8d5ab60 Move heartbeat status map update outside bolt tx. Fixed #1303 2023-02-07 13:24:30 -05:00
Paul Lorenz 5c35faafa3 Fix heartbeat deadlock. Fixes #1303
bbolt batch was trying to finish commit, needed all txes to finish
heartbeat update in read tx was waiting for concurrent status map so it could update
heartbeat status map was locked iterating waiting to submit to batch
(now we're back at the beginning)
Was also a view tx within a view tx, which can be problematic
2023-02-06 11:53:15 -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
Andrew Martinez a46a10d9eb use new github.com/openziti/edge-api repository
- fixes import statements
2023-01-24 16:03:20 -05:00
Andrew Martinez 69c31fcf3e uses github.com/openziti/edge-api
- removes old api specific scripts, generated files, etc
2023-01-24 14:45:24 -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 6b6eed6041 Improve some tunneler log messages 2023-01-06 13:54:49 -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 7152476ced Require config types to have a root type of object. Fixes #1279 2022-12-29 11:39:56 -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 56c6857590 Mark xgress_edge and xgress_edge_tunnel terminators as system entities. Fixes #1272 2022-12-16 14:04:10 -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 4abeaa0c0a xgress_edge_tunnel create terminator perf improvements. Fixes #1270
* Make terminator creation asynchronous
* Make terminator creation idempotent
* Improve logging
* Add some timer logging and metrics.
    * controller and router will both log their respective views of how long the terminator create took
    * the router has a new xgress_edge_tunnel.terminator.create_time timer metric
2022-12-15 17:29:29 -05:00
Paul Lorenz 7caa06c6a3 Add new usage type to metrics stream 2022-12-15 12:21:59 -05:00
Paul Lorenz c0c7b1907e Fix eventual eventer processing on restart. Fixes #1268 2022-12-14 17:20:52 -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 2509f9b575 update CODEOWNERS to sig-core and update MM notifications 2022-11-30 14:34:10 -05:00
Paul Lorenz 74de7e65ee update CODEOWNERS to sig-core and update MM notifications 2022-11-30 12:22:14 -05:00
Paul Lorenz fe93c5fac6 Fix panic when improperly parsing protocol ports from ER hello. Fixes #1253 2022-11-22 11:46:27 -05:00
Paul Lorenz 8563490cd8 Fix identity links. Fixes #1233. Fixes #1234 2022-11-16 16:15:12 -05:00
Paul Lorenz 185a767842 Fix links factory on identity type. Fixes #1232 2022-11-16 16:13:31 -05:00
Paul Lorenz d022405ea8 Merge pull request #1235 from openziti/fill-in-client-cert-chains
Fill in client cert chains when enrolling
2022-11-11 16:09:18 -05:00
Paul Lorenz 90e7b0f0a6 Fill in client cert chains when enrolling 2022-11-11 14:30:55 -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
Andrew Martinez d73c72679d for #1213 delete api session on authenticator delete/re-enroll
- an authenticator removed or re-enrolled would continue to allow old
  API Session to operate
- deleted or re-enrolled authenticators now remove associatd API
  Sessions
2022-11-09 11:44:49 -05:00
Andrew Martinez 3e4f26ee78 updates edge service manager to not allow encryptionRequired to be
altered
2022-11-07 11:42:01 -05:00