support recreate a backup pod with full annotation #3144
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What type of this PR
Examples of user facing changes:
在一些开源软件的部署逻辑中,可能是通过备份 pod yaml 以及 pvc 的方式来异地恢复业务,其他框架可能不会处理掉pod的annotation中的一些标志键,比如allocated routed等。 这些框架的应用在 release-1.11 有点问题。由于release1.12 已经支持了ip pool,可以有效避免ip被抢占,同时需要新增部分pod创建直接重入以及cni循环等待ip的逻辑,以便能够兼容这些场景。
比如一个备份框架: https://velero.io/docs/v1.11/how-velero-works/
Which issue(s) this PR fixes:
Fixes #(issue-number)
WHAT
🤖 Generated by Copilot at f83b7c1
This pull request fixes some race conditions and conflicts when syncing pods and IP custom resources in the controller and daemon components. It adds a check for IP CR existence in
pkg/controller/pod.go
and a retry loop for IP CR update inpkg/daemon/handler.go
.🤖 Generated by Copilot at f83b7c1
HOW
🤖 Generated by Copilot at f83b7c1