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

[kubernetes] Support Kubernetes v1.32.0 #11862

Closed

Conversation

mzaian
Copy link
Contributor

@mzaian mzaian commented Jan 6, 2025

What type of PR is this?

/kind feature

What this PR does / why we need it:
Upgrade kubernetes versions
Add hashes for kubernetes 1.32.0
Make kubernetes v1.32.0 default
Set minimum required version to Kubernetes v1.30.x
Cleanup old hashes

Which issue(s) this PR fixes:

Fixes #11856

Does this PR introduce a user-facing change?:

Make kubernetes v1.32.0 default

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. release-note Denotes a PR that will be considered when it comes time to generate release notes. kind/feature Categorizes issue or PR as related to a new feature. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jan 6, 2025
@k8s-ci-robot k8s-ci-robot requested review from VannTen and yankay January 6, 2025 14:50
@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 6, 2025
@mzaian mzaian force-pushed the support-kubernetes-1.32.0 branch from 24df8a9 to 8100f77 Compare January 6, 2025 15:10
@mzaian mzaian changed the title WIP: [kubernetes] Support Kubernetes v1.32.0 [kubernetes] Support Kubernetes v1.32.0 Jan 6, 2025
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 6, 2025
@mzaian
Copy link
Contributor Author

mzaian commented Jan 6, 2025

/ok-to-test

@k8s-ci-robot k8s-ci-robot added the ok-to-test Indicates a non-member PR verified by an org member that is safe to test. label Jan 6, 2025
@mzaian mzaian force-pushed the support-kubernetes-1.32.0 branch 2 times, most recently from 09895f0 to edeee97 Compare January 6, 2025 15:55
@yankay
Copy link
Member

yankay commented Jan 7, 2025

ref to kubernetes/kubernetes#129462

@yankay
Copy link
Member

yankay commented Jan 8, 2025

Since AlmaLinux OS 8 is still under maintenance (refer to: https://endoflife.date/almalinux), I have an idea to work around this issue.

We can add kubeadm_ignore_preflight_errors in the CI to ignore the kernel version issue. Additionally, we should update the documentation at https://github.com/kubernetes-sigs/kubespray/blob/master/docs/operating_systems/centos.md#centos-8 to include instructions on how to add the configuration parameter to bypass kubeadm checks.

@VannTen
Copy link
Contributor

VannTen commented Jan 8, 2025

I don't think that's a good idea (to add SystemVerification to the ignored errors) ; this is not recommended by kubeadm maintainer.

Furthermore, I don't think long-term we will be able to support RHEL 8 derivatives for the up until their full EOL (which is in 2029). cgroupv1 is already in maintenance mode in Kubernetes, and kubernetes upstream will assume a newer kernel (and this might happen for other components such as systemd, network utilies like nftables, etc ?)

IMO we might want to discuss a timeline to deprecate RHEL8 + derivatives before 2029 (which might mean several things, maybe as the same time we deprecate k8s 1.31, so 2.29 for us ?)

Maybe this particular issue is worth taking the input of a broader audience like other sig-cluster-lifecycle projects ?

@tico88612
Copy link
Member

tico88612 commented Jan 9, 2025

I'd like to add a note about the reasons for deprecating RHEL 8. The reason we can't upgrade Ansible to 10 now is to support RHEL 8 because the Python version that comes with the system is too old. Especially since Ansible 9 has been EOL for a while now (30 Nov 2024), which is not good for this project.

FYI: #11519

@VannTen
Copy link
Contributor

VannTen commented Jan 9, 2025 via email

@tico88612
Copy link
Member

tico88612 commented Jan 9, 2025

Ansible-core 2.16 is supported for as long as RHEL 8, though, right ? (At some point we should transition to a collection first approach, when that happens we'll drop Ansible deps and depends on core directly, + collections in galaxy.yml)

No, ansible-core 2.16 is only supported until 01 May 2025.
FYI: https://endoflife.date/ansible-core

@VannTen
Copy link
Contributor

VannTen commented Jan 9, 2025 via email

@yankay
Copy link
Member

yankay commented Jan 13, 2025

Supporting Kubernetes 1.32 does not necessarily hinge on the discussions in Issue #11872. While Kubernetes recommends using a kernel version of at least 4.19, this does not prohibit using RHEL 8 family distributions.

These can indeed be considered as two separate issues. The choice to support certain distributions could be evaluated independently from the kernel version requirements. This allows for more flexibility in maintaining compatibility with various environments while adhering to the recommended standards.

@VannTen
Copy link
Contributor

VannTen commented Jan 13, 2025 via email

@yankay
Copy link
Member

yankay commented Jan 13, 2025

I don't think it's independent per se, but you're right that we can move forward with 1.32 support with the current state, and keep the dicussion on support on the related issue. => that will need a small documentation blurb and updating the CI with kubeadm_ignore_preflight_errors for relevant distros.

Thanks @VannTen

We can keep the discus RedHat 8 and support the Kubernetes 1.32.0.
It's welcome to review the new PR #11885 with RHEL8 workaround,

@mzaian mzaian force-pushed the support-kubernetes-1.32.0 branch from edeee97 to 33eb9aa Compare January 14, 2025 10:55
@mzaian mzaian closed this Jan 16, 2025
@mzaian mzaian force-pushed the support-kubernetes-1.32.0 branch from 33eb9aa to 3930919 Compare January 16, 2025 12:25
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: mzaian

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed approved Indicates a PR has been approved by an approver from all required OWNERS files. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jan 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Kubernetes 1.32 Support
5 participants