v1.3.0
Pre-releaseRelease 1.3.0
What's New
- Router Data Model enabled by default
- Bug fixes
- Controller Health Check HA Update (from @nenkoru)
Router Data Model
As part of the controller HA work, a stripped down version of the data model can now be distributed to the routers,
allowing routers to make some authorization/authentication decisions. This code has existed for some time, but
after testing and validation, is now enabled by default.
It can still be disabled at the controller level using new configuration. Note that the router data model is required
for HA functionality, so if the controller is running in HA mode, it cannot be disabled.
routerDataModel:
# Controls whether routers are told to enable functionality dependent on the router data model
# Defaults to true
enabled: true
# How many model changes to buffer so that routers can be updated iteratively. If a router requests
# data that's no longer available, it will receive the full data model
logSize: 10000
HA Changes
Routers no longer require the ha: enabled
flag be set in the configuration. Routers should work correctly
whether connecting to HA or non-HA controllers.
NOTE: If the controller a router is connected changes modes, specifically if the controller goes from
supporting the router data model to not, or vice-versa, the router will shutdown so that it can
restart with the correct mode.
Controller Health Check HA Update
This feature was contributed by @nenkoru.
The controller health check can now optionally return information about raft and leadership when the /controller/raft
path is provided.
$ curl -k https://localhost:1280/health-checks/controller/raft
{
"data": {
"checks": [
{
"healthy": true,
"id": "bolt.read",
"lastCheckDuration": "0s",
"lastCheckTime": "2025-01-14T19:42:13Z"
}
],
"healthy": true
},
"meta": {},
"raft": {
"isLeader": true,
"isRaftEnabled": true
}
}
Note the raft
section, which indicates if raft is enabled and if the queried controller is currently the leader. If the
controller/raft
path isn't present in the request, the result should be unchanged from previous releases.
When querying the controller/raft health, if raft is enabled but the controller is not the leader, the check will
return an HTTP status of 429.
Component Updates and Bug Fixes
-
github.com/openziti/agent: v1.0.20 -> v1.0.23
-
github.com/openziti/channel/v3: v3.0.16 -> v3.0.26
-
github.com/openziti/edge-api: v0.26.35 -> v0.26.38
- Issue #138 - management api deletes were generally not mapping 404 properly
-
github.com/openziti/foundation/v2: v2.0.52 -> v2.0.56
-
github.com/openziti/identity: v1.0.90 -> v1.0.94
-
github.com/openziti/metrics: v1.2.61 -> v1.2.65
-
github.com/openziti/runzmd: v1.0.55 -> v1.0.59
-
github.com/openziti/secretstream: v0.1.26 -> v0.1.28
-
github.com/openziti/storage: v0.3.8 -> v0.3.15
- Issue #91 - Support dashes in identifier segments after the first dot
-
github.com/openziti/transport/v2: v2.0.153 -> v2.0.159
-
github.com/openziti/ziti: v1.2.2 -> v1.3.0
- Issue #2674 - 404 not found on well-known OIDC configuration with default ports/localhost
- Issue #2669 - Router api session tracker leaks memory.
- Issue #2659 - OIDC Login Panics On Unsupported Media Type
- Issue #2582 - An endpoint to determine whether a node is a raft leader
- Issue #2619 - Add source id to all events
- Issue #2644 - enhance mismapped external identity logging
- Issue #2636 - Enable HA smoketest
- Issue #2586 - Ziti Controller in HA mode doesn't update binding address in a bolt database after config changed
- Issue #2639 - Change cluster events namespace from fabric.cluster to cluster
- Issue #2184 - Add Event(s) For Controller Leader Connection State
- Issue #2548 - Generate a log message if the cluster is without a leader for some configurable period of time
- Issue #2624 - Remove uri/params from connect events
- Issue #2596 - Add DisableRouterDataModel config flag to controller
- Issue #2599 - Routers should only stream model data from one controller
- Issue #2232 - Standardized REST API Error For Mutation on Non-Consensus Controller
- Issue #2566 - Remove HA config flag from router
- Issue #2550 - Router Data Model Chaos Test
- Issue #2625 - edge sessions for an ERT may not be cleaned up when the ER/T is deleted
- Issue #2591 - Split Edge APIs can cause
ziti edge login
to fail