14 KiB
Table of Contents generated with DocToc
v1.6.3
Downloads for v1.6.3
Download v1.6.3 in the v1.6.3 release page.
Changelog since v1.6.2
Changes by Kind
Bug Fixes
karmada-search: Fixed a panic due to concurrent mutating objects in the informer cache. (#3978, @chaosi-zju)karmada-controller-manager: Avoid updating directly cached resource templates. (#3893, @whitewindmills)karmada-aggregated-apiserver: Fixed the issue that can not proxyexecrequest to a proxy issue. (#4022, @jwcesign)
Others
- Bump k8s.io dependencies to v0.26.4 to fix a possible panic. (#3925, @liangyuanpeng)
v1.6.2
Downloads for v1.6.2
Download v1.6.2 in the v1.6.2 release page.
Changelog since v1.6.1
Changes by Kind
Bug Fixes
- Chart: Fixed the issue that
karmada-searchno ETCD secret volume mount when using external ETCD. karmada-controller-manager: Fixed a boundary case where thepropagationpolicy.karmada.io/namein the label of the resource template would not be removed after deleting PP.
Others
None.
v1.6.1
Downloads for v1.6.1
Download v1.6.1 in the v1.6.1 release page.
Changelog since v1.6.0
Changes by Kind
Bug Fixes
karmada-controller-manager: FixedAppliedcondition of ResourceBinding is always true issue. (#3724, @jwcesign)karmada-controller-manager: fix panic when printing log when lastSuccessfulTime of cronjob is nil. (#3698, @yike21)karmada-webhook: When application failover is enabled, users are prevented from setting propagateDeps tofalse. (#3766, @RuliXu)
Others
None.
v1.6.0
Downloads for v1.6.0
Download v1.6.0 in the v1.6.0 release page.
What's New
FederatedHPA
Introduced FederatedHPA API to address the requirements that scale workloads across clusters.
FederatedHPA works similarly to HPA in a single cluster. Karmada aggregates metrics from multiple clusters through the karmada-metrics-adaptor component and then scales Pod replicas. The scaled replicas will be distributed to multiple clusters according to the declaration of PropagationPolicy or ClusterPropagationPolicy.
See FederatedHPA Proposal for more details.
(Feature contributor: @chaunceyjiang @jwcesign @Poor12)
Application Failover
In a multi-cluster scenario, the fault may come from the cluster as a whole, or it may be because the application cannot adapt to a certain cluster. Users are now able to declare strategies of application failover about when and how to migrate the unhealthy application in PropagationPolicy and ClusterPropagationPolicy. Karmada will automatically migrate unhealthy applications to other available clusters to improve their availability.
See application-level failover for more details. (Feature contributor: @Poor12, @RainbowMango)
Karmada Operator
Karmada provides CLI tools and Helm Charts for installation and deployment in previous releases. In this release, the Karmada operator is provided as another declarative deployment method.
The Karmada operator is a method for installing, upgrading, and deleting Karmada instances. It builds upon the basic Karmada resource and controller concepts and provides convenience to centrally manage the entire lifecycle of Karmada instances in a global cluster. With the operator, users can extend Karmada with custom resources (CRs) to manage their instances not only in local clusters but also in remote clusters.
See quick start for more details. (Feature contributor: @calvin0327, @lonelyCZ, @Poor12)
Third-party Resource Interpreter
Karmada's Resource Interpreter Framework is designed for interpreting resource structure. It consists of built-in and customized interpreters. Karmada has bundled the following open-sourced resources so that users can save the effort to customize them, including Argo Workflow, Flux CD, Kyverno, and OpenKruise. They have been verified by the community.
(Feature contributor: @yike12, @chaunceyjiang, @Poor12)
Other Notable Changes
API Changes
- API change: The length of
AffinityNameinPropagationPolicynow is restricted to [1, 32], and must be a qualified name. (#3442, @chaunceyjiang) - API change: Introduced short name
wkfor resourceWork. (#3468, @yanfeng1992)
Bug Fixes
karmada-webhook: Introduced validation to ensure the.spec.placement.spreadConstraints.maxGroups/minGroupsin PropagationPolicy is declared with a reasonable value. (#3232, @whitewindmills )karmada-webhook: Validated the predicate path for imageOverride. (#3397, @chaunceyjiang)karmada-webhook: Added the missing federatedresourcequota validation config. (#3523, @chaunceyjiang)karmada-controller-manager: Fixed the issue that RB/CRB labels were not merged when syncing new changes. (#3239, @lxtywypc)karmada-controller-manager: Fixed the issue that control plane endpointslices cannot be deleted. (#3348, @wenchezhao)karmada-controller-manager: Corrected the issue of adding duplicate eviction tasks. (#3456, @jwcesign)karmada-controller-manager: Fixed a corner case that when there were tasks in the GracefulEvictionTasks queue, graceful-eviction-controller would not work after restarting karmada-controller-manager. (#3475, @chaunceyjiang)karmada-controller-manager: Fixed the panic issue in the case that the grade number of resourceModel is less than the number of resources. (#3591, @sunbinnnnn)karmadactl: Resolved the failure to view the options ofkarmadactl addons enable/disable. (#3298, @Poor12)karmada-scheduler: Resolved unexpected re-scheduling due to mutating informer cache issue. (#3393, @whitewindmills)karmada-scheduler: Fixed the issue of inconsistent Generation and SchedulerObservedGeneration. (#3455, @Poor12)karmada-search: Fixed the paging list issue in karmada search proxy in large-scale member clusters. (#3402, @ikaven1024)karmada-search: Fixed a panic in ResourceRegistry controller caused by receiving DeletedFinalStateUnknown object from the cache. (#3478, @xigang)karmada-search: Fixed contecnt-type header issue in HTTP responses. (#3505, @callmeoldprince)
Security
Features & Enhancements
karmadactl: Introduced--image-pull-secretsflag toinitcommand to specify the secret. (#3237, @my-git9)karmadactl: Introduced--forceflag toaddons disablecommand. (#3266, @my-git9)karmadactl: Introduced support for runninginitwithin a pod. (#3338, @lonelyCZ)karmadactl: Introduced--host-cluster-domainflag to commandinitandaddonsto specify the host cluster domain. (#3292, @tedli)karmadactl: Introduced--private-image-registryflag toaddonscommand to specify image registry. (#3345, @my-git9)karmadactl: Introduced--purge-namespaceflag fordeinitcommand to skip namespace deletion during uninstallation. (#3326, @my-git9)karmadactl: Introduced--auto-create-policyand--policy-nameflags forpromotecommand to customize the policy during the promotion. (#3494, @LronDC)karmada-aggregated-apiserver: Increased.metadata.generationonce the desired state of theClusterobject is changed. (#3241, @XiShanYongYe-Chang)karmada-controller-mamager: Provided support for Lua's built-in string function in ResourceInterpreterCustomization. (#3256, @chaunceyjiang)karmada-controller-manager: The overriderscommandsOverriderandargOverrideinOverridePolicynow supportJobresources. (#3414, @chaunceyjiang)karmada-controller-manager: Allowed setting wildcards for--skippedPropagatingNamespacesflag. (#3373, @chaunceyjiang)karmada-controller-manager/karmada-agent: Supported connection to resourceInterpretWebhook without DNS Service. (#2999, @lxtywypc)karmada-controller-manager: The--skipped-propagating-namespacesflags now can take regular expressions to represent namespaces and defaults tokube-*. (#3433, @chaunceyjiang)karmada-controller-manager: Introduced--concurrent-propagation-policy-syncs/--concurrent-cluster-propagation-policy-syncsflags to specify concurrent syncs for PropagationPolicy and ClusterPropagationPolicy. (#3511, @zach593)karmada-search: Introduced unified-auth support for proxy. (#3279, @XiShanYongYe-Chang)karmada-search: Returned the actual resource list from search API. (#3312, @tedli )karmada-search: Fixed the problem that ResourceVersion base64 encrypted repeatedly when starting multiple informers to watch resources. (#3376, @niuyueyang1996)karmada-search: Supported namespace filters in RR for search proxy. (#3527, @ikaven1024)karmada-scheduler: Optimized the region selection algorithm. (#3259, @whitewindmills)karmada-scheduler: IntroducedclusterEvictionplugin to skip the clusters that are in the process of eviction. (#3469)karmada-webhook: Inroduced validation forMultiClusterIngressobjects. (#3516, @XiShanYongYe-Chang)
Other
Dependencies
- Karmada is now built with Kubernetes v1.26.2 dependencies. (fix CVE-2022-41723) (#3252, @RainbowMango)
- Karmada (v1.6) is now built in Go 1.20.4. (#3565, @RainbowMango)
Helm Chart
- chart: Introduced
controllersconfig forkarmada-controller-manager. (#3240, @Poor12) - Users can specify command-line parameters other than the default parameters in helm values through controllerManager.extraCommandArgs. (#3268, @Poor12)
- chart: Introduced support for customizing tolerances for internal etcd. (#3336, @chaunceyjiang)
- chart: Fixed the issue of resource residue after deletion(
helm uninstall). (#3473, @7sunarni)
Instrumentation
None