Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature request] In-place update specified container without marking pod not ready #1808

Open
ABNER-1 opened this issue Oct 29, 2024 · 2 comments
Assignees

Comments

@ABNER-1
Copy link
Member

ABNER-1 commented Oct 29, 2024

What would you like to be added:

Enable users to control whether a pod should be marked as unready during in-place updating some containers.

Why is this needed:

In Kruise, we have introduced the InPlaceUpdateReady readiness gate, which is set to not ready before initiating an in-place update for a container.

When utilizing Kruise to perform in-place updates on less critical containers, there is a limitation: even if you configure the CloneSet lifecycle, you cannot prevent the pod from being marked as not ready during the update process.

@jairuigou
Copy link
Contributor

Hi, Is there any progress on this? I think we might need to determine in CalculateSpec whether to skip marking the Pod as NotReady based on the container names involved in this in-place update. These container names can be configured under lifecycle, for example:

lifecycle:
  inPlaceUpdate:
    markPodNotReady: true
    finalizersHandler:
    - example.io/unready-blocker
    ignoreContainersForReady:
    - container1
    - container2

@ABNER-1
Copy link
Member Author

ABNER-1 commented Dec 4, 2024

Hello,@jairuigou.
We have discussed it in the Bi-weekly Community Meeting and have reached some conclusions:

  • We need to draft a proposal to thoroughly discuss several implementation methods: adding an identifier in the environment, including an additional field in the update strategy, and specifying within the lifecycle.
  • It is necessary to review the two readiness gates to see if they can be merged from a scenario perspective to avoid increasing complexity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants