Skip to content

Commit

Permalink
Merge pull request #328 from kubernetes-sigs/20240310
Browse files Browse the repository at this point in the history
Week Ending March 10, 2024
  • Loading branch information
coderanger committed Mar 15, 2024
2 parents 61dc746 + a0014b7 commit 0332382
Showing 1 changed file with 77 additions and 0 deletions.
77 changes: 77 additions & 0 deletions _posts/2024-03-10-update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
---
layout: post
title: Week Ending March 10, 2024
date: 2024-03-15 03:53:00 -0000
slug: 2024-03-10-update

---

## Developer News

Kubernetes Contributor Summit EU is happening next Tuesday, March 19, 2024. Make sure to [register](https://www.kubernetes.dev/events/2024/kcseu/registration/) by March 15. If you want to bring a family member to social send an email to [summit-team@kubernetes.io](mailto:summit-team@kubernetes.io). We're eagerly looking forward to receiving your contributions to the [unconference topics](https://github.com/kubernetes/community/issues/7692).

Also, don't forget to help your SIG staff its table at the [Kubernetes Meet and Greet](https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/program/schedule/) on Kubecon Friday.

Take a peek at the upcoming Kubernetes v1.30 Release in this [Blog](https://kubernetes.io/blog/2024/03/12/kubernetes-1-30-upcoming-changes/).

## Release Schedule

**Next Deadline: Draft Doc PRs, Mar 12th**

Kubernetes [v1.30.0-beta.0](https://groups.google.com/a/kubernetes.io/g/dev/c/IbA09_tgXRs/m/MwOBiNS8AAAJ?utm_medium=email&utm_source=footer) is live!

Your SIG should be working on any feature blogs, and discussing [what “themes” to feature](https://github.com/kubernetes/sig-release/discussions/2424) in the Release Notes.

## Featured PR

### [#123516: DRA: structured parameters](https://github.com/kubernetes/kubernetes/pull/123516)

DRA, or Dynamic Resource Allocation, is a way to bridge new types of schedulable resources into Kubernetes. A common example of this is GPU accelerator cards but the system is built as generically as possible. Maybe you want to schedule based on cooling capacity, or cash register hardware, or nearby interns, it's up to you. DRA launched as an alpha feature back in 1.26 but came with some hard limitations. Notably the bespoke logic for simulating scale ups and scale downs in cluster-autoscaler had no way to understand how those would interact with these opaque resources. This PR pulls back the veil a tiny bit, keeping things generic but allowing more forms of structured interaction so core tools like the scheduler and autoscalers can understand dynamic resources.

This happens from a few directions. First, on the node itself a DRA driver plugin provides information about what is available locally, which the kubelet publishes as a `NodeResourceSlice` object. In parallel, an operator component from the DRA implementation creates `ResourceClaimParameters` as needed to describe a particular resource claim. The claim parameters include CEL selector expressions for each piece of the claim, allowing anything which can evaluate CEL to check them independently of the DRA plugin. These two new objects combine with the existing `ResourceClaim` object to allow bidirectional communication between Kubernetes components and the DRA plugin without either side needing to wait for the other in most operations.

While this does increase the implementation complexity of a new DRA provider, it also dramatically expands their capabilities. New resources can be managed with effectively zero overhead and without the even greater complexity of custom schedulers or a plugin-driven autoscaler.

## KEP of the Week

### [KEP-647: APIServer Tracing](https://github.com/kubernetes/enhancements/tree/master/keps/sig-instrumentation/647-apiserver-tracing)

This KEP proposes to update the kube-apiserver to allow tracing requests. This is proposed to be done with OpenTelemetry libraries and the data will be exported in the OpenTelemetry format. The kube-apiserver currently uses [kubernetes/utils/trace](https://github.com/kubernetes/utils/tree/master/trace) for tracing, but we can make use of distributed tracing to improve ease of use and to make analysis of the data easier. The proposed implementation involves wrapping the API Server's http server and http clients with [otelhttp](https://github.com/open-telemetry/opentelemetry-go-contrib/tree/main/instrumentation/net/http/otelhttp).

This KEP is tracked to graduate to stable in the upcoming v1.30 release.

## Other Merges

* [podLogsDir key in kubelet configuration](https://github.com/kubernetes/kubernetes/pull/112957) to configure default location of pod logs.
* [New `custom` flag to kubectl debug](https://github.com/kubernetes/kubernetes/pull/120346) for adding custom debug profiles.
* [PodResources API now has initContainers with containerRestartPolicy of Always](https://github.com/kubernetes/kubernetes/pull/120718) when SidecarContainers are enabled.
* [Fix to the disruption controller's PDB status sync to maintain PDB conditions during an update](https://github.com/kubernetes/kubernetes/pull/122056).
* [Service NodePort can now be set to 0 if AllocateLoadBalancerNodePorts is false](https://github.com/kubernetes/kubernetes/pull/122320).
* [Field selector for services that allows filtering by clusterIP field](https://github.com/kubernetes/kubernetes/pull/122541).
* [The '.memorySwap.swapBehaviour' field in kubelet configuration gets NoSwap as the default value](https://github.com/kubernetes/kubernetes/pull/122745).
* [`kubectl get jobs` now prints the status of the listed jobs](https://github.com/kubernetes/kubernetes/pull/123226).
* [Bugfix for initContainer with containerRestartPolicy `Always` where it couldn't update its Pod state from terminated to non-terminated](https://github.com/kubernetes/kubernetes/pull/123323).
* [The `StorageVersionMigration` API, which was previously available as a CRD, is now a built-in API](https://github.com/kubernetes/kubernetes/pull/123344).
* [InitContainer's image location will now be considered in scheduling when prioritizing nodes](https://github.com/kubernetes/kubernetes/pull/123366).
* [Almost all printable ASCII characters are now allowed in environment variables](https://github.com/kubernetes/kubernetes/pull/123385).
* [Added support for configuring multiple JWT authenticators in Structured Authentication Configuration](https://github.com/kubernetes/kubernetes/pull/123431).
* [New trafficDistribution field added to the Service spec](https://github.com/kubernetes/kubernetes/pull/123487) which allows configuring how traffic is distributed to the endpoints of a Service.
* [JWT authenticator config set via the --authentication-config flag is now dynamically reloaded as the file changes on disk](https://github.com/kubernetes/kubernetes/pull/123525).

## Promotions

* [StructuredAuthorizationConfiguration](https://github.com/kubernetes/kubernetes/pull/123641) to beta.
* [HPAContainerMetrics](https://github.com/kubernetes/kubernetes/pull/123482) to GA.
* [MinDomainsInPodTopologySpread](https://github.com/kubernetes/kubernetes/pull/123481) to GA.
* [ValidatingAdmissionPolicy](https://github.com/kubernetes/kubernetes/pull/123405) to GA.
* [StructuredAuthenticationConfiguration](https://github.com/kubernetes/kubernetes/pull/123719) to beta.
* [KubeletConfigDropInDir](https://github.com/kubernetes/kubernetes/pull/122907) to beta.

## Version Updates

* [google.golang.org/protobuf updated to v1.33.0 to resolve CVE-2024-24786](https://github.com/kubernetes/kubernetes/pull/123763).

## Subprojects and Dependency Updates

* [gRPC to v1.62.1](https://github.com/grpc/grpc-go/releases/tag/v1.62.1) fix a bug that results in no matching virtual host found RPC errors
* [cloud-provider-openstack to v1.28.2](https://github.com/kubernetes/cloud-provider-openstack/releases/tag/v1.28.2) Implement imagePullSecret support for release 1.28

0 comments on commit 0332382

Please sign in to comment.