Support for Kubernetes 1.34#12883
Conversation
|
Skipping CI for Draft Pull Request. |
|
/invite @ScheererJ |
4ef169e to
4ee5f02
Compare
|
/hold Still WIP, but marked as ready for review in order to let the tests run |
070c9f0 to
4a3e8e0
Compare
|
Shouldn't this PR update the k8s.io/* dependencies from v0.33.* to v0.34.*? |
We just have not until now, this is still WIP |
Seems like in the past this was done as part of a separate PR (ref). |
|
/lgtm |
|
LGTM label has been added. DetailsGit tree hash: c3478940c44357b5c2b12fa04634b8e475a79937 |
Without it, the `kube-apiserver` does not start, because the `EndpointSlice` informers do not sync.
d9b0091 to
0131a43
Compare
|
/unhold |
|
LGTM label has been added. DetailsGit tree hash: dc6f84506a5c9fdd4a519bae536a9128216cec98 |
There was a problem hiding this comment.
Thank you for working towards bringing support for Kubernetes v1.34 to Gardener. 👏
The commit structure and commit messages are very helpful during review. 🙇♂️
I left a few comments, but they don't necessarily need to be integrated into this PR. Therefor:
/lgtm
Co-authored-by: Marc Vornetran <marc1404@users.noreply.github.com>
marc1404
left a comment
There was a problem hiding this comment.
/lgtm
Thanks for addressing my suggestions 🙏
|
LGTM label has been added. DetailsGit tree hash: d84ee3b5fb998bff53377b0440badbe34e5cb534 |
|
@tobschli: The following test failed, say
Full PR test history. Your PR dashboard. Command help for this repository. DetailsInstructions 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-sigs/prow repository. I understand the commands that are listed here. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: marc1404 The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
* feat: Allow instantiating v1.34 Kubernetes clients * docs: Update supported Kubernetes versions in docs * docs: align docs with usage * feat: Maintain feature gates for v1.34 ./hack/compare-k8s-feature-gates.sh 1.33 1.34 Feature gates added in 1.34 compared to 1.33: ClearingNominatedNodeNameAfterBinding ContainerRestartRules DRAConsumableCapacity DRADeviceBindingConditions DRAExtendedResource DRASchedulerFilterTimeout DetectCacheInconsistency EnvFiles HostnameOverride InPlacePodVerticalScalingExclusiveMemory KubeletPodResourcesListUseActivePods MatchLabelKeysInPodTopologySpreadSelectorMerge NominatedNodeNameForExpectation PodCertificateRequest PreventStaticPodAPIReferences ProbeHostPodSecurityStandards RelaxedServiceNameValidation SchedulerAsyncAPICalls SizeBasedListCostEstimate StructuredAuthenticationConfigurationEgressSelector TokenRequestServiceAccountUIDValidation Feature gates removed in 1.34 compared to 1.33: DevicePluginCDIDevices ElasticIndexedJob LegacySidecarContainers PodDisruptionConditions StatefulSetStartOrdinal Feature gates locked to default true in 1.34 compared to 1.33: AnonymousAuthConfigurableEndpoints APIServerTracing AuthorizeNodeWithSelectors AuthorizeWithSelectors ConsistentListFromCache JobPodReplacementPolicy KubeletCgroupDriverFromCRI KubeletTracing MultiCIDRServiceAllocator NodeSwap OrderedNamespaceDeletion PodLifecycleSleepAction PodLifecycleSleepActionAllowZero ProbeHostPodSecurityStandards RecoverVolumeExpansionFailure RelaxedDNSSearchValidation RelaxedEnvironmentVariableValidation ResilientWatchCacheInitialization SchedulerQueueingHints SeparateTaintEvictionController StreamingCollectionEncodingToJSON StreamingCollectionEncodingToProtobuf StructuredAuthenticationConfiguration WinDSR WinOverlay Feature gates locked to default false in 1.34 compared to 1.33: * feat: Maintain kube-apiserver admission plugins for 1.34 ./hack/compare-k8s-admission-plugins.sh 1.33 1.34 Admission plugins added in 1.34 compared to 1.33: Admission plugins removed in 1.34 compared to 1.33: * feat: Maintain apigroups for 1.34 ./hack/compare-k8s-api-groups.sh 1.33 1.34 Kubernetes API group versions added in 1.34 compared to 1.33: resource.k8s.io/v1 Kubernetes API GVRs added in 1.34 compared to 1.33: admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicies admissionregistration.k8s.io/v1beta1/mutatingadmissionpolicybindings certificates.k8s.io/v1alpha1/podcertificaterequests resource.k8s.io/v1/deviceclasses resource.k8s.io/v1/resourceclaims resource.k8s.io/v1/resourceclaimtemplates resource.k8s.io/v1/resourceslices storage.k8s.io/v1/volumeattributesclasses Kubernetes API group versions removed in 1.34 compared to 1.33: networking.k8s.io/v1alpha1 Kubernetes API GVRs removed in 1.34 compared to 1.33: networking.k8s.io/v1alpha1/ipaddresses networking.k8s.io/v1alpha1/servicecidrs resource.k8s.io/v1alpha3/deviceclasses resource.k8s.io/v1alpha3/resourceclaims resource.k8s.io/v1alpha3/resourceclaimtemplates resource.k8s.io/v1alpha3/resourceslices * feat: Maintain kubernetes-controller-manager controller mappings kube-controller-manager controllers added in 1.34 compared to 1.33: Added Controllers for API Group [certificates/v1alpha1]: podcertificaterequest-cleaner-controller Added Controllers for API Group [resource/v1]: device-taint-eviction-controller resourceclaim-controller Added Controllers for API Group [storage/v1]: volumeattributesclass-protection-controller kube-controller-manager controllers removed in 1.34 compared to 1.33: Removed Controllers for API Group [resource/v1beta1]: device-taint-eviction-controller resourceclaim-controller Removed Controllers for API Group [storage/v1beta1]: volumeattributesclass-protection-controller * feat: Maintain unneeded controllers for workerless Shoots for Kubernetes 1.34 * chore: Update DaemonSet controller comments * chore: Add Kubernetes v1.34.0 to provider-local cloud profile * chore: Bump kindest/node version to 1.34.0 * chore: Change example Shoot to refer CredentialsBinding * Set `trafficDistribution` to `PreferSameZone` for kubernetes versions `>= 1.34` * Adapt charts to new `trafficDistribution` value * Adapt tests to new `trafficDistribution` value * Update TopologyAwareRouting documentation * Address linting findings * Use `PreferClose` for ETCD's clientService trafficDistribution * --- SEPARATOR --- * Align `node-problem-detector` images Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com> * Adapt to new labels for metrics kubernetes/kubernetes#130161 * Enable `discovery.k8s.io/v1` API for workerless `Shoot`s Without it, the `kube-apiserver` does not start, because the `EndpointSlice` informers do not sync. * Fix wording / typo Co-authored-by: Marc Vornetran <marc1404@users.noreply.github.com> --------- Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com> Co-authored-by: Marc Vornetran <marc1404@users.noreply.github.com>
How to categorize this PR?
/area open-source
/kind enhancement
What this PR does / why we need it:
Support for Kubernetes v1.34.
Which issue(s) this PR fixes:
Part of #12814
Special notes for your reviewer:
We performed the changes by following the new Kubernetes version guide and comparing how changes have been done for previous Kubernetes versions, e.g., #10472.
Code changes have been tested in the following scenarios using the local provider:
Release note: