-
Notifications
You must be signed in to change notification settings - Fork 14.7k
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
Add documentation for container checkpointing feature (KEP 2008) #31753
Add documentation for container checkpointing feature (KEP 2008) #31753
Conversation
👷 Deploy Preview for kubernetes-io-vnext-staging processing.
|
Welcome @adrianreber! |
/assign |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@adrianreber thanks for this
Given that the feature is only available by directly interacting with a kubelet via HTTP, I suggest you start by writing a reference page about how to checkpoint a container via that API (to go inside https://kubernetes.io/docs/reference/node/).
I suggest that you document the body, or perhaps query string (I haven't looked) for an HTTP request that triggers a checkpoint. You should also document the local paths that the kubelet writes to (as per the existing PR), and the format of the checkpoint image.
At this stage, I wouldn't add any concept page. You could however link to that reference page from https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/). You might think it'd be better to link from the container page, and maybe eventually we would. For this early feature I want readers interested in checkpointing to be clear that you have to have a Pod in order to checkpoint one of its containers.
Please avoid linking to a KEP except for further reading at the end of a page. The aim of documentation is so that readers don't need to refer to the source code or the KEP.
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: 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 |
An example of how we document API operations: You don't have to match that style exactly; however, it'd be helpful if any new reference docs are broadly along those lines. |
@sftim Thanks for your ideas. Will try to rework this PR. |
@sftim I was thinking a bit more about your suggestions. My understanding is that I should document the API, that make sense. Should I not include any general information about checkpointing as currently in this PR in the concept page. If I should not include it in a concept page, should it be somewhere else? Next to the API documentation or not at all? |
I recommend being a little more terse - it's OK in reference documentation to say that the actual checkpointing implementation depends on the container runtime (which I believe is true) and to define only what CRI expects from that implementation.
As an example, I'd expect that you'd keep:
Unless someone writes a blog about it, though, there'd be no mention yet of the term “forensic” in that initial reference page (related: I'd assume that it's not very useful to take such evidence to a court of law and then have to explain that the feature that generated it is still alpha). All that should change if / when the checkpointing feature is scheduled to move to beta; we want production-quality docs for beta features. |
7b5f003
to
1d01d39
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @adrianreber
I hope all these suggestions are useful. I haven't explained all of them in detail; feel free to query anything you're not sure about.
content/en/docs/reference/command-line-tools-reference/feature-gates.md
Outdated
Show resolved
Hide resolved
/retitle Add documentation for container checkpointing feature (KEP 2008) |
Also: you're well ahead of the deadline! Nice work in getting reviewable changes in this early. |
75e3a36
to
67a566d
Compare
Thanks for your suggestions. I tried to include all of them. |
/hold @adrianreber Feel free to remove the hold when the upstream changes are merged. |
67a566d
to
fd881ce
Compare
/unhold |
/sig node |
Just following up, could someone from @kubernetes/sig-node-pr-reviews take a look at this? (or suggest someone else for a tech review?) |
Previews: |
@sftim Why remove the hold? The upstream change kubernetes/kubernetes#104907 is still under review. The hold was to avoid accidental merge of this PR. Am I missing something? |
Oops. I saw that a PR was merged - but it was the KEP, not the code. |
Co-authored-by: Tim Bannister <[email protected]> Signed-off-by: Adrian Reber <[email protected]>
fd881ce
to
7db58a5
Compare
@adrianreber: PR needs rebase. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Closing as it was dropped from 1.24 |
/milestone clear |
Pull request for KEP 2008: