Skip to content

Migrating from dockershim documentation#25787

Merged
k8s-ci-robot merged 1 commit intokubernetes:masterfrom
SergeyKanzhelev:migrateFromDockershim
Jan 27, 2021
Merged

Migrating from dockershim documentation#25787
k8s-ci-robot merged 1 commit intokubernetes:masterfrom
SergeyKanzhelev:migrateFromDockershim

Conversation

@SergeyKanzhelev
Copy link
Copy Markdown
Member

@SergeyKanzhelev SergeyKanzhelev commented Dec 23, 2020

/sig node

Fixes: #25768

This is the first iteration of a migration from dockershim instructions. PR is marked as WIP to collect initial feedback on a structure and content.

KEP: kubernetes/enhancements#2221

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. sig/node Categorizes an issue or PR as relevant to SIG Node. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Dec 23, 2020
@k8s-ci-robot k8s-ci-robot added language/en Issues or PRs related to English language sig/docs Categorizes an issue or PR as relevant to SIG Docs. labels Dec 23, 2020
@netlify
Copy link
Copy Markdown

netlify bot commented Dec 23, 2020

✔️ Deploy preview for kubernetes-io-master-staging ready!

🔨 Explore the source changes: b10decb

🔍 Inspect the deploy logs: https://app.netlify.com/sites/kubernetes-io-master-staging/deploys/60078a4af9a411000861a069

😎 Browse the preview: https://deploy-preview-25787--kubernetes-io-master-staging.netlify.app

@sftim
Copy link
Copy Markdown
Contributor

sftim commented Dec 23, 2020

ℹ️ Watch out - you've a space in a path.

Copy link
Copy Markdown
Contributor

@sftim sftim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @SergeyKanzhelev

I've added in a bunch of feedback. I appreciate that this is all WIP so please treat these as hints and not as instructions that you must follow.

@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

I addressed most of the feedback. I will add more content that I want to have in a first iteration and ping you again. Likely on Monday.

Thank you for your thoughtful review!

@SergeyKanzhelev SergeyKanzhelev changed the title [WIP] Migrating from dockershim documentation Migrating from dockershim documentation Dec 28, 2020
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Dec 28, 2020
@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

Thank you @tengqm and @sftim . I think we can merge it as it is now and I will be working on other pages I wanted later. Can you please make a final review for this part.

Ideas for other tasks in this section:

  • migrating Windows workloads from Dockershim
  • work around the known issues of non-dockershim runtimes
  • transition from docker CLI to crictl
  • building images on kubernetes without Dockershim

Copy link
Copy Markdown
Member

@neolit123 neolit123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for the write up @SergeyKanzhelev
as i mentioned on the original PR that did the deprecation, i think something important that we need to document is how the users can actually do an in-place swap of the container runtime on node.

@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

as i mentioned on the original PR that did the deprecation, i think something important that we need to document is how the users can actually do an in-place swap of the container runtime on node.

In-place may be one of the strategies. And vendors/admins would need to configure nodes to enable this. Simple node recreation and drain may be sufficient enough for many users. Similar to how regular upgrade to another k8s version works.

That's said, this PR creates a good place for this task description.

@neolit123
Copy link
Copy Markdown
Member

In-place may be one of the strategies. And vendors/admins would need to configure nodes to enable this. Simple node recreation and drain may be sufficient enough for many users. Similar to how regular upgrade to another k8s version works.

re-place upgrades are what most hosted vendor solutions are doing.
as part of that process, the vendors could introduce new nodes that have a CR different than Docker.

but bare metal, self-hosted hardware users do in-place upgrades, by draining and upgrading node kubelets.
similar steps would apply if they wish to replace the container runtime.
these users don't have the option to introduce new nodes and ideally we should document the in-place steps for them.

That's said, this PR creates a good place for this task description.

do you have plans to document this as part of this PR?

@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

do you have plans to document this as part of this PR?

Not in this PR. I have more topics to cover as mentioned in previous comment as well:

  • migrating Windows workloads from Dockershim
  • work around the known issues of non-dockershim runtimes
  • transition from docker CLI to crictl
  • building images on kubernetes without Dockershim

Also I'm not super familiar with how the bare metal in-place upgrades typically work. Do you have any example documentation that I can use for reference? Or maybe we can find somebody knowing these scenarios well to document them.

I cannot tell whether this document is critically important. But if it is, maybe you can send a update for KEP to make it a Step 2 graduation criteria?

@neolit123
Copy link
Copy Markdown
Member

neolit123 commented Dec 30, 2020

do you have plans to document this as part of this PR?

