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

Drop support for RHEL 7 / CentOS 7 #11246

Merged

Conversation

VannTen
Copy link
Contributor

@VannTen VannTen commented May 29, 2024

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
This removes support for CentOS 7 and RHEL 7 (and derivatives)
Both are EOL in 1 mont (30/06/2024), though RHEL 7 will still have Extended Life Support, but this is quite limited support

This should reduce the complexity of some roles and will help with future development (for instance #11158 and #10701)

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

action required: RHEL 7, Centos 7 and derivatives are no longer supported.

@k8s-ci-robot k8s-ci-robot added the release-note-action-required Denotes a PR that introduces potentially breaking changes that require user action. label May 29, 2024
@k8s-ci-robot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@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. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels May 29, 2024
@k8s-ci-robot k8s-ci-robot requested review from ant31 and yankay May 29, 2024 15:04
@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label May 29, 2024
@VannTen VannTen force-pushed the cleanup/rm_redhat_like_7 branch 2 times, most recently from e28db24 to 58e53f2 Compare May 29, 2024 16:26
@yankay
Copy link
Member

yankay commented May 30, 2024

HI @VannTen

Although Centos 7 will be EOL on 2024-06-30, Centos 8 has EOL on 2021-12-31. 🤣
From: https://en.wikipedia.org/wiki/CentOS#Versioning_and_releases.

Centos 7 is the last version of Centos's Long-Life Cycle maintenance version. Although there are some options to replace it, many users still use Centos 7, which is still widely used.

Data of Cento's market share(I cannot find the accurate statistics for Centos 7):
image

So, a good strategy for Kubespray is to give Centos7 users time to change the OS. I can also help maintain the Centos 7 part of Kubespray. We can decide to drop the support of Cenots7 in 2025.

What do you think about that? :-)

@VannTen
Copy link
Contributor Author

VannTen commented May 30, 2024 via email

@yankay
Copy link
Member

yankay commented Jun 24, 2024

There is a discuss in k/k, ref: kubernetes/kubernetes#116799.

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 1, 2024
@k8s-ci-robot
Copy link
Contributor

PR needs rebase.

Instructions 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.

@VannTen
Copy link
Contributor Author

VannTen commented Aug 27, 2024

Well, since we dropped CI for centos7 which was broken, I suggest we rip the bandaid and proceed with the removal. We still have branch for which it will work (maybe 😅 )
@ant31 @yankay wdyt ?

@yankay
Copy link
Member

yankay commented Aug 28, 2024

Well, since we dropped CI for centos7 which was broken, I suggest we rip the bandaid and proceed with the removal. We still have branch for which it will work (maybe 😅 ) @ant31 @yankay wdyt ?

I agree with you.

Kubespray needs to drop the support of Centos 7.
The CI test may be migrated to AlamLinux or Rocky.

@VannTen VannTen force-pushed the cleanup/rm_redhat_like_7 branch 2 times, most recently from e9cff20 to 461ea38 Compare August 29, 2024 08:40
@VannTen
Copy link
Contributor Author

VannTen commented Aug 29, 2024

/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 Aug 29, 2024
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 29, 2024
@VannTen VannTen marked this pull request as ready for review August 29, 2024 08:55
@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 Aug 29, 2024
systemd handles missing unit by ignoring the dependency so we don't need
to template them.
- remove ref in kubespray roles
- move CI from centos 7 to 8
- remove docs related to centos7
Only used for RHEL 7 and CentOS 7
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: VannTen

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

The pull request process is described 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 the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 30, 2024
@VannTen VannTen mentioned this pull request Aug 30, 2024
@@ -1,19 +1,11 @@
[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
{% if ansible_os_family == "RedHat" %}
After=network.target {{ ' docker-storage-setup.service' if docker_container_storage_setup else '' }} containerd.service
After=network.target docker.socket containerd.service lvm2-monitor.service SuSEfirewall2.service
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

HI @VannTen

The SuSEfirewall2 is only needed when ansible_os_family == "Suse"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is intentional. systemd tolerates non-existent unit in After= without problem.
not doing a conditional After list allow a simpler template on our hand.

systemd has generally the principle of "progressive enhancement", aka, it supports what's available on the system it's running on, and ignore the rest ; so I usually find it more appropriate to have as little variation in systemd unit as possible between environments, as long as it's supported.

@@ -424,7 +424,7 @@ calico_wireguard_enabled: true

The following OSes will require enabling the EPEL repo in order to bring in wireguard tools:

* CentOS 7 & 8
* CentOS 8
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All versions of CentOS are already EOL, do I think it's possible to remove it completely?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah but I'd rather do that in a separate PR to keep things small in this one.
Besides, Centos7 share code path with RHEL7, which is not supported anymore either, while centos8 share stuff with RHEL8, which is, so the benefits from removing centos 8 support are smaller.
Is that acceptable to you ?

@yankay
Copy link
Member

yankay commented Sep 5, 2024

Thanks @VannTen
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 5, 2024
@k8s-ci-robot k8s-ci-robot merged commit 7f527f6 into kubernetes-sigs:master Sep 5, 2024
39 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note-action-required Denotes a PR that introduces potentially breaking changes that require user action. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants