Project: Karmada (Orchestration & Management / Scheduling & Orchestration)
File: CHANGELOG-1.0.md

The newly introduced `karmada-aggregated-apiserver` component aggregates all registered clusters and allows users to access member clusters through Karmada by the proxy endpoint, e.g. Retrieve `Node` from `member1`: /apis/cluster.karmada.io/v1alpha1/clusters/member1/proxy/api/v1/nodes Retrieve `Pod` from `member2`: /apis/cluster.karmada.io/v1alpha1/clusters/member2/proxy/api/v1/namespaces/default/pods Please refer to user guide for more details. Legacy workloads running in Kubernetes now can be promoted to Karmada smoothly without container restart. In favor of `promote` commands added to Karmada CLI, any kind of Kubernetes resources can be promoted to Karmada easily, e.g. ```shell kubectl karmada promote deployment nginx -n default -c cluster1 ``` Benefiting from the Kubernetes native API support, Karmada can easily integrate the single cluster ecosystem for multi-cluster, multi-cloud purpose. The following components have been verified by the Karmada community: argo-cd: refer to Flux: refer to Istio: refer to Filebeat: refer to Submariner: refer to Velero: refer to Prometheus: refer to By leverage of the new-introduced `RuleWithCluster` fields to `OverridePolicy` and `ClusterOverridePolicy`, users are now able to define override policies with a single policy for specified workloads. Introduced `init` command to `Karmada CLI`. Users are now able to install Karmada by a single command. Please refer to for more details. Now all controllers provided by Karmada work as plug-ins. Users are now able to turn off any of them from the default enabled list. See `--controllers` flag of `karmada-controller-manager` and `karmada-agent` for more details. Introduced `ReviseReplica` support for the `Resource Interpreter Webhook` framework, which enables scheduling all customized workloads just like Kubernetes native ones. Refer to for more design details. `karmada-controller-manager`: Fixed the issue that the annotation of resource template cannot be updated. `karmada-controller-manager`: Fixed the issue of generating binding reference key. `karmada-controller-manager`: Fixed the inefficiency of en-queue failed task issue. `Karmada CLI`: Introduced `--cluster-provider` flag to `join` command to specify provider of joining cluster. `Karmada CLI`: Introduced `taint` command to set taints for clusters. `Karmada CLI`: The Applied condition of Work and `Scheduled/FullyApplied` of `ResourceBinding` are available for `kubectl get`. `karmada-controller-manager`: The cluster discovery feature now supports `v1beta1` of `cluster-api`. `karmada-controller-manager`: The `Job`'s `startTime` and `completionTime` now available at resource template. `karmada-controller-manager`: introduced `--controllers` flag to enable or disable controllers. `karmada-controller-manager`: Support retain `ownerReference` from observed objects. `karmada-controller-manager` and `karmada-agent`: Introduced `cluster-cache-sync-timeout` flag to specify the time waiting for cache sync. `karmada-scheduler-estimator`: Introduced `/metrics` endpoint to emit metrics. Introduced `ApplyPolicy` and `ScheduleBinding` events for resource template. The `ReplicaSchedulingPolicy` API deprecated at v0.9.0 now has been removed in favor of `ReplicaScheduling` of `PropagationPolicy`.