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

СRI image pulling with progress notification #3542

Open
4 tasks
byako opened this issue Sep 23, 2022 · 58 comments
Open
4 tasks

СRI image pulling with progress notification #3542

byako opened this issue Sep 23, 2022 · 58 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. sig/node Categorizes an issue or PR as relevant to SIG Node. stage/alpha Denotes an issue tracking an enhancement targeted for Alpha status

Comments

@byako
Copy link
Contributor

byako commented Sep 23, 2022

Enhancement Description

Please keep this description up to date. This will help the Enhancement Team to track the evolution of the enhancement efficiently.

@k8s-ci-robot k8s-ci-robot added the needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. label Sep 23, 2022
@byako
Copy link
Contributor Author

byako commented Sep 26, 2022

/sig node

@k8s-ci-robot
Copy link
Contributor

@byako: The label(s) sig/sig-node cannot be applied, because the repository doesn't have them.

In response to this:

/sig sig-node

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.

@byako
Copy link
Contributor Author

byako commented Sep 26, 2022

/sig node

@k8s-ci-robot k8s-ci-robot added sig/node Categorizes an issue or PR as relevant to SIG Node. and removed needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Sep 26, 2022
@marosset
Copy link
Contributor

/milestone v1.26
/label lead-opted-in
(I'm doing this on behalf of @ruiwen-zhao / SIG-node)

@k8s-ci-robot k8s-ci-robot added the lead-opted-in Denotes that an issue has been opted in to a release label Sep 30, 2022
@k8s-ci-robot k8s-ci-robot added this to the v1.26 milestone Sep 30, 2022
@rhockenbury
Copy link

/stage alpha
/label tracked/yes

@k8s-ci-robot k8s-ci-robot added stage/alpha Denotes an issue tracking an enhancement targeted for Alpha status tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team labels Oct 1, 2022
@derekwaynecarr
Copy link
Member

/remove-label lead-opted-in

This design needs more time in SIG Node and would be reviewed during 1.26 for evaluation in 1.27.

@k8s-ci-robot k8s-ci-robot removed the lead-opted-in Denotes that an issue has been opted in to a release label Oct 3, 2022
@rhockenbury
Copy link

/label tracked/no
/remove-label tracked/yes
/milestone clear

@k8s-ci-robot k8s-ci-robot added tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team and removed tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team labels Oct 3, 2022
@k8s-ci-robot k8s-ci-robot removed this from the v1.26 milestone Oct 3, 2022
@byako
Copy link
Contributor Author

byako commented Oct 5, 2022

The design is proposed now in KEP PR.

@rhockenbury
Copy link

Just want to clarify - in #3547, it looks like the milestones are targeting v1.26. Based on a prior comment from @derekwaynecarr, we have this enhancement as Removed from Milestone. Let me know if you do in fact want to opt in for the v1.26 cycle.

@byako
Copy link
Contributor Author

byako commented Oct 6, 2022

Yes, @rhockenbury, that is the intention, if the proposal is approved or agreed for its details to be ironed out during v1.26 cycle - we'd like to opt this into v1.26 cycle.

@rhockenbury
Copy link

I can opt it in but it's going to be pretty tight to meet the requirements for enhancements freeze since freeze will happen in a few hours.

/label lead-opted-in
/label tracked/yes
/remove-label tracked/no

Just checking in as we approach enhancements freeze on 18:00 PDT on Thursday 6th October 2022.

This enhancement is targeting for stage alpha for 1.26 (correct me, if otherwise)

Here's where this enhancement currently stands:

  • KEP readme using the latest template has been merged into the k/enhancements repo.
  • KEP status is marked as implementable for latest-milestone: 1.26
  • KEP readme has a updated detailed test plan section filled out
  • KEP readme has up to date graduation criteria
  • KEP has a production readiness review that has been completed and merged into k/enhancements.

For this KEP, we would need to update the following:

The status of this enhancement is marked as at risk.

@k8s-ci-robot k8s-ci-robot added lead-opted-in Denotes that an issue has been opted in to a release tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team and removed tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team labels Oct 6, 2022
@rhockenbury
Copy link

Hello 👋, 1.26 Enhancements Lead here.

Unfortunately, this enhancement did not meet requirements for enhancements freeze.

If you still wish to progress this enhancement in v1.26, please file an exception request. Thanks!

/milestone clear
/label tracked/no
/remove-label tracked/yes
/remove-label lead-opted-in

@k8s-ci-robot k8s-ci-robot added tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team and removed tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team labels Oct 7, 2022
@saschagrunert
Copy link
Member

@byako exactly. Let's also check with @kubernetes/sig-node-feature-requests that it's tracked for 1.29. 👍

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Sep 6, 2023
@byako
Copy link
Contributor Author

byako commented Sep 6, 2023

At least it was present in tracking project https://github.com/orgs/kubernetes/projects/161

@saschagrunert
Copy link
Member

Yes, but SIG Node leads have to opt-in as well.

@SergeyKanzhelev
Copy link
Member

/label lead-opted-in
/milestone v1.29

@byako @saschagrunert who should be marked as a primary contact for this KEP?

@k8s-ci-robot k8s-ci-robot added this to the v1.29 milestone Sep 15, 2023
@byako
Copy link
Contributor Author

byako commented Sep 16, 2023

@SergeyKanzhelev I'm fine with being a primary contact, I've some bandwidth for this this quarter.

@salehsedghpour
Copy link
Contributor

Hello @byako 👋, Enhancements team here.

Just checking in as we approach enhancements freeze on Friday, 6th October 2023.

This enhancement is targeting for stage alpha for 1.29 (correct me, if otherwise)

Here's where this enhancement currently stands:

  • KEP readme using the latest template has been merged into the k/enhancements repo.
  • KEP status is marked as implementable for latest-milestone: 1.29.
  • KEP has a production readiness review that has been completed and merged into k/enhancements. (For more information on the PRR process, check here).

For this KEP, we would just need to update the following:

  • The latest read me template has more items in production readiness review questionnaire that need to be addressed.
  • The status should be marked as implementable in the kep.yaml file.
  • Ensure that the PR including the production readiness review has been reviewed and merged into k/enhancements.

The status of this enhancement is marked as at risk for enhancement freeze. Please keep the issue description up-to-date with appropriate stages as well. Thank you!

@byako
Copy link
Contributor Author

byako commented Sep 20, 2023

Changed status to implementable, waiting for sig-node approvers to give an approval for KEP PR.

@salehsedghpour
Copy link
Contributor

Hi @byako , checking in once more as we approach the 1.29 enhancement freeze deadline on 01:00 UTC, Friday, 6th October, 2023. The status of this enhancement is marked as at risk. It looks like #3547 will address most of the requirements.

Let me know if I missed anything. Thanks!

@byako
Copy link
Contributor Author

byako commented Oct 5, 2023

That's right, I've tried to address everything there was to address. Let's see if I can get anyone to approve anything.

@npolshakova
Copy link

Hello 👋, 1.29 Enhancements Lead here.
Unfortunately, this enhancement did not meet requirements for v1.29 enhancements freeze.
Feel free to file an exception to add this back to the release tracking process. Thanks!

/milestone clear

@k8s-ci-robot k8s-ci-robot removed this from the v1.29 milestone Oct 6, 2023
@drigz
Copy link

drigz commented Dec 8, 2023

@byako I'm not sure whether I can help, but is there a particular person or group that you're waiting for review or approval from?

We're running Kubernetes in edge environments with slow downlinks, sometimes as low as 10 Mbps, so this would be really valuable feature and much more friendly than my current hack (watch ls -s /var/lib/containerd/io.containerd.content.v1.content/ingest/). Thank you for getting it to this point!

@byako
Copy link
Contributor Author

byako commented Dec 8, 2023

@drigz, I'm happy to see that someone else is interested in this feature!
Long story short - this did not make is into 1.28, 1.29 either because of a bad luck or miscommunication, or both. See KEP PR #3547

I'll try to make this happen in 1.30, which starts about now.

The KEP itself consists of two parts: the CRI protocol part and Kubelet implementation part. What needs to be done still is Kubelet implementation part of this KEP, it has to be re-designed. SIG-scalability had concerns about impact of this feature at scale, and there were alternative implementation suggestions. The CRI protocol change appears to be fine, but I failed to secure the approval label, that seems to be just a formality.

In last cycle we agreed to remove the Kubelet implementation part from the KEP because there was too little time left to iron it out, but that didn't help either. Now that the new cycle is upon us, I think we can try to come up with new Kubelet implementation suggestion and hopefully both of them will be approved. If not - we can then push harder this time to get at least CRI change in 1.30.

I'm not sure how much time I will have in 1.30 cycle for this KEP, but there will be some. We'll see at next SIG-node meeting if I'm still driving this KEP or if someone else has more time for it than I do.

@drigz
Copy link

drigz commented Dec 8, 2023

Thank you for the explanation! The scalability question does sound tricky, as a cluster administrator I can understand Wojciech's point that it's hard to stay abreast of new features and evaluate in advance whether they'll cause problems. I can also imagine a worst case where some highly-replicated pods are updated to new containers, but the registry is overloaded and, say, trickles 1 byte / second to every node, which could generate # nodes * # pods events every minute.

Did you look into whether there is any backpressure mechanism that could protect the apiserver in a case like this? Our clusters are small so I'm not familiar with these techniques, but API Priority & Fairness seems like it could enforce a cluster-level limit on the rate of progress events. Maybe that would address the question about a protection mechanism. However, I don't know where this traffic would belong - the default levels seem focused on requests that are important for normal cluster operation, rather than informative log events like this, which are primarily of interest to humans observing the cluster. Maybe we need a new node-low priority level?

Please ignore this question if it's an unhelpful tangent!

@byako
Copy link
Contributor Author

byako commented Dec 8, 2023

I have not checked any protection measures available yet, but I'll have a look at Priority and Fairness doc, thank you.
If I'm not mistaken, current suggestion was to only publish events when something has subscribed to it. Details are to be defined.

@salehsedghpour
Copy link
Contributor

/remove-label lead-opted-in

@k8s-ci-robot k8s-ci-robot removed the lead-opted-in Denotes that an issue has been opted in to a release label Jan 6, 2024
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 5, 2024
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle rotten
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels May 5, 2024
@jon-nfc
Copy link

jon-nfc commented May 5, 2024

+1

@tonybart1337
Copy link

/remove-lifecycle rotten

@k8s-ci-robot k8s-ci-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label May 5, 2024
@BloodyIron
Copy link

I for one really feel blind not knowing the progress of an image pull. It really would be useful to have some insights into the speed being pulled (so I can also troubleshoot network related problems), some form of percentage progress, and maybe an estimate of completion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. sig/node Categorizes an issue or PR as relevant to SIG Node. stage/alpha Denotes an issue tracking an enhancement targeted for Alpha status
Projects
Status: Net New
Status: Deferred
Status: Removed from Milestone
Development

No branches or pull requests