Last Week In Kubernetes Development

Subscribe
Archives
September 13, 2022

LWKD: Week Ending September 11, 2022

Developer News

The Contributor Summit Detroit (at KubeCon North America 2022) has opened the call for sessions. If you have a discussion topic, workshop, SIG meeting, or anything else by and for contributors, suggest it by September 30. Also, register now so we have a better headcount for allocating space.

Steering committee ballots are due by September 29th. Vote now! If you’re still not on the voter rolls and think you should be (if you’re reading this, you likely qualify) make sure you get your exception request in by September 16th.

Release Schedule

Next Deadline: PRR Freeze for Enhancements, September 29th

Enhancements for 1.26 are due by October 6th, but you should get them opted-in by 9/29 so that the PRR has time to review them.

Patch releases are expected out Wednesday.

Featured PR

#111122: support removal of event handlers from SharedIndexInformers

As operators have gotten more complex, there has been a growth in the use cases for “dynamic listeners”, controllers which can listen to any object type and are configured at runtime. While controllers using the SharedInformer cache pattern have been able to add new listeners on the fly, they haven’t previously been able to shut down and remove listeners that are no longer needed. This has lead to slow bloat issues in some cases, requiring periodic restarts to get back to a minimal state. With this PR, AddEventHandler and friends now return an opaque handle which can be passed to a new RemoveEventHandler to do exactly what it says in the name. This unlocks many more efficient operator architectures for complex scenarios.

Other Merges

  • Use gingko methods AfterEach and DeferCleanup for e2e tests; please call these in the future instead of writing custom cleanup code
  • Aggregators can reject redirect requests and will by default
  • Drop gzip compression to Level 1 in the apiserver, and allow admins to disable it entirely in kubeconfig
  • Replace scheduler_goroutines with simply goroutines metric to count more of the code execution
  • Rate-limit requests to /healthz/etcd to control traffic
  • Minimum CFS quota is 1ms, per Linux kernel
  • Prevent running out of ports when touching many objects using kubectl exec auth
  • Fix client-side apply to server-side apply managed fields migration
  • Eliminate leaky gRPC goroutines
  • Release leader lock after election properly
  • Use IPv6 range for API docs

Test Cleanup: track and close stuck gRPC streams, add CPU and Memory HPA tests, patch some flaky HPA tests

Deprecated

  • In-tree cloud provider auth for kubectl is removed again for 1.26
  • Deprecate scheduler ComponentConfig v1beta3, and plan to remove v1beta2
  • Remove CSRDuration feature gate; feature is GA since 1.24

Version Updates

  • golang to 1.19.1 in 1.26 and 1.25
  • golang to 1.18.6 in 1.24
Don't miss what's next. Subscribe to Last Week In Kubernetes Development:
Powered by Buttondown, the easiest way to start and grow your newsletter.