karmada icon indicating copy to clipboard operation
karmada copied to clipboard

Optimize Cluster Failover

Open XiShanYongYe-Chang opened this issue 8 months ago • 6 comments

What type of PR is this?

/kind design /kind documentation

What this PR does / why we need it:

The Cluster Failover feature aims to significantly enhance the availability of services in a multi-cluster environment. As a crucial and feature-rich functionality, we have always attached great importance to user feedback and continuously iterated and optimized it, striving to create a more excellent user experience. This time, we have carried out a large-scale and comprehensive upgrade of the Failover feature.

In this proposal, we have made in-depth adjustments to the architecture of the Failover feature. Clear constraints have been added to the cluster failure mechanism, enabling unified control over the resource migration behavior triggered by cluster failures and ensuring that the migration process is more standardized and orderly.

In terms of configurability, we have optimized from multiple dimensions such as system configuration and policy API definition, providing users with a wider space for customization and meeting diverse business needs.

In addition, we have also conducted a meticulous investigation of the sources that may trigger migration behavior outside the controller, eliminating all implicit cluster failover behaviors and further enhancing the stability and predictability of the system.

Which issue(s) this PR fixes: Part of #6317

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

NONE

XiShanYongYe-Chang avatar Apr 08 '25 02:04 XiShanYongYe-Chang

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Once this PR has been reviewed and has the lgtm label, please ask for approval from xishanyongye-chang. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

karmada-bot avatar Apr 08 '25 02:04 karmada-bot

:warning: Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 48.27%. Comparing base (2f6ff56) to head (ff033ea).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #6274   +/-   ##
=======================================
  Coverage   48.27%   48.27%           
=======================================
  Files         677      677           
  Lines       56067    56067           
=======================================
  Hits        27068    27068           
  Misses      27229    27229           
  Partials     1770     1770           
Flag Coverage Δ
unittests 48.27% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

codecov-commenter avatar Apr 08 '25 02:04 codecov-commenter

/cc @kevin-wangzefeng @RainbowMango @GitHubxsy @mszacillo @zach593

XiShanYongYe-Chang avatar Apr 18 '25 09:04 XiShanYongYe-Chang

Thanks to all for your comments! To avoid distraction, let's focus on the Chinese version first and finalize it before translating it into English.

Let me change this pr to a draft first.

XiShanYongYe-Chang avatar Apr 28 '25 07:04 XiShanYongYe-Chang

@XiShanYongYe-Chang any update? Do you still want this to be included in the coming 1.14 release?

RainbowMango avatar May 08 '25 03:05 RainbowMango

@XiShanYongYe-Chang any update? Do you still want this to be included in the coming 1.14 release?

Expect to agree on the design content in the online document before synchronizing the changes to the current pr.

The original plan is expected to be implemented in release-1.14: #6317

XiShanYongYe-Chang avatar May 09 '25 01:05 XiShanYongYe-Chang