Releases: karmada-io/karmada
karmada v1.1.6 release
Changes since v1.1.5
Bug Fixes
karmada-controller-manager: Fixed the panic when cluster ImpersonatorSecretRef is nil. (#2692, @stingshen)karmada-controller-manager: Disable the preemption matching of pp/cpp priority. (#2740, @XiShanYongYe-Chang)karmada-controller-manager: Fix ClusterOverridePolicy and OverridePolicy with nil resource selector could not work. (#2800, @wuyingjun-lucky)karmada-controller-manager: ignore resource that does not match the policy before applying policy. (#2815, @XiShanYongYe-Chang)Security: Add limitReader toio.ReadAllwhich could limit the memory request and avoid DoS attacks. (#2776, @Poor12)- Karmada(v1.1) is now built with Go1.17.13. (#2854, @RainbowMango)
karmada v1.3.1 release
Changes since v1.3.0
Bug Fixes
karmada-controller-manager/karmada-agent: Fixed pod information can not be collected issue when building resource summary. (#2500, @Poor12)karmada-search: fix concurrent map writes panic while list via proxy; And add cache source annotation to returned objects. (#2514, @ikaven1024)karmada-agent: FixedServiceExportcontroller can not reportendpointSlicesissue(due to misscreatepermission). (#2517, @lonelyCZ)karmadactl: Fixedinitcan not honor IPV6 address issue when generating kubeconfig file. (#2520, @duanmengkk)karmada-controller-manager: use cluster secret ref namespace in unified-auth-controller when generate ClusterRoleBinding. (#2530, @XiShanYongYe-Chang)karmadactl: Fixed--karmada-datadirectory not initialization issue ininitcommand. (#2563, @jwcesign)karmadactl: Fixed options ofdeinitcan not be shown issue. (#2567, @helen-frank)
karmada v1.2.3 release
Changes since v1.2.2
Bug Fixes
karmada-controller-manager/karmada-agent: Fixed a resource status can not be collected issue in case of Resource Interpreter returns an error. (#2429, @zhuwint)karmada-sechduler: Fixed a panic issue whenreplicaDivisionPreferenceisWeightedandWeightPreferenceis nil. (#2453, @XiShanYongYe-Chang)karmadactl: Fixedinitcan not honor IPV6 address issue when generating kubeconfig file. (#2529, @duanmengkk)karmada-controller-manager: use cluster secret ref namespace in unified-auth-controller when generate ClusterRoleBinding. (#2531, @XiShanYongYe-Chang)karmadactl: Fixed options ofdeinitcan not be shown issue. (#2566, @helen-frank)
karmada v1.1.5 release
Changes since v1.1.4
Bug Fixes
Helm Chart: Fixedkarmada-apiserveralways pending in case of upgrade issue. (#2436, @Poor12)karmadactl: Fixedinitcan not honor IPV6 address issue when generating kubeconfig file. (#2535, @duanmengkk)karmada-controller-manager: use cluster secret ref namespace in unified-auth-controller when generate ClusterRoleBinding.(#2538, @XiShanYongYe-Chang )
karmada v1.3.0 release
What's New
Taint-based eviction in graceful way
We introduced a new controller named taint manager which aims to evict workloads from faulty clusters after a grace period.
Then the scheduler would select new best-fit clusters for the workloads. In addition, if the feature GracefulEviction is enabled,
the eviction will be very smooth, that is, the removal of evicted workloads will be delayed until the workloads are available on
new clusters or reach the maximum grace period. For more details please refer to Failover Overview.
(Feature contributor: @Garrybest, @XiShanYongYe-Chang)
Global proxy for resources across multi-clusters
We introduced a new proxy feature to karmada-search that allows users to access resources in multiple clusters in a way just like accessing resources in a single cluster. No matter whether the resources are managed by Karmada, by leveraging the proxy, users
can manipulate the resources from the Karmada control plane.
For more details please refer to Global Resource Proxy.
(Feature contributor: @ikaven1024, @XiShanYongYe-Chang)
Cluster resource modeling
To provide a more accurate scheduling basis for the scheduler, we introduced a way to model the cluster's available resources.
The cluster status controller will model the resources as per the customized resource models, which is more accurate than the general resource summary. For more details please refer to Cluster Resource Modeling.
(Feature contributor: @halfrost, @Poor12)
Bootstrap token-based cluster registration
Now for clusters in Pull mode, we provide a way for them to register with the Karmada control plane. By leveraging the commands token and register in kubectl, the registration process including deploying the karmada-agent can be completed very easily. For more details please refer to Register cluster with Pull mode.
(Feature contributor: @lonelyCZ )
Significant improvement in system scalability
We improved the system scalability, such as:
- Enable pprof(#2008)
- Introduce
cachedRESTMapper(#2187) - Adopt the transform function to reduce memory usage(#2383)
With these improvements, Karmada can easily manage hundreds of huge clusters. The detailed test report will be released soon.
Other Notable Changes
API changes
- The
ClusterAPI is added optional fieldIDto uniquely identify the cluster. (@RainbowMango, #2180) - The
ClusterAPI is added optional fieldProxyHeaderto specify the HTTP header required by the proxy server. (@mrlihanbo, #1874) - The
ClusterAPI is added optional field namedResourceModelsto specify resource modeling. (@halfrost, #2386) - The
WorkandResourceBinding/ClusterResourceBindingAPIs are added fieldhealthto represent the state of workload. (@XiShanYongYe-Chang, #2351)
Bug Fixes
karmadactl: Fixed issue that Kubernetes v1.24 cannot be joined. (@zgfh, #1972)karmadactl: Fixed a panic issue when retrieving resources from an unknown cluster(karmadactl get xxx --cluster=not-exist). (@my-git9, #2171)karmadactl: Fixed failed promoting if a resource with another kind using the same name has been promoted before. (@wuyingjun-lucky, #1824)karmada-search: Fixed panic when the resource annotation is nil. (@XiShanYongYe-Chang, #1921)karmada-search: Fixed paniccomparing uncomparable type cache.ResourceEventHandlerFuncs. (@liys87x, #1951)karmada-search: Fixed failed query on a single namespace (@luoMonkeyKing, #2227)karmada-controller-manager: Fixed thatJobstatus might be incorrectly marked asCompleted. (@Garrybest, #1987)karmada-controller-manager: Fixed returning err when the interpreter webhook returns nil patch and nil patchType. (@CharlesQQ, #2161)karmada-controller-manager: Fixed that Argo CD cannot assess Deployment health status. (@xuqianjins, #2241)karmada-controller-manager: Fixed that Argo CD cannot assess StatefulSet/DaemonSet health status. (@RainbowMango, #2252)karmada-controller-manager/karmada-agent: Fixed an resource status can not be collected issue in case of Resource Interpreter returns an error. (@XiShanYongYe-Chang, #2428)karmada-sechduler: Fixed a panic issue whenreplicaDivisionPreferenceisWeightedandWeightPreferenceis nil. (@XiShanYongYe-Chang, #2451)
Features & Enhancements
karmadactl: Added--forceflag todeinitto skip confirmation. (@zgfh, #2016)karmadactl: The flag-cof sub-commandpromotenow has been changed to uppercase-C. (@Fish-pro, #2140)- ``karmadactl
: Introduced--cluster-zone` and `--cluster-region` flags to `join` command to specify the zone and region of joining cluster. (@chaunceyjiang, #2048) karmadactl: Introduced--namespaceflag toexeccommand to specify the workload namespace. (@carlory, #2092)karmadactl: Allowed reading namespaces from the context field of karmada config forgetcommand. (@carlory, #2148)karmadactl: Introducedapplysubcommand to apply a configuration to a resource by file name or stdin. (@carlory, #2000)karmadactl: Introduced--namespaceflag todescribecommand to specify the namespace the workload belongs to. (@TheStylite, #2153)karmadactl: Introduced--clusterflag forapplycommand to allow users to select one or many member clusters to propagate resources. (@carlory, #2192)karmadactl: Introduced options subcmd to list global command-line options. (@lonelyCZ, #2283)karmadactl: Introduced thetokencommand to manage bootstrap tokens. (@lonelyCZ, #2399)karmadactl: Introduced theregistercommand for joining PULL mode cluster. (@lonelyCZ, #2388)karmada-scheduler: Introduced--enable-empty-workload-propagationflag to enable propagating empty workloads. (@CharlesQQ, #1720)karmada-scheduler: Allowed extended plugins in an out-of-tree mode. (@kerthcet, #1663)karmada-scheduler: Introduced--disable-scheduler-estimator-in-pull-modeflag to disable scheduler-estimator for clusters in pull mode. (@prodanlabs, #2064)karmada-scheduler: Introduced--pluginsflag to enable or disable scheduler plugins. (@chaunceyjiang, #2135)karmada-scheduler: Now the scheduler starts to re-schedule in case of cluster state changes. (@chaunceyjiang, #2301)karmada-search: The search API supports searching for resources according to labels. (@XiShanYongYe-Chang, #1917)karmada-search: The annotationcluster.karmada.io/namewhich is used to represent the source of cache now has been changed toresource.karmada.io/cached-from-cluster. (@calvin0327, #1960)karmada-search: Fixed panic issue when dumping error info. (@AllenZMC, #2231)karmada-controller-manager/karmada-agent: Cluster state controller now able to collect partial API list in the case of discovery failure. (@duanmengkk, #1968)karmada-controller-manager/karmada-agent: Introduced--cluster-success-thresholdflag to specify cluster success threshold. Default to 30s. (@dddddai, #1884)karmada-controller-manager/karmada-agent: Added CronJob support to the default resource interpreter framework. (@chaunceyjiang, #2060)karmada-controller-manager/karmada-agent: Introduced--leader-elect-lease-duration,--leader-elect-renew-deadlineand--leader-elect-retry-periodflags to specify leader election behaviors. (@CharlesQQ, #2056)karmada-controller-manager/karmada-agent: Fixed panic issue when dumping error inf...
karmada v1.2.2 release
Changes since v1.2.1
Bug Fixes
karmadactl: Fixed a panic issue when retrieving resources from an unknown cluster(karmadactl get xxx --cluster=not-exist). (#2171, #2201, @my-git9)karmadactl: Fix Kubernetes v1.24 can not be joined issue. (#1972, @zgfh)karmada-controller-manager: Fixed Argo CD can not assess Deployment health status issue. (#2256, @xuqianjins)karmada-controller-manager: Fixed Argo CD can not assess StatefulSet/DaemonSet health status issue. (#2264, @RainbowMango)karmada-search: Fixed can not query a single namespace issue. (#2274, @luoMonkeyKing)karmada-search: Fixed panic issue when dumps error info. (#2333, @AllenZMC)Helm Chart: Fixed misconfiguredMutatingWebhookConfigurationand added missingAPIServiceconfiguration forkarmada-aggregated-apiserver. (#2420, @zhixian82)
karmada v1.1.4 release
Changes since v1.1.3
Bug Fixes
karmadactl: Fix Kubernetes v1.24 can not be joined issue. (#2199, @zgfh)Helm Chart: Fixed misconfiguredMutatingWebhookConfigurationand added missingAPIServiceconfiguration forkarmada-aggregated-apiserver. (#2421, @zhixian82)
karmada v1.0.5 release
Changes since v1.0.4
Bug Fixes
karmadactl: Fixed Kubernetes v1.24 can not be joined issue. (#2200, @zgfh)Helm Chart: Fixed misconfiguredMutatingWebhookConfigurationand added missingAPIServiceconfiguration forkarmada-aggregated-apiserver. (#2422, @zhixian82)
karmada v1.2.1 release
Changes since v1.2.0
Bug Fixes
karmada-search: Fixed panic when the resource annotation is nil. (#1939, @XiShanYongYe-Chang )karmada-search: Fixed a panic issuecomparing uncomparable type cache.ResourceEventHandlerFuncs. (#1971, @liys87x )- karmadactl: fixed promoting failed if a resource with another kind using the same name has been promoted before. (#1983, @wuyingjun-lucky )
karmadactl: Removed--dry-runflag fromdescribe,execandlogcommands. (#2036, @wlp1153468871 )karmada-controller-manager: FixedJobstatus might be incorrectly marked asCompletedissue. (#2007, @Garrybest )karmada-controller-manager/karmada-agent: fixed panic issue when dumps error info. (#2127, @AllenZMC )
karmada v1.0.4 release
Changes since v1.0.3
Bug Fixes
karmadactl: Fixed namespace can not be customized issue. (#1826, @likakuli)karmadactl: fixed can not taint while karmada control plane config is not located on default path. (#1837, @wuyingjun-lucky)karmada-controller-manager: FixedJobstatus might be incorrectly marked asCompletedissue. (#2011, @Garrybest)karmada-controller-manager/karmada-agent: fixed panic issue when dumps error info. (#2133, @AllenZMC)