Skip to main content
Version: Next

v1.18 to v1.19

Follow the Regular Upgrading Process.

Upgrading Notable Changes

API Changes

  • Karmada API: Introduced spec.clusters[*].components to both ResourceBinding and ClusterResourceBinding to represent per-component scheduling results for workloads with multiple pod templates. The scheduler populates this field when the MultiplePodTemplatesScheduling feature gate is enabled.
  • Karmada API: The deprecated PurgeMode values Immediately and Graciously have been removed. Use Directly and Gracefully instead.

Deprecation

  • karmada-controller-manager: The recreate label of the create_resource_to_cluster metric has been deprecated and will be removed in a future release.
  • karmada-scheduler-estimator: The deprecated proto message fields ReplicaRequirements.resourceRequest, ComponentReplicaRequirements.resourceRequest, NodeClaim.nodeAffinity, and NodeClaim.tolerations have been removed. Use resourceRequestBytes, nodeAffinityBytes, and tolerationsBytes as applicable.

Dependencies

  • Karmada is now built with Golang v1.26.7.
  • Kubernetes dependencies have been updated to v1.36.4 to address security concerns.
  • The base image alpine has been promoted from alpine:3.23.4 to alpine:3.24.0 to address security concerns.

Others

  • karmada-scheduler: Promoted the PriorityBasedScheduling feature gate to Beta and enabled it by default. Workloads now can be scheduled in priority order as declared via spec.schedulePriority in PropagationPolicy/ClusterPropagationPolicy. To opt out, set --feature-gates=PriorityBasedScheduling=false.