跳转到文档内容
版本:v1.18

v1.17 升级到 v1.18

遵循常规升级流程

升级后显著变化

API 变化

  • API PropagationPolicy/ClusterPropagationPolicy 中引入了 OverflowClusterAffinities 字段,以支持在混合云调度中当主集群资源不足时将工作负载溢出到备用集群。
  • karmada-scheduler-estimator: gRPC 消息 MaxAvailableComponentSetsRequest 中引入了 AssumedWorkloads 字段。
  • karmada-scheduler-estimator: gRPC 消息 MaxAvailableReplicasRequest 中引入了 AssumedWorkloads 字段。
  • karmada-webhook: 现在会拒绝 spec.placement.clusterTolerations 中使用了 LtGt 运算符的 PropagationPolicyClusterPropagationPolicy 资源。
  • scheduler-estimator: 使用标准 protoc-gen-go 生成 gRPC API,以支持 Kubernetes 1.35+。在 gRPC 消息中为 K8s 类型引入了对等的 bytes 字段以确保兼容性。
    • ReplicaRequirements.resourceRequest 已弃用,由 resourceRequestBytes 替代,后者存储 proto 序列化的 resource.Quantity 对象。
    • ComponentReplicaRequirements.resourceRequest 已弃用,由 resourceRequestBytes 替代,后者存储 proto 序列化的 resource.Quantity 对象。
    • NodeClaim.nodeAffinity 已弃用,由 nodeAffinityBytes 替代,后者存储 proto 序列化的 corev1.NodeSelector 对象。
    • NodeClaim.tolerations 已弃用,由 tolerationsBytes 替代,后者存储 proto 序列化的 corev1.Toleration 对象。

弃用

  • Instrumentation: 已移除弃用的 Prometheus 指标标签 clustercluster_name,后续将统一使用新引入的 member_cluster 指标标签名称。
  • karmada-controller-manager: 已移除 --cluster-lease-duration--cluster-lease-renew-interval-fraction 启动参数。
  • karmada-scheduler-estimator: 已移除 estimating_plugin_execution_duration_secondsestimating_plugin_extension_point_duration_seconds 指标中 estimating_plugin_extension_point 弃用的 Estimator 标签值。
  • karmadactl: 已移除 Karmada Init Configuration 中弃用的 Etcd.Local.InitImage 字段。

依赖升级

  • karmada-controller-manager/karmada-agent: 升级 gopher-lua 依赖至 v1.1.1。
  • 升级 Kubernetes 依赖至 v1.35.3
  • 基础镜像 alpinealpine:3.23.3 升级至 alpine:3.23.4

其他

  • karmada-operator-chart: 为确保平滑升级,用户必须先升级到 v1.17.3+ 版本,再升级至 v1.18.x 版本。