Recording: https://youtu.be/k7kzjKnmwSI
-
[tzneal] Feedback on OOM cgroup killing change kubernetes/kubernetes#117793 (comment)
- Let’s have a kubelet option to return the old behavior. New behavior is a default
- Need to cherry-pick to 1.27
-
[haircommander] kubernetes/kubernetes#114847 follow ups
- summary of proposed policy changes.. pull-never policy pods must have the same cred to re-use an image that was pulled with a cred; kubelet needs a switch to disable validation checking of in the cache preloaded images (for disconnected mode at node / kubelet restart), otherwise images pulled with not present are subject to revalidation, and pull never will fail if never authenticated; a pod that successfully pulls an image anonymously from registry A(or default) is to be considered “unique”.. we will not use that anonymous pull as an anonymous success for pods pulling from another registry.. requires alg change in current feature implementation
- Derek: let’s consider other patterns for time slicing the auth and pull time slots, policies for specifying when and possibly for what reason we need to auth.. (align better with disconnected needs, not just performance/multi-tenant)
- future items: possible integration with registries for discovering (header/artifacts) what the expiration is for an image
-
[SergeyKanzhelev] Planning of 1.30
Eliminating perma betas. List of “old” feature gates:- AppArmor
- Mostly need to clean up tests
- Sergey to follow up
- CustomCPUCFSQuotaPeriod - Peter will take a look
- GracefulNodeShutdown
- Issues with some controllers - Ryan add a comment on KEP indicating what the issue is.
- GracefulNodeShutdownBasedOnPodPriority
- LocalStorageCapacityIsolationFSQuotaMonitoring
- Kernel issue. Other bugs reported
- kubernetes/kubernetes#112626
- Mrunal and Peter to check on kernel issue
- MemoryManager
- Got as far as PRR review. Lack of observability is concerning from PRR review - need to work on this.
- Fracesco will follow up on this.
- Swati: many issues opened for MemoryManager before GA
- totally true we need to address them - silver lining is this can be done in parallel with observability improvements
- MemoryQoS
- Cut the feature
- Experimentation may go on using NRI: https://containers.github.io/nri-plugins/stable/docs/memory/memory-qos.html Antti and Dixita made this to allow further experiments
- Ping Dixi to see if she can cut it
- PodAndContainerStatsFromCRI
- Stalled on CRI implementation of those metrics
- Working on it in CRI-O
- Need some help from Containerd side
- Exit criteria: must test performance that is not regressing
- RotateKubeletServerCertificate
- No tests and docs
- Need volunteer to clean it up
- Harche will take a look
- SizeMemoryBackedVolumes
- Need volunteers
Deprecations:
- cgroup v1
- Mrunal, Dawn:
- let’s announce deprecation in 1.30.
- Default to cgroupv2 in tests and have cgroupv1 as an “additional”
- [Alexander Kanevsky] Collect list of distress that people uses, their default cgroups, and the EOL of those disttros. e.g. centos 7 or some ubuntu lts.
- AppArmor
-
[SergeyKanzhelev] Should we cancel all the rest of the meetings for the month of Dec?
- Let;s cancel meeting till the end of the year and meet on Jan 2nd
-
[hakman] node-problem-detector maintainers are needed to keep the project alive. I tried to follow the guidelines to step up as a reviewer and later approver, but it seems there is a lack of approvers. If possible, I would like someone from #sig-node to sponsor me. Thanks in advance! kubernetes/node-problem-detector#830
- AI: SergeyKanzhelev to follow up
- Canceled due to lack of agenda.
- Please bring 1.30 planning topics for the next meeting.
- Cancelled due to Thanksgiving week in US and leads availability
- Cancelling due to lack of agenda and no bugs marked for the milestone.
- Remember to send your docs PR!
- [vinaykul] Notes from the Kubernetes Contributor Summit session on the proposal to rely on PodStatus as source of truth instead of node-local store: https://static.sched.com/hosted_files/kcsna2023/a4/KCS-LeanKubelet.pdf
- Canceled due to kubecon
Recording: https://youtu.be/RYBb81l1IGw
- [SergeyKanzhelev] Sidecar KEP change: proposed another feature gate for restarts.
- AI: plan sounds good
- [MaRosset] KEP 4216: Add changes for alpha version under RuntimeClassInImageCriApi feature gate has LGTM’s needs approvals
- AI: Mrunal and Derek to take another look. No issues were highlighted
- [haircommander/Peter Hunt] Drop-in Kubelet config complications
- [Mrunal] kubernetes/kubernetes#120616
- [Jeffwan] in-place vpa changes need review and approval
- kubernetes/kubernetes#112599 windows. done
- kubernetes/kubernetes#120145 approved
- kubernetes/kubernetes#120432
- [vinaykul] If any K8s contributors are attending Contributor Summit next week and are interested in a change I’m proposing to Kubelet (to move away from node-local checkpointing for in-place pod resize and use PodStatus instead) please drop by https://sched.co/1Sp9Z to discuss this.
Canceled due to an empty agenda. Review PRs for freeze next week.
Recording: https://youtu.be/740kJACH3i8
- [Kevin Hannon] Split Image API Issue
- CRI API uses the ImageFsInfoResponse
- Services.go uses a shortcut to get the image_filesystem
- Path forward?
- CRI API: kubernetes/kubernetes#120914
- Outcome: Good path forward.
- Questions on guarantee of support for services.go
- [Jiaxin] In-place vpa related PRs need reviewers
- fix inplace VPA stuck in InProgress when custom resources are specified kubernetes#120145
- Enhance InPlacePodVerticalScaling performance kubernetes#120432
- Configure MemoryRequest for InPlace pod resize in cgroupv2 systems #121218
- Handle the case where container resource and request set to minimum values
- [SergeyKanzhelev] #7234
- [backup-item] important-soon & LGTMed PR list
- Also re-starting the PRs stats tracking:
Total active pull requests: | 311 |
(weekly changes)
Incoming | Completed | ||
Created: | 41 | Closed: | 10 |
Updated: | 113 | Merged: | 38 |
New stats needed:
- PRs needed other SIG approvals
- Waiting for approvers
- Waiting for reviewers
- Separate cherry-picks and regressions
Recording: https://www.youtube.com/watch?v=akrWtsCbJZo
- [Adrian Reber] Graduate KEP 2008 "Forensic Container Checkpointing" from Alpha to Beta: kubernetes/enhancements#4288 (1.30)
- [mfranzil () ] Addressing CRI-API image sizes & opening up new KEP (kubernetes/kubernetes#120698 and see Slack discussion)
- [Kevin Hannon] Consensus on OOM flaky test issue
- kubernetes/kubernetes#119600
- Skip the test? - kubernetes/kubernetes#121031
- Skip the check for OOM [Todd Neal] - kubernetes/kubernetes#120460
- Closing 121031 and will go forward with 120460.
- [mahamed] NPD test change issues
- KubeCon SIgNode related talks highlights: https://docs.google.com/document/d/12kAxL7HWiPIcNqcTIjfr70-aLJyiUeGaNZAiZILfPeM/edit
Recording: https://www.youtube.com/watch?v=HdIURTQSm7Q
- [Weipeng(dastonzerg), Ian(iancoolidge)] (Sry for cutting into the first slot as we only have availabilities at early meeting time) Path forward for “in CPU static policy, non-gu pods shouldn't run on reserved CPUs” kubernetes/kubernetes#118021
- [mo] thoughts on expanding Kubelet Credential Providers
- currently it only supports giving the plugin the image as input
- we could enhance it and maybe the pod API to support sending bound SA tokens through the CredentialProviderRequest
- Will require non-trivial changes to the caching logic used by the kubelet
- original issue: Support an image pull credential flow built on bound service account tokens · Issue #68810
- we deferred this to a later time in the original KEP https://github.com/kubernetes/enhancements/pull/1406/files#r371886703
- Depends on https://github.com/kubernetes/enhancements/tree/master/keps/sig-node/2535-ensure-secret-pulled-images to make sure disk cache does not skip authz checks
- Or we could require image pull to be set to always
- Are credential providers configurable in cloud envs? i.e. can I use a registry from vendor A on a kubelet run by vendor B?
- Could we isolate this change to kubelet + credential providers? i.e. no change to the Kube REST API?
- Interested (Mo will ping regarding sig auth discussion and will chat with folks at KubeCon as well):
- Mike Brown
- Sergey Kanzhelev
- Dixita Narang
- Ruiwen
- Harshal Patil (Harshal Patil (RedHat) on k8s slack)
- Peter Hunt (haircommander)
- currently it only supports giving the plugin the image as input
- [haircommander] revitalize proc mount KEP
[klueska] Update CDI for device plugins KEP for beta graduation in 1.29Comments addressed, please review again:
kubernetes/enhancements#4238 (comment)
Recording: https://www.youtube.com/watch?v=yEOUKJCJXa8
- [Filip Krepinsky] Declarative Node Maintenance: discuss issues related to node drain and the solutions this KEP proposes
- kubernetes/enhancements#4213
- need to explore RBAC options for triggering the node drain (NodeMaintenance object)
- [Adrian Reber] Created PR to avoid filling up local disk space with too many checkpoint archives.
- kubernetes/kubernetes#115888
- bringing to sig-node for awareness
- requested by multiple users
- functionality: if more than a certain number of checkpoints are created per container/pod/namespace (default 10), older checkpoint archives are deleted
- [klueska] Update CDI for device plugins KEP for beta graduation in 1.29
- Updated issue:
kubernetes/enhancements#4009 - Pull Request with update:
kubernetes/enhancements#4238 - Update to planning doc: SIG Node - KEP Planning
- Updated issue:
- [marquiz] introducing KEP-4112 “Pass down resources to CRI”
- better visibility pod resources in CRI
- two goals
- pass down all resources (of all containers) at sandbox creation
- pass unmodified resource requests and limits to CRI
- [Kevin Hannon] PodReadyToStartContainers promotion to beta
- kubernetes/enhancements#4139
- Looking for an approver for KEP PR
- Implementation: kubernetes/kubernetes#119659
- [Kevin Hannon] Split Image Disk KEP
- kubernetes/enhancements#4198
- Any interest in separate image filesystems or deal with existing problems, please ping me or comment on KEP.
- We are interested in hearing what we should consider in scope for this
- [katarzyna, robscott] Kubelet API to return the local pods. Please review
Recording: https://www.youtube.com/watch?v=ngboQ3GvX5o
-
[haircommander] CRI stats metrics gaps
- create a configurable kubelet option to tell cadvisor which cgroups to collect from to aid migration from cadvisor to cri stats, then consider declaring metrics as deprecated
-
[Sergey Kanzhelev] kubernetes-sigs/metrics-server#1330
-
[haircommander] kubelet.conf.d configuration view
- https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/3983-drop-in-configuration/README.md?plain=1#L83
- add a e2e test for beta to double check configz endpoint correctly reflects the drop-ins
-
[vaibhav] Is there any current plan of deprecating the existing garbage collection flags in favor of eviction hard ?
-
[ndixita]
-
[swsehgal] kubernetes/kubernetes#116086
- Exclusive CPU allocation at container scope.
- Looking for feedback on a potential solution captured here.
- Do we want to pursue this in the 1.29 cycle?
- ~~[pacoxu] 116086# still need a direction: ~~
1: add it to sidecar KEP: support core binding for pod with a non-guaranteed sidecar (sidecar will not affect QoS) . I +1 for this now.2: generally, core binding for container level. Not pod QoS level(Or add new policy for container level core binding than currentstatic
).
-
[weipeng] kubernetes/kubernetes#118021
- Needs review. Does kubernetes/kubernetes#118021 (comment) answer the concern kubernetes/kubernetes#118021 (comment) ?
Recording: https://www.youtube.com/watch?v=hVuZg2mqNsw
-
KEPs planning (doc)
- [Talor] Volunteering to work on Memory Manager GA graduation in 1.29 cycle (#1769)
- [swsehgal] Can help with reviews.
- [katarzyna] kubelet API KEP
- [Alexey] CRI pull image with progress PRR
- [Kevin Hannon] Beta Promotion for PodReadyToStartContainers
- [Kevin Hannon] Splitting Image Filesystem
- [ndixita] KEP PR targeting 9/14 for PSI metric support.
- [Jiaxin] KEP-4176: Static Policy to spread hyperthreads across physical CPUs
- [Talor] Volunteering to work on Memory Manager GA graduation in 1.29 cycle (#1769)
-
[vaibhav] Is there any current plan of deprecating the existing garbage collection flags in favor of eviction hard ?
Recording: https://www.youtube.com/watch?v=5iiD9OIeJv8
- [pacoxu] Should we support static cpu policy for pod with a non-guaranteed sidecar? Details can be found at 116086#issuecomment-1655184757. I have no context about the cpu static policy initial design, it is container level cpu mapping, but depends on a pod level QoS. This is a feature request IMO.
- Swati’s comment and Francesco’s comment are most likely the answer.
- AI: gather more use cases, generalize to cover most of them.
- [klueska] Update DRA KEP to be inline with changes made in 1.28 (2 PRs)
- I am unfortunately unable to attend today, but please review the following PRs to update the DRA KEP to reflect the latest code changes from 1.28
- kubernetes/enhancements#4063
- kubernetes/enhancements#4164
- [rphillips] Node Graceful Shutdown Issue
- Pod termination is taking too long
- E2E tests do not run with graceful shutdowns enabled
- CI reboots are problematic
- PR#120273
- Issue#120271
- Presentation
- AI: [rphillips] look into termination with drains, make sure they are similar
- [katarzyna, robscott] KEP for new Kubelet API for local Pod readiness: kubernetes/enhancements#4184
- [jeffwan, LingyanYin] Follow up on Inplace VPA + core binding
Recording: https://www.youtube.com/watch?v=tNangR9QLkg
- [kannon92]: Follow up for PodReadyToStartContainers Beta
- KEP PR for beta - kubernetes/enhancements#4139
- k/k PR - kubernetes/kubernetes#119659
- [karthik-k-n]: As discussed earlier, Shall we have separate meeting to discuss on scope for dynamic node resize
- [katarzyna, robscott]
- [sunnylovestiramisu] Can I use Node -> NodeStatus -> NodePhase(NodePhase is the recently observed lifecycle phase of the node) as evidence that a node is registrationCompleted? If yes, which phase should I use? If not, can I add another status called NodeRegistered to the NodePhase and update it while we set registrationCompleted? - context issue.
- [weipeng] Need attention on PR
Fix: Exclude reserved CPUs from shared pool.
Currently thepull-kubernetes-node-kubelet-serial-cpu-manager
test lane itself has some issues, how should we proceed? kubernetes/kubernetes#118021
Recording: https://www.youtube.com/watch?v=Y9btZGnyDK0
- [rata]: In 1.28 we added support for stateful pods with user namespaces.
- Do we want to blog about it?
- [rata]: I’ll create a gdocs and share it here. Once that is finalized, I’ll open a PR to the website.
- If we can’t find someone from sig-docs to approve it, Sergey can help.
[fromani]notification: approvers PTAL to these backports - all lanes fixed, tests passing, LGTMd kubernetes/kubernetes#119432 kubernetes/kubernetes#119706 kubernetes/kubernetes#119707- [haircommander] Image GC WG time decided–can we add to the calendar?
- Wednesday 12-12:30 PST (3-3:30 EST)
- [tzneal] Kubelet detecting a readonly filesystem, what’s the boundary between node-problem-detector responsibilities and kubelet - kubernetes/kubernetes#115746
Recording: https://www.youtube.com/watch?v=wgF8UDgp1sQ
- [ruiwen] 1.28 KEPs retro (at least 30 minutes. We may not have much time for many other topics)
- [haircommander] Kubelet image GC conversation
- [Ruiwen] Pin images
- [Derek] i am curious if secret pulled images have any unique gc requirements that have surfaced…
- Tie lifecycle of image to lifecycle of pod?
- [Sergey] Mirror config into kubelet?
- Peter to begin a WG in between now and KEP freeze to come up with next steps before bringing to larger group.
- Doodle for meeting time selection: https://doodle.com/meeting/participate/id/eg2qn5jd
- [SergeyKanzhelev] Sidecar WG: join for the next push in 1.29:
Recording: https://www.youtube.com/watch?v=9BBSMdw8dMA
- [jiaxin, zewei, lingyan] continued with the meeting on July 18th, we broke down the problems into 4 of them and the detailed doc is here https://docs.google.com/document/d/1V3DLh3pH3CD-xhhJvAnOq_oWgPyjO-vj6wY6qdew9H0/edit#heading=h.by fdf putt
- [fromani] gonna comment with more details on the doc when comments enabled, the gist is: 1. did you tried also using the cpumanager policy options? full-pcpus-only and distribute-cpus-across-numa may have a positive impact. 2. can the new policy be reimplemented as policy option?
Recording: https://www.youtube.com/watch?v=V9F8jHgs6R4
-
[kannon92]Taking over PodReadyToStartContainersCondition (kubernetes/enhancements#3085)
- new issue: kubernetes/enhancements#4138
- Beta promotion in 1.29
- Any items we should have for beta?
- PR: kubernetes/kubernetes#119659
- KEP update: kubernetes/enhancements#4139
-
[mckdev] leaked kubelet leases
-
[skrobul] world-writable terminationMessage files
- PR: kubernetes/kubernetes#108076
- How to progress this PR?
- Is the Feature Gate or KEP needed?
-
[haircommander] CRI approvers
[Sunnatillo] Feedback on PR, kubelet: do not set CPU quota for guaranteed pods
[https://github.com/kubernetes/kubernetes/pull/117030](https://github.com/kubernetes/kubernetes/pull/117030) [mrunal] the was the bug related to CFS quota, this PR not using the quota [dawn] there may be a problem in kernel [dawn] what kernel version is it tested? [vaibhav] Approach to resolve eviction manager issue [https://github.com/kubernetes/kubernetes/issues/115201](https://github.com/kubernetes/kubernetes/issues/115201) [Dawn] Do you want to start enhancement?
[vaibhav] ok
Recording: https://www.youtube.com/watch?v=0Uqq8jNSSDk
- [ndixita] memory QoS Beta K8s 1.28 might be infeasible https://docs.google.com/document/d/1mY0MTT34P-Eyv5G1t_Pqs4OWyIH-cg9caRKWmqYlSbI/edit#bookmark=id.qaybju6wvb05
- Requesting kernel experts here for discussion around memory.high memcg controller usage, signals for memory reclaim(pgscan, pgsteal from memory.stat?).
- [jiaxin] new CPU Manager static policy and in-place VPA improvements (performance, make it work with CPU Manager together), KEP or PR?
- Problem 1: noisy neighbor issue. We want to spread hyper thread across physical cores to get better performance.
- Problem 2: In-place VPA currently doesn’t work with CPU Manager
- Problem 2: In-place VPA sometimes takes up to a minute to finish scaling etc. We will finish a doc with the problems and solutions for further discussion.
- [fromani] most likely a KEP+1, perhaps share a (preliminary) design doc in the community to outline the proposed scope and changes
- [Dawn] Please start with a doc on the issue / problem statement and the suggested solution.
- [Alex] Please separate in-place VPA improvements from CPU static policy.
Recording: https://www.youtube.com/watch?v=0ggcapGYwtc
- [alexeldeib] cgroupv2/v1 node memory usage calculation/alignment kubernetes/kubernetes#118916
- aligned on anon + file (rss + cache)? opencontainers/runc#3933
- testing/e2e suggestions to ensure similarity of v1/v2?
- swap usage may have a similar issue, but will follow up separately.
[kklues] KEP Update needs approvalkubernetes/enhancements#3915/cc ~~~~ since she approved the original KEP
- [karthik-k-n] looking forward for review and understand the next way forward for node dynamic cpu and memory resize KEP kubernetes/enhancements#3955
- [Arka] Exploring kubernetes/kubernetes#116662
- Understanding the issue and starting with KEP
- [SergeyKanzhelev] Sidecar PR got merged. Watch for problems and let us know.
- Uber issue: kubernetes/kubernetes#115934
- [Marosset] - kubernetes/kubernetes#116968 (cri-only stats implementation for Windows) needs sig-node reviews
- [haircommander] I will review this today
- [haircommander] shameless plug: while CRI stats are on the mind: kubernetes/kubernetes#118838
- mentioned containerd PR.. containerd/containerd#8671 will merge end of day and mark for cherry picking to 1.7/1.6
- [Weipeng]
pull-kubernetes-node-kubelet-serial-cpu-manager
failure in PR kubernetes/kubernetes#118021 (comment) - [pacoxu] ci-crio-cgroupv1-node-e2e-eviction: PR #119097, Issue #119090 PriorityPidEvictionOrdering should eventually evict all of the correct pods
- containerd ci is green(flakes for eviction order that is caused by no process stats available in /stats/summary) and cri-o failed for no PIDPressure Condition happen quickly.
Recording: https://www.youtube.com/watch?v=KMD17c5EbFU
-
[Wedson] Discuss setting a default runtime handler for CRI image operations if no runtimeclass is specified. Containerd supports using different snapshotters if pods have the runtime handler annotation specified but this can cause some issues if a pod without an annotation is scheduled after a pod with a runtime handler is specified because kubelet will think the image is already present because it was fetched with a different snapshotter.
- [mrunal] This intersects with Ensure image pull secrets. Another intersection with signature verification kubernetes/kubernetes#118652
- Wedson’s PR: kubernetes/kubernetes#118907
- [Sergey] How rm works on containerd - does it remove both or just default?
- [Peter] we can’t rely on CRI to do all of the handling because image pull policy isn’t propagated. thus, we do need the annotation approach for now until 1.29 planning when kubelet image gc undergoes redesign
-
[mahamed/upodroid] Overhauling sig-node node e2e tests. I have been working with dims on introducing EC2 node e2e tests and I want to use this opportunity to complete KEP-2464 and adopt kops' prowjob generator to generate jobs at scale as we need to test various permutations of multiple OS, architectures and CRI implementations.
Implementation: kubernetes/test-infra#29944
PTAL at the e2e tests guidance in works:
-
[fromani][discussion if time allows, otherwise PTAL and comment on github!] handling devices assignment on node reboot and kubelet restart: issue kubernetes/kubernetes#118559 and its proposed fix kubernetes/kubernetes#118635
-
[haircommander] cgroup driver implementation discussion kubernetes/kubernetes#118770
Recording: https://www.youtube.com/watch?v=nF_3dnZJVnA
Enhancements tracking board: https://github.com/orgs/kubernetes/projects/140/views/1?filterQuery=sig%3A%22sig-node%22&sortedBy%5Bdirection%5D=desc&sortedBy%5BcolumnId%5D=Status
- [robscott/kl52752] New Kubelet API to expose Pod readiness
- To come back with a doc on the use cases and address concerns raised
- [vinaykul] Merge a couple of house-keeping PRs to update in-place resize KEP
- PR k/e#4078 updates current-milestone to v1.28 per enhancement lead ask
- PR k/e#3944 updates KEP to reflect the last minute API changes we made in the actual implementation
- [klueska] KEP Update: Promote Improved multi-numa alignment in Topology Manager
- Changes needed to push this feature to beta
- Implementation PR already under review
- as she approved the initial KEP
- [swsehgal] REQUEST: Create kubernetes-sigs/noderesourcetopology-api
- We had a discussion about this and was approved on
May 23rd, 2023 * Need formal approval from SIG Node Tech Leads on the issue
- [AkihiroSuda] Wants approvals from prod-readiness-approvers for
KEP-3857: Recursive Read-only (RRO) mounts
kubernetes/enhancements#3858
Recording: https://www.youtube.com/watch?v=rR3zOunp6FE
- KEPs planning for 1.28:
- [SergeyKanzhelev] Shared calendar for the SIG: https://calendar.google.com/calendar/u/0?cid=YzY4ZGY0YTYxZDE0MTIyZThlODFlYjQyMzA5ZjZjY2E2M2ViMWI3YjQ0MzM4NGVlYmM4MDNlNjgzMmRiZTBiNkBncm91cC5jYWxlbmRhci5nb29nbGUuY29t
- [sohankunkerkar/haircommander] sandbox image pinning from CRI
- [Sergey] I don't think you need a KEP for this. Looks like a simple codebase cleanup of a dead functionality.
- Consensus is that no KEP is needed, as it’s cleaning up dead code from dockershim days.
- [haircommander/sohankunkerkar] Alternative/additional kubelet image GC schemes
- There is interest here upstream for additional kubelet gc schemes
- sig node is overloaded for 1.28, circle back in 1.29
- [SergeyKanzhelev] Highlight from the KEP: https://github.com/kubernetes/enhancements/pull/3858/files proposes to introduce the new pattern for feature detection: “RuntimeHandlerFeatures”.
[klueska] KEP: Add CDI devices to device plugin APINow ready for reviewplease take a look
- [ffromani] question/docs: are the kubelet endpoints (like /pods) meant to be consumable by non-core components like 3rd party/external software? (xref: kubernetes/kubernetes#112119)
- [Dawn] Initially wanted those API as internal-only with no guarantees
- there are also security concerns
- [Sergey] what guarantees we have for podresources?
- [ffromani] need to have more guarantees
- Syntax of API is guaranteed, but what happened on kubelet restart is not specifried
- [Dawn] Initially wanted those API as internal-only with no guarantees
- [pacoxu/dims] kubernetes/kubernetes#118441
- [Dawn] Need to create more guidance on how to troubleshoot infra issues
Recording: https://www.youtube.com/watch?v=H9vnLgvTLvo
Agenda
- [harche/mrunalp] Cautiously enabling swap only for Burstable Pods - kubernetes/enhancements#3957
- [marquiz/haircommander]: KEP 4033: discover kubelet cgroup driver from CRI
- There are other options that the CRI may want to tell the Kubelet what the state of the world is
- focus this KEP on cgroup driver, but have API extendable so those other use cases (runtime class, QOS class, user namespace support) can be easily covered in the future
- Separate CRI message from RuntimeStatus so Kubelet can request separately.
- [mimowo] Changed pod phase when containers exit with 0, related issue: kubernetes/kubernetes#118310. Summary:
- eviction_manager, preemption: 1.26: Failed, 1.27: Succeeded
- node shutdown 1.26: Failed, 1.27: Succeeded
- active deadline exceeded 1.26: Failed, 1.27: Failed
- [astoycos] bpfd Presentation!
- Slides
- [SergeyKanzhelev] SiG node may help in terms of attributing events to pods metadata. When kernel events received - would be nice to know what Pod is running the process that sent this event. Please let us know if anything can be improved from SIG Node side to help with this.
- [byako] KEP-3542 CRI PullImageWithProgress https://github.com/kubernetes/enhancements/pull/3547/files
- [adilGhaffarDev] What is the status of this fix: kubernetes/kubernetes#117030 what can we do to escalate it, if possible?
- [haircommander] KEP 3983: Add support for a drop-in kubelet configuration directory
- Mostly a review request
- [SergeyKanzhelev] kubernetes/kubernetes#116429 sidecar PR.
Recording: https://www.youtube.com/watch?v=shmDtrq55V8
Agenda
- [intunderflow] Following up from meeting on April 25th talking about lowering frequency of Startup / Readiness probe failure events, my preferred approach after digesting feedback, thoughts from the group about this approach? If happy I can put together a KEP
- Always emit an event when the result of a probe changes (between Success and Failure, or Failure and Success)
- When a startup probe fails or a readiness probe fails:
- We emit the first failure
- We then emit a failure every 1 hour if still failing
- Should this event be the same as the first failure, or should it be perhaps something like “Probe still failing since [first failure time]”
- No changes to liveness probes failing for now: * This will still cause mass event emission to hit the rate limit, but I want to tackle this incrementally and follow up on liveness probes * Lots of users watch for liveness probe failed events, so it's something to be particularly careful about in my opinion (people of course watch readiness/startup probes too, but I’d assume not as many / that liveness probes are the most populous probe type)
- Thoughts from the group about this approach? If happy I can put together a KEP
- [intunderflow] kubernetes/kubernetes#115963 needs approver - I’d like to target this for 1.28 if no objections
- [ffromani] REQUEST: looking for approvers for (all items already part of 1.28 tracking document)
- kubernetes/enhancements#2403 (should be trivial)
- kubernetes/enhancements#3545
- Could we please also review/approve kubernetes/enhancements#3980 so we can merge kubernetes/kubernetes#116525
- [swsehgal] Proposing NodeResourceTopology API under kubernetes-sigs: kubernetes/org#4224. Previously the API was proposed under staging but that proposal was rejected during API review.
- +1: Alexander +1: Francesco
- [astoycos] Super Short Introduction of https://github.com/bpfd-dev/bpfd (propose an actual 15-20 minute presentation for next week?) Also reach out in K8s slack #bpfd and #ebpf
Recording: https://www.youtube.com/watch?v=gnbV1nrXVZc
Agenda:
- [everpeace] I opened a PR for KEP-3169.
- PR: kubernetes/kubernetes#117842
- KEP: KEP-3619: Fine-grained SupplementalGroups control
- I would like the community to triage this and review it.
- I’m very glad if someone would mentor me because it’s first time for me to make PR including API changes.
- NOTE: I’m sorry that I can’t show up to the community meeting due to timezone gap (2am in my timezone(Tokyo🇯🇵🗼)). I put this agenda to gain visibility and to help 1.28 planning.
- [tzneal] Discuss using the cgroup aware OOM killer kubernetes/kubernetes#117793
- KEP needed for the API change?
- Potential Options
- No config, just a new default
- Add API to Container to allow workload specific configuration
- Add flag to kubelet
- [Dawn] Let’s just change the default
- [mrunal] OK with this.
- Dawn will comment on the PR.
- [mimowo]
- kubernetes/kubernetes#117586 needs review and approver
- kubernetes/kubernetes#115688 needs discussion. As suggested by API reviewer (kubernetes/kubernetes#115688 (comment)) we should only add the condition when the Pod is actually killed. This means that refactoring of the handling of the activeDeadline handler is needed.
Questions:
- Can this refactoring be led by sig-node?
- Alternatively, can we go with the simple approach of adding the condition whenever when timeout is exceeded, as suggested in the POC PR: kubernetes/kubernetes#117973. Then, we could document that the behavior when the timeout is exceeded, but the containers aren’t killed (but terminate on their own) is subject to change. Proposed KEP updated for review: kubernetes/enhancements#3999
- [SergeyKanzhelev] Sidecar KEP: https://github.com/kubernetes/enhancements/pull/3968/files and kubernetes/kubernetes#116429
- [mo] looking for a way to provide dynamic environment variables at runtime without persisting them in the Kube API (because the contents are sensitive)
- would like to avoid any approach that uses admission to mutate pods
- [Anish Ramasekar to Everyone (10:43 AM)] This is the subproject: https://github.com/kubernetes-sigs/secrets-store-csi-driver
- [Sergey] will this help: kubernetes/enhancements#3721?
- Init container can download and then regular container will use those.
- [mo] this ^^^ can work. Is this the right way?
- [kevin] are you familiar with DRA? CDA is lowest level that makes abstract notion of a device available for a container. CDA can inject environment variables into the container. There may be a “device” that will perform all vault work and then will inject those variables to the container
- [mo] what is the security model?
- [kevin] this information will end up being statically stored at CDA file host system
- [mo] is there way to observer this from kubernetes API?
- [kevin] DRA is generalization of persistent volumes API. So it will provide some isolation.
- [Sasha] this will not protect from exec into container. As no env variables would do.
- [mo] can other containers see it? non-priviledged for example.
- [mo] what is the interface for DRA? Can it be Daemonset in runtime?
- [kevin] there is a talk about it at KubeCon. It has all the pieces to build this.
- [Kevin] Here is my talk on how DRA drivers are structured:
- [klueska] New Feature for 1.28: Add CDI devices to device plugin API
- Already added to the planning doc
- Simple extension given that CDI devices have now been added to the CRI
- does it make sense for you to be the approver?
- kubernetes/enhancements#4009
—- MOVED from 5/2/2023. Move above this line if you plan to show up on the meeting —
- [kannon92] PRs need approval
- kubernetes/kubernetes#116231 - Cleanup around image parsing, test fixes, and more coverage. Has LGTM but needs a final approval
- kubernetes/kubernetes#117702 - Rename PodHasNetwork to PodReadyToStartContainersCondition Code PR. Has LGTM but needs approval
Recording: https://www.youtube.com/watch?v=18cRhXTf0Cc
Total active pull requests: 242
Incoming | Completed | ||
Created: | 19 | Closed: | 9 |
Updated: | 118 | Merged: | 17 |
- [swsehgal] Community discussion on device Manager recovery bugfix backport
- [karthik-k-n] Community thoughts on Dynamic Node resize proposal
- [clayton] Discussion of kubelet state improvements for 1.28 - trying to identify which areas to focus on
-
- doc crafted at end of 1.27
- Right now was planning on working with in-place resource (to reduce complexity encountered during alpha and before beta), and also to help address the kubelet subcomponents using the wrong pod_manager kubernetes/kubernetes#117371 (ryan reviewing) to unblock harder problems static pods are encountering
- Other interest from contributors?
- kubelet plugins potentially kubernetes/enhancements#3853
- sidecar enh: kubernetes/enhancements#753
- Github project tracking ongoing pod lifecycle issues: https://github.com/orgs/kubernetes/projects/133/
- Improvements in testing from KEPs
-
- [zmerlynn] Discuss
- Dawn: Maybe first restart free, don’t punish
- Clayton: DaemonSet that runs effectively a for loop to anneal policy
- There are things we don’t account for, like system resources in a crash looping pod - what does it actually cost to restart a container
- Derek (on chat): I wonder if we need a way to measure a qps generally for the behavior that crashloopbackoff is trying to protect
- systemd gives StartLimitBurst and then when that is exhausted you go to StartLimitInterval.... feels like we could give a burst
- Sergey: Maybe we also need “it’s a bad failure, reschedule me”
- David: Is it up to the admin to define this?
- Kevin: KEP in question that Sergei mentioned: kubernetes/enhancements#3816
- Clayton: Full backoff doesn’t make sense for static pod anyways
—-- End of the meeting. MOVED TO THE NEXT WEEK —--
Recording: https://www.youtube.com/watch?v=whN6nPOp62g
Total active pull requests: 241
Incoming | Completed | ||
Created: | 27 | Closed: | 11 |
Updated: | 88 | Merged: | 25 |
- [SergeyKanzhelev, mrunalp] retro and 1.28 planning
- [Ruiwen] 1.27 retro
- [mrunal] planning: SIG Node - 1.28 Planning
- [Seaiii] kubernetes/kubernetes#113883 The second time the pod deleted the grace period does not take effect .Please review update PR
Recording: https://www.youtube.com/watch?v=oQi3gPsODV0
- [intunderflow] kubernetes/kubernetes#115963 needs approver
- [intunderflow] Thoughts on startup probe / readiness probe event emission behavior?
- Currently the readiness probes and startup probes emit ContainerUnhealthy events each time they probe the container and it is Unhealthy.
- For liveness probes a container going from a healthy state to suddenly unhealthy is important and notable, but for Readiness and Startup probes it's pretty typical for a container to be unhealthy since the point of these probes is to wait until the container is healthy.
- Emitting these events eats into the rate limit of 25 events per object sent to the API server.
- Readiness probes and Startup probes failing multiple times is pretty typical of their operation, since their point is to gate the container until it succeeds.
- It would be nice if Readiness probes and Startup probes didn’t eat events as fast as they did.
- My thoughts and opinions:
- We could consider changing the startup and readiness probe to only emit when they probe the container and it is healthy (since that leads to a change in state and action being taken)
- My PR above (if approved) would still then report if a startup probe or readiness probe fail conclusively against a container
- [Action Item] Count incrementation on Events? Why not working for failing probes?
- [Ryan] The event recorder has a max retries of 12
- https://github.com/kubernetes/client-go/blob/master/tools/record/event.go#L38
- [Todd] we need events to be re-emitted periodically. Do not discard them universally. Less frequency, but definitely more events we want to know about like flakes of readiness probe.
- [SergeyKanzhelev] Probes functionality cleanup: https://docs.google.com/document/d/1G5nGH97s3UTANbA5IyQ7nVIHnrLKfgVZssSYnvp_qX4/edit
- [haircommander/Peter] Kubelet drop-in config support
- After conversation about dropping cli flag support, it was illuminated that our users (downstream in Openshift) rely on this feature. Could be a good time to introduce drop-in file support like in
/etc/kubernetes/kubelet.conf.d
- Peter to make proposal to SIG-Arch to see if other components would like to adopt a similar pattern, as well as open an issue to have an asynchronous conversation.
- After conversation about dropping cli flag support, it was illuminated that our users (downstream in Openshift) rely on this feature. Could be a good time to introduce drop-in file support like in
- [SergeyKanzhelev] kubernetes/kubernetes#116429 , uber issue: kubernetes/kubernetes#115934
No call (kubecon)
Recording: https://www.youtube.com/watch?v=R9bml9YmP3k
- [klueska] Need approval on PR to update DRA KEP with changes merged into v1.27
- [liggitt/derek] proposal to support node/control-plane skew of n-3 (KEP-3935, draft proposal)
- What in-progress node feature / cleanup rollouts rely on n-2 skew?
- might delay default-on of in-place-resize for one release (
AI: jordan / vinay sync up); notes from jordan/vinay 2023-05-03:- a 1.27+ node with the feature disabled will not modify resources as requested, will mark pods requesting resize as "infeasible"
- a pre-1.27 node will not modify resources as requested, with no user feedback
- after 1.27 work, we realized that kubelet perpetually reports pod resize as InProgress when running against a containerd that supports UpdateContainerResources CRI API (containerd ~1.4/~1.5 era) but does not support ContainerStatus CRI API (added to CRI API in k8s 1.25, supported in containerd 1.6.9+), so there's already user feedback improvements to make and possibly delay beta for
- if we were ready to promote in-place-resize to beta in 1.29, n-3 skew would mean 1.26 kubelets would not give any user feedback about lack of support for the feature, but would otherwise fail safe
- might delay default-on of in-place-resize for one release (
- derek:
- include alternative considered of supporting in-place minor upgrades, rationale why that approach wasn't chosen
- OS upgrades, immutable nodes can't use in-place for minor upgrades
- cost of supporting/testing in-place minor upgrades is significantly higher, impacts development of new features and evolution of existing features
- make sure it is clear what guidance should be given to people working on new features for what to do for features older kubelets don't support yet
- include alternative considered of supporting in-place minor upgrades, rationale why that approach wasn't chosen
- What in-progress node feature / cleanup rollouts rely on n-2 skew?
- [mweston & atanas] Still working on the https://github.com/obiTrinobihttps://github.com/obiTrinobiIntel/enhancements/tree/atanas/cci-updated/keps/sig-node/3675-resource-plugin-managerIntel/enhancements/tree/atanas/cci-updated/keps/sig-node/3675-resource-plugin-manager KEP. Need help with scheduling re Dawn or other member in getting feedback.
- [mrunal] Canceling next week's meeting for kubecon.
Recording: https://www.youtube.com/watch?v=Y_TWnklb0vI
- [pacoxu] undeprecate kubelet --provider-id flag: what are your plans around graduating kubelet config file/actually deprecating these flags in the future?
- [iancoolidge] Follow-up on issue kubernetes/kubernetes#115994
- discuss specifying –reserved-cpus and also –exclusive-cpus or something like that (see kubernetes/kubernetes#115994 (comment))
- fromani: adding what seems another cpu pool is something already emerged from different conversations and would probably deserve a separate conversation (e.g. not a simple bugfix)
- Please also look at KEP: https://github.com/obiTrinobiIntel/enhancements/tree/atanas/cci-updated/keps/sig-node/3675-resource-plugin-manager
- discuss specifying –reserved-cpus and also –exclusive-cpus or something like that (see kubernetes/kubernetes#115994 (comment))
- [rata] Userns KEP 127: add support for stateful pods
- We don’t need code changes in the kubelet for this (just change the validation)
- Therefore, we want to just change the scope of the KEP to support stateful pods too
- We want to deprecate the feature gate “UserNamespacesStatelessPodsSupport” and add “UserNamespacesSupport”
- This new feature gate will activate userns for all pods (stateful/stateless)
- If this sounds good, we will do a PoC and propose the KEP changes widening the scope and explaining how the stateful case works too.
- [mrunal] This may be okay but let’s open a KEP change and get opinions of other reviewers involved.
- [mrunal] We need to start thinking about how user namespaces will work with pod security policies.
- [rata]: Mrunal and I will join sig-auth to start the PSS conversation
- [rata] Maybe they need fields to be GA? But happy to start discussing.
Recording: https://www.youtube.com/watch?v=yb_LtE0hGDc
-
[SergeyKanzhelev] Annual Report: #7220
Let’s edit together: https://docs.google.com/document/d/17Z3LO3pSdv9R-v9yLIMO5a46nwXRQTsaEDg0iN74rhs/edit?usp=sharing
-
[jlpedrosa]
- memory.oom.group setting to oom the whole cgroup in the container.
slack convo.- [Mrunal] container level makes sense
- [Sergey] for sidecars we will adjust oom score for sidecars so it’s almost the “whole Pod” being killed
- [Mrunal] we can start with the issue, may not need a KEP for this
- [Todd Neal] I think there is a potential for API surface as the new behavior may not be desired in all cases. haproxy was the example brought up in Slack where it may handle OOM correctly on a single process. Most everything else probably doesn't, so you might want a default of turning oom.group on and allowing containers to opt-out.
- memory.oom.group setting to oom the whole cgroup in the container.
Recording: https://www.youtube.com/watch?v=IjxUleYcKgk
- [iholder101/harche] - Graduating Support for Swap to Beta
- [adilGhaffarDev] - kubectl drain improvements
- I would like to add some improvements in kubectl drain. Kindly check this issue: kubernetes/kubernetes#116210
- [mrunal] Cgroups v1 deprecation
Recording: https://www.youtube.com/watch?v=e0DA7x4zTs0
Total: 200
Incoming | Completed | ||
Created: | 86 | Closed: | 35 |
Updated: | 203 | Merged: | 103 |
Needs approval: label:lgtm -label:approved 41
-
[SergeyKanzhelev] Release blocking:
Standalone kubelet mode is de facto GA feature, even though not well documented. No GA feature should be broken by feature gate enablement.
Options: introduce standalone mode tests like so:
-
revert changes caused the failure
-
fix changes caused the failure before the release
InPlace update TODOs:
-
api change
-
panic in standalone mode
-
Try moving forward with the feature.
-
[SergeyKanzhelev] Sidecar KEP. kubernetes/kubernetes#116429
-
[pacoxu] add net.ipv4.ip_local_reserved_ports to safe sysctls#115374, the sysctl is changed to be namespaced since kernel 3.16, and the PR will add it to safe syctl only if the kernel version is 3.16+.
- https://github.com/kubernetes/system-validators/blob/a0cb0d12f4d8ed79fa4ee4725ae179528dd2d522/validators/kernel_validator.go
- [Paco] I have opened an issue (kubernetes/kubernetes#116799) to gather feedback and track whether we should modify the minimum kernel version.
-
[klueska] Need approval for feature gates on this PR:I cannot attend the meeting unfortunatelyThe PR is close, and I am confident we can get all the comments addressed before 5pm, but I need help getting the feature gates approved.kubernetes/kubernetes#115847
-
[aravindh/sig-windows] Next steps for merging KEP 2258: add node log query
- Discussed previously on
- [marosset/sig-windows] kubernetes/kubernetes#116546
- updating perfCounterUpdatePeriod in kubelet to 10 seconds on Windows to address some perf issues when running logs of pods
Recording: https://www.youtube.com/watch?v=KgAR613c1Bs
Total PRs: 241
Incoming | Completed | ||
Created: | 35 | Closed: | 14 |
Updated: | 136 | Merged: | 31 |
[https://github.com/kubernetes/kubernetes/issues?q=is%3Aissue+is%3Aopen+label%3Apriority%2Fimportant-soon+label%3Asig%2Fnode](https://github.com/kubernetes/kubernetes/issues?q=is%3Aissue+is%3Aopen+label%3Apriority%2Fimportant-soon+label%3Asig%2Fnode)
- [SergeyKanzhelev] 19 enhancements tracked, and at the moment 0 were opted-in for Feature Blogs.
- [KevinHannon@kannon92] Starting work on kubernetes/enhancements#3816 (Pending Pods stuck due to configuration errors) \
- Created a POC PR to see about validation of some of these configuration errors \
- kubernetes/kubernetes#115736 \
- Should I consider moving this into a KEP of its own?
- [Francesco @ffromani] setting rate limits for kubelet endpoints (required for KEP 606 GA). Items emerged during the API review:
- kubelet has a lot of endpoints, we are adding rate limiting only for the podresources. Is this coherent with the overall direction of kubelet serving?
- The rate limit is global. Clients can disrupt each other. Is this acceptable?
- vs per-connection rate-limit. But then would we need to limit also the max connections?
- Is the QPS/Burst setting good enough for kubelet?
- vs priority-and-fairness like API server
- [SergeyKanzhelev] kubernetes/kubernetes#116121 any concerns with increasing qps limits?
- This really helps, and the first throttling issue is volume mount timeout errors.
- [mimowo] Looking for reviewers / approvers for:
- Mark Deleted Pending Pods as Failed by Kubelet kubernetes/kubernetes#115331
- Move Deleted Running pods to terminal phase by Kubelet kubernetes/kubernetes#116324
- [vinaykul] InPlace Pod Vertical Scaling - status update
- [mahamed/@upodroid & todd/@tzneal] Kubelet/node e2e tests on AWS:
- kubernetes/test-infra#28899 Top Level Issue
- Todd’s PR to add the runner logic in k/k kubernetes/kubernetes#116236
- My PR to add vanilla ubuntu2204 public GCE images to tests. kubernetes/test-infra#28856
- e2e ubuntu tests are passing on EC2 instances: kubernetes/kubernetes#116114
- AWS accounts for node e2e tests have been created, I need to configure the prow jobs to run tests on there.
- AI for Mahamed to take back to sig-k8s-infra
- How can members of sig-node access the AWS accounts and view failing nodes, etc?
- Someone from AWS to help with this
- [Dawn] @mahamed, here is recent discuss on CI failures on Fedora: https://docs.google.com/document/d/1Ne57gvidMEWXR70OxxnRkYquAoMpt56o75oZtg-OeBg/edit#bookmark=id.rglbf1gnhrpp
- [atanas] still working on kubernetes/enhancements#3853 and will have further updates soon. Next meeting is March 7th, directly after this one, zoom here https://us02web.zoom.us/j/86511166765 (need to also update Dawn-schedules don’t work correctly so need 2 meetings, unfortunately)
- Attribute-based API update
- Architecture Sync - move towards a single CCI driver implementation which can understand DRA claims
- Demo covering possible DRA claim-based approach combined with CCI , boot strap the system , run std pods, demonstrate driver failure scenario , allocate shared and exclusive resources.
- [SergeyKanzhelev] any special protections needed for https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/events/event.go (see conversation)?
- [Philip Laine] Read only CRI API access
- containerd/containerd#8085
- cri-o/cri-o#6667
- Mike Brown(brownwm/mikebrow): suggest opening a google doc link it here.. invite mrunalp, peter hunt, sasha, samuel, mike brown, others that have an interest in shaping the cri into namespaced(or rbac)/access patterns for some cases like monitoring
Recording: https://www.youtube.com/watch?v=IHcI6Jwo5PQ
Total PRs: 248
Incoming | Completed | ||
Created: | 36 | Closed: | 9 |
Updated: | 83 | Merged: | 11 |
- 01:00 UTC Wednesday 15th March 2023 / 17:00 PDT Tuesday 14th March 2023: Week 10 — Code Freeze
- [vinaykul] InPlace Pod Vertical Scaling PR - status update
- Merged 🙂
- ref WIP PR: kubernetes/kubernetes#116119
- [SergeyKanzhelev] Sidecar: kubernetes/kubernetes#115934
- [mimowo]
- need reviewer/approver for: kubernetes/kubernetes#116082. Is it an issue upstream in containerd? [mike brown] let’s chat I don’t think this is a problem with containerd.. more an issue of expectation of the start request being serial and responding before the async start kicking off.. iow add a sleep/yield to the test itself before it “ooms” and you will/should get the started response flowing back through kubelet before the oom happens.. Changing to an ack model for the start request before actually starting would be in conflict with the start being able to return certain errors.
- Discuss implementation decisions for kubernetes/kubernetes#115331. Specific questions:
- Should we restrict the handling to pods with finalizers (to save QPS)?
- When Kubelet restarts there is a short time window that the phase may flip back to Pending, is this something specific to this scenario, or a general behavior / bug in Kubelet?
- Should we also make sure that all Running pods with deletionTimestamp end up in terminal phase? This is currently not the case for pods with RestartPolicy=OnFailure or Always.
- Followup:
- Clayton’s PR that may fix the failure case: kubernetes/kubernetes#113145
- E2E added to Clayton’s PR would be helpful to see if the issue is fixed or not
Recording: https://www.youtube.com/watch?v=Hod1MGk99lc
Total PRs: 230
From Jan 24th:
Incoming | Completed | ||
Created: | 129 | Closed: | 48 |
Updated: | 177 | Merged: | 76 |
- [lucysweet] Give an indication in container events for probe failure as to whether the failure was ignored due to FailureThreshold
- [SergeyKanzhelev] replied on the issue
- [iancoolidge] Clarify –reserved-cpus behavior with static CPU manager, but only a subset of pods are static
- [swsehgal] This kubelet flag is to specify explicitly the list of CPUs for kubernetes processes or OS processes. These CPUs are removed from the default pool that CPU Manager in kubelet uses for allocation to pods.
- [dawnchen] You can view –reserved-cpus as the interface for non-pod tasks running on the node including kubelet, container runtime, and kernel threads. It is a complement for the static CPU managers.
- [iancoolidge] consensus from discussion is that no workloads should get scheduled on the –reserved-cpus, this seems to be happening on our test case though.
- iancoolidge to create issue on github (thanks all for discussion!)
- kubernetes/kubernetes#115994
- [mimowo] Looking for approval from sig-node for kubernetes/kubernetes#113205. Then, for: kubernetes/kubernetes#112977.
- [atanas] still working on kubernetes/enhancements#3853 and will have further updates soon. Next meeting is March 7th, 6:00am PST zoom here: https://us02web.zoom.us/j/82567156922?pwd=Q2xscE0rRjluRTlvdk5FK3hzUFpDQT09 Plan for next meeting is to include a demo and be ready with more cleanup based on feedback from today.
Recording: https://www.youtube.com/watch?v=NsV9TVcJw54
- [SergeyKanzhelev] we are tracking 23 KEPs this release: https://github.com/orgs/kubernetes/projects/117/views/1?filterQuery=+status%3ATrac[…]ode+&sortedBy%5Bdirection%5D=desc&sortedBy%5BcolumnId%5D=Status
- Cut from milestone:
- [SergeyKanzhelev] Annual report tasks: https://github.com/kubernetes/community/blob/master/sig-node/annual-report-2022.md
- [haircommander] automatic cgroup driver matching between kubelet and CRI
- [paco]+1 for this. I opened a PR to do it for dockershim #98357 before.
- consensus is to have the runtime be the source of truth, and report to the Kubelet what cgroup driver to use with a field in the runtime status call.
- Peter to pursue a KEP for this in 1.28
- [kad] while we are on this, we can also eliminate misconfiguration between kubelet and runtimes on reserved/infra cpuset:
--reserved-cpus
for kubelet/--infra-ctr-cpuset in cri-o.
- [Yuan Chen, Deep Debroy]] Discuss decoupling no-execute-taint-manager from node-lifecycle-controller
- Mainly a refactoring change as the two are part of the same controller but have somewhat independent functions.
- With https://github.com/kubernetes/enhancements/blob/74e610bb0f7e40862688e8a434c77bfafc53cb9e/keps/sig-scheduling/20200114-taint-based-evictions.md, the ability to disable no-execute-taint-manager is going away.
- [paco] karpenter has a requirement of
[startup taint](https://github.com/kubernetes/kubernetes/issues/115139#issuecomment-1424597021)
which is interesting. I am not sure if this can be a possible user case.
- [MikeBrown] Just a reminder probe granularity enhancement kubernetes/enhancements#3067 needs review.
Recording: https://www.youtube.com/watch?v=cam97qjy8qE
- [rata]: Userns KEP PR rework with idmap mounts.
- I think this should be ready to approve for 1.27. Is anything missing?
- [klueska] KEP with PodResources extensions for DRA
- Looking for final approval by and / or @mrunal
- There’s one small change I’d like to see made, but if we get an /approve with a /hold I can make sure the change gets in before giving a final /lgtm
- kubernetes/enhancements#3738
[klueska] Milestone and tracking for updates to DRA enhancement issue- ~~Needs **
lead-opted-in
andmilestone 1.27
label (staying in alpha) kubernetes/enhancements#3063
- ~~Needs **
- [vinaykul] InPlace Pod Vertical Scaling PR - status update
- Please review and merge k/enhancements housekeeping PR #3845
- To catch up to the latest KEP template, the PR adds integration test section and responds to node scalability section.
- I have rebased and updated PR #102884 after LGTM by @thockin
- Squashed all API commits into single commit + generated files commit
- Separate commit for scheduler changes
- I plan to squash various kubelet commits into 2 or 3 commits if that’s ok
- @thockin awaits Derek’s re-LGTM/approve before approving the PR.
- I plan to create follow-up PRs to address a few outstanding items:
- ResizePolicy name restructuring
- Use PodStatus.QOSClass instead of GetPodQoS across K8s codebase
- Please review and merge k/enhancements housekeeping PR #3845
- [Atanas] CCI KEP:
- kubernetes/enhancements#3853
- Addressing comments as they come in.
- Brief discussion on anything else outstanding.
- Reviewers: Swati and Kevin, Approver: Dawn or Derek
- [qbarrand] Kernel Module Management
- looking for sponsors to get mresvanis into the kubernetes / kubernetes-sigs orgs - contributions
- PR to update admins and maintainers
- [mimowo] Ask for final review and approval from sig-node for: Update for second Beta with GA criteria for "KEP-3329: Retriable and non-retriable Pod failures for Jobs"
Recording: https://youtu.be/96DTU9ncSLA
- [Aravindh Puthiyaparambil] KEP 2258: Node service log viewer
- KEP 2258: add node log query (implementation
- Discuss Jordan’s comment
- sig-windows is interested in the feature as it helps debugging Windows nodes. We would like to get the viewpoint of #sig-node whether we should move forward or not based on Jordan’s feedback ie. add the feature disabled by default and a warning when enabling.
- [mimowo] Heads up and discuss Kubelet changes for Update for second Beta with GA criteria for "KEP-3329: Retriable and non-retriable Pod failures for Jobs"
- [Sergey] good direction, original language was a bit cryptic, need more examples
- [mimowo] it is already fixed
- [mrunal] related to pod lifecycle - Ryan and David might need to review
- [David]+1 yes it is related to pod lifecycle, will review as well
- [Sergey] good direction, original language was a bit cryptic, need more examples
- [pacoxu] Two bugfix PRs need to be reviewed for
[LocalStorageCapacityIsolationFSQuotaMonitoring](https://github.com/kubernetes/enhancements/issues/1029)
(which is promoted to beta in v1.25.0 and revert to alpha in v1.25.1 and v1.26 for the bug) for the same issue: #112624 and #115314. If this PR can be reviewed and merged on time. I prefer to re-promote the feature to beta in v1.27.- [Ryan] It was discussed Jan 17th. Thinking about deprecating it. Are you using it?
- [Paco] let’s sync up
- 112624 is merging
- Paco is going to get an upstream E2E running with the feature gate enabled in test-grid
- [klueska] Update to the DRA KEP for CRI changes
- Ready ready for final approval from
- kubernetes/enhancements#3731
- [klueska] Update to the DRA KEP for WatchConfiguration call on kubelet plugin
- Reviews welcome
- kubernetes/enhancements#3802
- [atanas & mweston] Container Compute Interface (was Kubelet Resource Plugin) discussion
- Notes from this morning: https://docs.google.com/document/d/1kRSkOqZnalt09UMm-xXcHPuw3ZEzPrFIuhFf2piwIxI/edit
- Will get recording up to Sergey today.
- PR up here: kubernetes/enhancements#3803
- Please add in any comments
- Opens:
- Describe Kubelet restart scenario
- Sketch and describe beta architecture
- Illustrate failure and corner case flows
- [claudiubelu] Proposed changes to how kubelet detects updates for registered plugins b/c current implementation doesn’t work on Windows due to timestamp granularity issues kubernetes/kubernetes#114136
- https://cs.k8s.io/?q=PluginExistsWithCorrectTimestamp&i=nope&files=&excludeFiles=&repos=
- https://testgrid.k8s.io/sig-windows-signal#windows-unit-master test failure caused by timestamp
- this has been proposed and brought up in the past, but no reviews came in.
- it is one of the last consistently failing tests in the testgrid above.
- [MikeBrown] consider keeping existing public method and add another one, deprecate first one later. nod just to protect custom plugin managers test buckets etc .. deprecate first thx.. see:
- [vinaykul] InPlace Pod Vertical Scaling PR - status update
- Can we please get this KEP officially tracked for 1.27?
- thockin prefers that we merge PR 102884 in its entirety as opposed to merging API PR 111946 followed by the rebased implementation PR a week later.
- Reason: potential difficulty in unwinding the API merge in the event we find something really bad after merging implementation a week later, when other commits have rebased and merged on top of the API changes.
- I have no major concerns with merging everything in one shot.
- We can re-add periodic CI jobs afterwards and iterate on fixes, if needed.
- We are ~6 weeks away to code-freeze. It is best to merge #102884 in one shot at this point while we still have sufficient buffer to merge this change and fix any issues without risk to the release.
[KEPS REVIEW]: 15 minutes
Recording: https://youtu.be/NQaTeTfI9UY
Incoming | Completed | ||
Created: | 29 | Closed: | 12 |
Updated: | 90 | Merged: | 14 |
-
[SergeyKanzhelev] Sidecar containers KEP: kubernetes/enhancements#3761
-
[bobbypage] Thoughts on formalizing Node Lifecycle - https://github.com/kubernetes/kubernetes/issues/115139
- [Dawn] we might had several docs in OSS - maybe Lantao knows
- [MikeBrown] would be interested to participate
- [Sergey] question on slack recently regarding taint for paused VMs. Also recreating node with the same name is another interesting qq here.
-
[asierHuawei] Thoughts on IMA namespace support for pods
-
[mrunalp] kernel changes are not in yet. Then OCI, than CRI, than k8s.
-
[Asier] runc had the same feedback
-
[Dawn] feature is interesting, we need it implemented in kernel first
-
[klueska] Update to the DRA KEP for CRI changes
- Would appreciate review from @mrunal given his background with CRI
- Otherwise ready for final approval
- kubernetes/enhancements#3731
-
[klueska] KEP posted to extend PodResources API with CDI device information
- Reviews welcome
- kubernetes/enhancements#3738
-
[vinaykul] InPlace Pod Vertical Scaling PR - status update
- thockin prefers that we merge PR 102884 in its entirety as opposed to merging API PR 111946 followed by the rebased implementation PR a week later.
- Reason: potential difficulty in unwinding the API merge in the event we find something really bad after merging implementation a week later, when other commits have rebased and merged on top of the API changes.
- I have no major concerns with merging everything in one shot.
- We can re-add periodic CI jobs afterwards and iterate on fixes, if needed.
- thockin prefers that we merge PR 102884 in its entirety as opposed to merging API PR 111946 followed by the rebased implementation PR a week later.
-
[SergeyKanzhelev] http probes and leaking sockets:
kubernetes/kubernetes#115143
- Context: Sig Network from Jan 19th 2023: [aojea] 10 - 15 mins Presentation - “When sockets refuse to die”
-
[swsehgal] Request for reviews:
- Topology Manager GA graduation KEP: kubernetes/enhancements#3745
- Dawn to take a look.
- Also, milestone and leads-opt-in label needs to be added to the issue: kubernetes/enhancements#693
- Device Manager Bug:
- PR with fix: kubernetes/kubernetes#114640
- The above PR depends on sample device plugin changes: kubernetes/kubernetes#115107 for e2e test implementation. Sample device plugin image would have to be updated(promoted) so it can be consumed for e2e testing.
- Topology Manager GA graduation KEP: kubernetes/enhancements#3745
-
[mweston] Reminder of kubelet resource plugin discussion next Tuesday, 6-7am PST:
-
[ddebroy] KEP for pod condition to indicate Pod Sandbox creation updated to Beta with new name:
- Updated the name of the condition from
PodHasNetwork
toPodReadyToStartContainers
as discussed with Derek and Tim Hockins to align better with sig network concerns with the original name. - kubernetes/enhancements#3778
- Updated the name of the condition from
-
[jackfrancis] remove ExecProbeTimeout feature gate
- kubernetes/kubernetes#115227
- We need to clarify criteria for removing this feature gate. Background:
- Issue for deciding when to remove feature gate:
- Probe duration metrics feature landed:
- Lock to true PR (never merged)
- This feature gate only apples to dockershim, removed in v1.24.0:
Recording: https://youtu.be/wirWRKSqY10
Total PRs: 217
Incoming | Completed | ||
Created: | 30 | Closed: | 16 |
Updated: | 103 | Merged: | 16 |
- [rphillips] kubernetes/kubernetes#114506 deprecating the feature unless somebody wants to pick it up
- [mrunal] let’s summarize the current status and blockers
- [Ryan] user can change project id of a directory which becomes a security problem.
- [mrunal] can we check with upstream?
- [Dawn] this is a kernel feature and we don’t have an efficient way to track disk usage. Since there is no efficient way to do it per cgroup there was an idea to do it per process. Kernel implementation is still not what we want. +1 to mrunal if we can ask linux community
- [Ryan] any objections deprecating it?
- [mrunal] let’s summarize the current status and blockers
- [vinaykul] InPlace Pod Vertical Scaling PR - status update
- Please review and merge KEP update PR
- thockin prefers that we merge PR 102884 in its entirety as opposed to merging API PR 111946 followed by the rebased implementation PR a week later.
- Tim is worried about potential difficulty in unwinding the API merge in the event we find something really bad after merging implementation a week later, when other commits have rebased and merged on top of the API changes.
- I have no major concerns with merging the mothership in one shot.
- We can re-add periodic CI jobs afterwards and iterate on fixes if there are any issues.
- Tim & I discussed a naming change to ResizePolicy. I plan to do this as a follow-up PR on the heels of #102884 in order to avoid resetting the reviews.
- [marquiz] QoS-class resources KEP, proposal updated:
- ditched pod annotation based UX -> go straight to K8s API
- added support for “class capacity” i.e. possibility limit max number of users of classes
- [Vinay] https://groups.google.com/u/3/g/kubernetes-sig-network/c/e0U44XyI3Vw CRI and CNI.
- [SergeyKanzhelev] kubernetes/kubernetes#114989
- [SergeyKanzhelev] sidecar container WG update: https://docs.google.com/document/d/1E1guvFJ5KBQIGcjCrQqFywU9_cBQHRtHvjuqcVbCXvU/edit#heading=h.m8xoiv5t6qma
- [atanas] Kubelet plugin WG update (next meeting 1/31/2023 https://us02web.zoom.us/j/82567156922?pwd=Q2xscE0rRjluRTlvdk5FK3hzUFpDQT09 (pw is 77777 if it asks) at 6am PST/8am CST/2pm Ireland)
Recording: https://youtu.be/5V0uRxH4O4k
- ~~[pacoxu] KEP-3610: namespace-wide global env injection #3612, not sure if this can be an admission controller.(removed due to mutating CEL admission should be the final solution.) ~~
- [ruiwen/pacoxu] KEP-3673: Kubelet limit of Parallel Image Pulls #3713 *
- [klueska] Update CRI to include CDI devices (needed by DRA before moving to beta)
- Do we need a new KEP or can we update the existing DRA KEP with details?
- Mrunal: We can update the existing KEP with the details of the change.
- It should just be a simple addition to:
https://github.com/kubernetes/cri-api/blob/c75ef5b/pkg/apis/runtime/v1/api.proto#L682
- [QuentinN42] Add FileEnvSource and FileKeySelector to add environment generated on the fly #114674
- Sourcing from any file from any source may be too big of a scope. Would limiting this to empty dir files be enough?
- Security - is there a risk to source some secret as an environment variable that would expose the file that wasn’t available otherwise.
- Action: Need to move this to kubernetes/enhancements as a KEP and follow the process. => kubernetes/enhancements#3721
- [Mike Brown] fyi.. not sure if this is the right pattern but NRI plugins support modifying environment variables for the containers. might be useful at least for prototyping
- [QuentinN42] another question is error conditions depending on the file format
- [Alexander Kanevsky] my first impression - the env variables are populated in oci spec before container started. sourcing from some file inside container might be not feasible....
- [Mike Brown] right would require a set for any env change happening in prestart (which could be done by setting a runc hook via NRI or hook schema, or just doing the set on the update response)
- [vinaykul] InPlace Pod Vertical Scaling PR - status update
- I won’t be in the Node meeting today due to another 10 am meeting.
- Please review and merge KEP update PR
- Updated beta target to v1.29
- Added details on handling version skew.
- Tim prefers that we merge PR 102884 in its entirety as opposed to merging API PR 111946 followed by the rest of it a week later.
- We can re-add periodic CI jobs afterwards and iterate on fixes if there are any issues.
- I believe this will require both Derek’s & Tim’s lgtm & approve.
- **AI: **Derek to catch up on Tims’ objections: kubernetes/kubernetes#111946 (review)
- [derek] sig updates
- email with proposed changes is coming up later today
- https://groups.google.com/g/kubernetes-sig-node/c/NsoYU1Y2rUs
Recording: https://www.youtube.com/watch?v=AG3U91-5keo
Total active pull requests: 205
Incoming | Completed | ||
Created: | 45 | Closed: | 22 |
Updated: | 144 | Merged: | 18 |
- [SergeyKanzhelev] kubernetes/kubernetes#114394 CRI API version skew policies. See slides from contributors summit for extra details
- ~~[SergeyKanzhelev] Reconcile SIG Node teams and OWNERs files: kubernetes/org#3893 ~~
- [vinaykul] InPlace Pod Vertical Scaling PR - status update
- Happy 2023!
- Please review and merge KEP milestone update PR
- PR 102884 approved by Derek.
- @bobbypage fixed containerd/main E2E pull test job, we now have full E2E coverage (verifies values from ContainerStatus CRI response)
- The test has established a history of successful runs for PR 102884 over the course of a few rebases.
- My recommendation is we merge API changes PR 111946 at the earliest possible point in 1.27 and watch it to see nothing bad happens.
- Can we do it this week?
- Can we atleast merge feature gate definition to clean up test failures in unrelated PRs?
- And then merge PR 102884 shortly after (PR 111946 merge + 1 week)
- We can then re-add periodic CI test jobs.
- @bobbypage fixed containerd/main E2E pull test job, we now have full E2E coverage (verifies values from ContainerStatus CRI response)
- [Seaiii] kubernetes/kubernetes#113883 The second time the pod is deleted the grace period does not take effect .Please review update PR PR 113883