Not in this PR. I have more topics to cover as mentioned in previous comment as well:

  • migrating Windows workloads from Dockershim
  • work around the known issues of non-dockershim runtimes
  • transition from docker CLI to crictl
  • building images on kubernetes without Dockershim

Also I'm not super familiar with how the bare metal in-place upgrades typically work. Do you have any example documentation that I can use for reference? Or maybe we can find somebody knowing these scenarios well to document them.

kubeadm's default upgrade command performs an in-place upgrade:
https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/

the process would roughly be:

  • drain a node
  • stop the docker runtime
  • start new runtime
  • change the kubelet socket
  • restart kubelet
  • uncordon the node

except that i don't know if that is completely valid and supported.
if it's not supported our documentation needs to tell that to the users.

I cannot tell whether this document is critically important. But if it is, maybe you can send a update for KEP to make it a Step 2 graduation criteria?

i'd estimate it as more important than these topics:

  • migrating Windows workloads from Dockershim
  • work around the known issues of non-dockershim runtimes
  • transition from docker CLI to crictl
  • building images on kubernetes without Dockershim

in fact i wanted it documented before we merged the deprecation PR:
kubernetes/kubernetes#94624 (comment)

sftim
sftim previously requested changes Dec 30, 2020
Copy link
Copy Markdown
Contributor

@sftim sftim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@SergeyKanzhelev I'm afraid I do have some strong concerns that this is not yet OK to merge.

At the time of my review this PR is not marked as WIP, and proposes a change that seems to contravene the content guide on third party content. I've added a hold to make that concern clear.

Additionally, #25787 (comment) suggests that the PR should in fact still me marked as WIP.


### SignalFx (Splunk) {#vendor-signalfx-splunk}

The [SignalFx](https://www.splunk.com/en_us/investor-relations/acquisitions/signalfx.html)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this information available from the SignalFx/Splunk documentation?
Instead, readers should consult the telemetry and security agent documentation to learn how each application handles the dockershim migration.

@k8s-ci-robot k8s-ci-robot removed the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Jan 13, 2021
@k8s-ci-robot
Copy link
Copy Markdown
Contributor

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


Details

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. I understand the commands that are listed here.

@k8s-ci-robot k8s-ci-robot added cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. and removed cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels Jan 13, 2021
@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

/assign @ehashman

@sftim @kbhawkey thank you for review. I think I addressed all the feedback. Can we move forward with it?

Copy link
Copy Markdown
Contributor

@sftim sftim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kubernetes/sig-node-pr-reviews how does this look for technical accuracy?

Inline feedback is mainly minor details.


<!-- overview -->

{{< feature-state for_k8s_version="v1.20" state="deprecated" >}}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wouldn't use the shortcode here.

@derekwaynecarr
Copy link
Copy Markdown
Member

this looks good for sig-node technical accuracy.

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jan 20, 2021
@k8s-ci-robot
Copy link
Copy Markdown
Contributor

LGTM label has been added.

DetailsGit tree hash: 14133f11c54675f301399cefc9b94e5ec4d7c6b0

@dims
Copy link
Copy Markdown
Member

dims commented Jan 20, 2021

/lgtm
/approve

@sftim
Copy link
Copy Markdown
Contributor

sftim commented Jan 20, 2021

/unhold

Content guide concerns are addressed.

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jan 20, 2021
@sftim
Copy link
Copy Markdown
Contributor

sftim commented Jan 20, 2021

My concern in https://github.com/kubernetes/website/pull/25787/files#r560586158 is about attracting vandalism. I don't know if that's much of a risk.

@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

My concern in https://github.com/kubernetes/website/pull/25787/files#r560586158 is about attracting vandalism. I don't know if that's much of a risk.

Google docs keeps history. I will go ahead and create a names snapshot of the doc and will keep them making snapshot for easy recovery from vandalism. I hope this addresses the concern.

@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

@sftim this is ready to be merged.

@SergeyKanzhelev
Copy link
Copy Markdown
Member Author

Kindly ping @kbhawkey and @sftim

@tengqm
Copy link
Copy Markdown
Contributor

tengqm commented Jan 27, 2021

/approve

@k8s-ci-robot
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: derekwaynecarr, dims, tengqm

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

The pull request process is described here

Details 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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 27, 2021
@k8s-ci-robot k8s-ci-robot merged commit 4f244bc into kubernetes:master Jan 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. language/en Issues or PRs related to English language lgtm "Looks good to me", indicates that a PR is ready to be merged. sig/docs Categorizes an issue or PR as relevant to SIG Docs. sig/node Categorizes an issue or PR as relevant to SIG Node. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Move away from dockershim instructions: create a new section under Tasks

9 participants