v0.10.0 (2022-06-01)
Clusternet Release v0.10.0
This release introduced a new concept predictor
. It is a on-going feature, which will be fully available in next release (v0.11.0). With predictor
, we could dynamically schedule replicas to child clusters that have the capacity to hold them. Also in this release, we optimized the scheduler framework, making it more adaptable to multiple cluster scenarios. A new feature on cluster-aware Globalization was introduced as well. Meantime, we improved user experience on trying Clusternet with kind
and Docker Desktop.
Changes Since v0.9.1
Full Changelog: https://github.com/clusternet/clusternet/compare/v0.9.1...v0.10.0
What’s Changed
New Features & Enhancements
- Introduced new concept
predictor
, which can be used to predict containable replicas in each matching child clusters. This is a on-going feature, which will be fully available in next release (v0.11.0). In this release, following tasks were finished,- Added replica predictor interface, which can be implemented by external customized predictors. (by @dixudx in #274)
- Added a extensible framework for predictor server, and a built-in predictor. (by @qianjun1993 in #346, #336)
- Added a new scheduling plugin
predictor
. (by @yinsenyan in #354) - Bumped default predictor server into
clusternet-agent
. (by @yinsenyan in #344, by @qianjun1993 in #355)
- Added extra arg
--threadiness
for hub. (by @DanielXLee in #314) - Added annotation to support skipping validation. (by @dixudx in #317)
- Optimized scheduler framework for multi-cluster. (by @Garrybest in #322)
- Cluster-aware overrides from Globalization can be applied now. (by @jasine in #334)
- Rescheduled subscriptions when binding clusters got a change on labels. (by @DanielXLee in #339, #341)
- Optimized context usage and shared informer factory in clusternet-agent. (by @dixudx in #356, #357)
Bug Fixes
- Fixed inconsistent helm release name. (by @jasine in #309)
- Fixed incorrect cluster and service ip range in
ManagedCluster
status. (by @jasine in #311) - Removing duplicate module import. (by @yinsenyan in #313)
- Fixed resource
AlreadyExists
error for shadow apis (by @dixudx in #316, #330) - Fixed empty overrides deserialization. (by @dixudx in #323)
- Fixed issue on deploying helm charts to target namespace. (by @dixudx in #326)
- Label
apps.clusternet.io/owned-by-description
was changed to annotation to avoid label length limit. (by @silenceper in #327) - Fixed updating feedInventory with missing resource version. (by @dixudx in #332)
- Fixed resource controller running more than one. (by @lmxia in #352)
- Converged resync conditions from upper updates and rolling back. (by @lmxia in #343)
- Fixed enqueue issue in feedinventory. (by @Garrybest in #340)
User Experiences
- Images can be built faster and better. (by @dixudx in #319)
- Removed default log level (used to be
-v 4
) to avoid log flooded. (by @dixudx in #320) - Added cluster register name for local kind clusters. (by @Garrybest in #321)
- Used port-mapping endpoints for kind clusters on Docker Desktop Mac. (by @bartdong in #328)
Security
- Fixed CVE GHSA-hp87-p4gw-j4gq: An issue in the
Unmarshal
function in Go-Yaml v3 causes the program to crash when attempting to deserialize invalid input. (by @dixudx in #348)
New Contributors
Thanks to all contributors!