Table of Contents generated with DocToc
Download v1.6.6 in the v1.6.6 release page.
karmada-controllr-manager
: concurrency ofbinding-status controller
inherit from the concurrency ofbinding
declared in global options. (#4461, @XiShanYongYe-Chang)karmada-search
: Add the logic of checking whether the resource API to be retrieved is installed in the cluster. (#4590, @XiShanYongYe-Chang)karmada-search
: support accept content typeas=Table
in the proxy global resource function. (#4596, @jwcesign)
- The base image
alpine
now has been promoted fromalpine:3.18.5
toalpine:3.19.1
. (#4601, @Fish-pro)
Download v1.6.5 in the v1.6.5 release page.
karmada-controller-manager
: only updateaggregatedStatus
andconditions
fields duringbinding-status controller
updating status of binding. (#4235, @jwcesign)karmada-controller-manager
: Pruned job labelsbatch.kubernetes.io/controller-uid
andbatch.kubernetes.io/job-name
which were introduced by Kubernetes 1.27. (#4265, @liangyuanpeng)karmada-search
: Fix lock race affects watch RestChan not close, causing client hanging when performing watch. (#4241, @xigang)
release1.6
: The base imagealpine
now has been promoted fromalpine:3.17.1
toalpine:3.18.5
. (#4381, @zhzhuang-zju)- Karmada is now built with Go1.20.12. (#4395, @RainbowMango)
Download v1.6.4 in the v1.6.4 release page.
karmada-controller-manager
: Fix panic when FederatedHPA's SelectPolicy is nil and FederatedHPA webhook is disabled. (#4104, @jwcesign)
NONE
Download v1.6.3 in the v1.6.3 release page.
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 proxyexec
request to a proxy issue. (#4022, @jwcesign)
- Bump k8s.io dependencies to v0.26.4 to fix a possible panic. (#3925, @liangyuanpeng)
Download v1.6.2 in the v1.6.2 release page.
- Chart: Fixed the issue that
karmada-search
no ETCD secret volume mount when using external ETCD. karmada-controller-manager
: Fixed a boundary case where thepropagationpolicy.karmada.io/name
in the label of the resource template would not be removed after deleting PP.
None.
Download v1.6.1 in the v1.6.1 release page.
karmada-controller-manager
: FixedApplied
condition 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)
None.
Download v1.6.0 in the v1.6.0 release page.
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)
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 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)
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)
- API change: The length of
AffinityName
inPropagationPolicy
now is restricted to [1, 32], and must be a qualified name. (#3442, @chaunceyjiang) - API change: Introduced short name
wk
for resourceWork
. (#3468, @yanfeng1992)
karmada-webhook
: Introduced validation to ensure the.spec.placement.spreadConstraints.maxGroups/minGroups
in 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)
karmadactl
: Introduced--image-pull-secrets
flag toinit
command to specify the secret. (#3237, @my-git9)karmadactl
: Introduced--force
flag toaddons disable
command. (#3266, @my-git9)karmadactl
: Introduced support for runninginit
within a pod. (#3338, @lonelyCZ)karmadactl
: Introduced--host-cluster-domain
flag to commandinit
andaddons
to specify the host cluster domain. (#3292, @tedli)karmadactl
: Introduced--private-image-registry
flag toaddons
command to specify image registry. (#3345, @my-git9)karmadactl
: Introduced--purge-namespace
flag fordeinit
command to skip namespace deletion during uninstallation. (#3326, @my-git9)karmadactl
: Introduced--auto-create-policy
and--policy-name
flags forpromote
command to customize the policy during the promotion. (#3494, @LronDC)karmada-aggregated-apiserver
: Increased.metadata.generation
once the desired state of theCluster
object 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 overriderscommandsOverrider
andargOverride
inOverridePolicy
now supportJob
resources. (#3414, @chaunceyjiang)karmada-controller-manager
: Allowed setting wildcards for--skippedPropagatingNamespaces
flag. (#3373, @chaunceyjiang)karmada-controller-manager
/karmada-agent
: Supported connection to resourceInterpretWebhook without DNS Service. (#2999, @lxtywypc)karmada-controller-manager
: The--skipped-propagating-namespaces
flags 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-syncs
flags 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
: IntroducedclusterEviction
plugin to skip the clusters that are in the process of eviction. (#3469)karmada-webhook
: Inroduced validation forMultiClusterIngress
objects. (#3516, @XiShanYongYe-Chang)
- 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)
- chart: Introduced
controllers
config 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)
None