The CentOS Linux page confirms that end date for version 7, more than two years ago now, and the server still boots and serves the site. CentOS Linux 8 has gone even longer without fixes, and its packages moved to vault.centos.org with no more updates.
You can rebuild on a fresh AlmaLinux or Rocky Linux server, convert the one you have in place, or pay a vendor to keep updating CentOS 7 for a while longer. We didn't run a conversion, so every conversion step and failure point below comes from the tool makers' own docs. We did start both rebuild targets on a test machine, and the rebuild section shows what they used.
The ways off CentOS 7, side by side
| Rebuild on AlmaLinux or Rocky Linux | Convert in place with ELevate | Red Hat (Convert2RHEL plus RHEL 7 ELS) | Third-party CentOS 7 support | |
|---|---|---|---|---|
| What you pay per server | A new server, plus your time to move the app | Your time, plus downtime for each upgrade reboot | RHEL Server Standard at $878.90 a year, plus an ELS add-on with no public price | SUSE Lite: $67 a year with 3 years paid upfront. CIQ Bridge: no public price. TuxCare: no public price, billed monthly or yearly |
| What gets updated | The OS project's regular updates | AlmaLinux's regular updates for the version you stop at | A limited set of updates and selected urgent bug fixes for RHEL 7.9 | SUSE Lite: a limited set of updates in the base system, with no support cases. CIQ and TuxCare Standard: a limited set of updates |
| Updates until | May 31, 2032 on version 9, May 31, 2035 on version 10 | May 31, 2029 on AlmaLinux 8, 2032 on 9, 2035 on 10 | May 31, 2029 | SUSE and CIQ: June 30, 2028. TuxCare: up to June 30, 2029 |
| Where you end up | A current OS on a clean install | AlmaLinux 8, then 9, then 10, one run at a time | RHEL 7.9, which Red Hat's Leapp can later upgrade in place to RHEL 8.10 | CentOS 7, still on 7 |
| Rocky Linux as the target | Yes, with the same dates as AlmaLinux | Dropped in ELevate's November 3, 2025 update | Doesn't apply | Doesn't apply |
| Main risk | Moving data and config, then retesting the app | A failed reboot, or broken networking or packages | The upgrade off RHEL 7.9 still has to happen by May 31, 2029 | The coverage ends and you still have to move |
Prices and dates as each vendor listed them on October 2, 2026, per server, before tax. CIQ's up to four years
and TuxCare's up to five years
are counted from CentOS 7's end of life. Red Hat's ELS has to be back-dated to June 30, 2024 if you buy it now, which the Red Hat section covers.

Every paid CentOS 7 plan runs out within about 33 months: SUSE's and CIQ's in about 21, Red Hat's ELS in about 32 and TuxCare's in 33 at most. A paid plan only delays the move. On AlmaLinux or Rocky Linux, version 8 leaves about 32 months, and that's where the first in-place run from CentOS 7, or a CentOS 8 conversion, lands. Version 9 leaves about 68. A rebuild on version 10 leaves about 104.
Choose a rebuild on AlmaLinux or Rocky Linux if
You can keep a second server running while you test, and the app's code can be brought up to a newer PHP or Python where it needs to be.
Choose an in-place conversion if
The server holds setup nobody can recreate, you can snapshot it and test on a copy first, and AlmaLinux is fine as the target. cPanel servers use cPanel's own ELevate.
Choose paid extended support if
A vendor app or an audit pins you to CentOS 7 for now, and you've already picked a move date that falls before the plan ends.
Rebuild on a fresh AlmaLinux or Rocky Linux server
We'd start with a rebuild for most CentOS servers. It reaches the same 2035 end date as converting all the way to AlmaLinux 10, without three upgrade reboots, and a fresh install carries none of the leftover packages an in-place upgrade can leave behind. Because the old server keeps serving traffic the whole time, a new server that isn't ready yet doesn't take the site down.
For a rebuild, AlmaLinux and Rocky Linux are equal, and our guide on AlmaLinux or Rocky Linux covers the few places they differ. Both get update support until May 31, 2032 on version 9 and May 31, 2035 on version 10, per the AlmaLinux release notes and Rocky Linux's release page. Rocky's limits further down this page only matter if you convert a server or run cPanel. Pick version 10 unless a vendor app or your own tooling hasn't certified it yet. Then pick 9. If nothing ties you to RHEL-style packages, Ubuntu and Debian run on the same DreamHost plans.
On DreamHost you choose the OS when you create the VPS: AlmaLinux or Rocky Linux, each in version 10 or 9. There's no version 8 image and no CentOS image. Switching the OS later means rebuilding the server. The plan cards default to the monthly term. That suits a server you're standing up to test on, since you may not keep it past the switch. You get full root access. DreamHost support is available 24/7 for the hardware, network and connectivity. You manage the OS, software and configuration.
- Create the new server next to the old one
Pick AlmaLinux or Rocky Linux 10 (or 9) when you create the VPS. Leave the CentOS server alone. It keeps serving the site.
- Lower the DNS TTL
A day or two before the switch, shorten the TTL on the records you'll change, so the cutover reaches visitors quickly.
- Install the stack fresh, then copy data and config
Install the web server, language runtime and database from the new OS's own packages. Then bring across the data and the items in the list below.
- Test the app on the new server
Point your own machine at the new IP with a hosts-file entry and run through the site, logins, forms, email and scheduled jobs.
- Switch DNS and keep the old box for a while
Change the records. Then keep the CentOS server running until traffic, logs and cron output on the new one look right, then shut it down.
What a fresh rebuild target used on our test VM
To see what a new server starts with, we used each project's own arm64 cloud image of AlmaLinux 10.2 and Rocky Linux 10.2 on a test VM with 2 vCPU and 4 GB of memory, the shape of Stack 4. We read memory after 10 minutes at rest, then added the same web stack to both from their own repositories: nginx, PHP-FPM, MariaDB 10.11, PostgreSQL 18, Node.js 24 and Valkey.
| What we checked | AlmaLinux 10.2 | Rocky Linux 10.2 |
|---|---|---|
| Memory used at rest, fresh image | 325 MiB | 295 MiB |
| Disk used, fresh image | 1,202 MiB | 1,305 MiB |
| Updates waiting on first boot | 18, image built Oct 12, 2026 | 130, image built May 25, 2026 |
| Memory at rest with the web stack added | 515 MiB | 495 MiB |
| EPEL added with the documented two steps | Worked | Worked |
Either one rested near 300 MiB and took the web stack in about 200 MiB more, so a CentOS 7 app moved to Stack 8 has plenty of memory left for the app and its database. Run dnf upgrade before anything else, because the Rocky Linux cloud image, built in May, had 130 updates waiting. These runs were on our test machine, not a DreamHost server or DreamHost's own images, on October 20, 2026, once each. We couldn't measure an ELevate conversion: CentOS 7 no longer gets updates, our test machines are arm64 while most CentOS 7 servers are x86_64, and a conversion depends on what each server has installed.
Here's what has to come across. None of it moves on its own:
- Scheduled jobs. Run
crontab -lfor each user, and check/etc/crontab,/etc/cron.dand any systemd timers. - Hand-edited config under
/etc. Web server vhosts,php.ini, the database config, logrotate and mail settings. Copy them as reference and reapply the changes by hand, since package defaults differ between major versions. - Firewall rules. Save what
firewall-cmd --list-alloriptables-saveprints. Red Hat made nftables the default packet filtering framework in place of iptables in RHEL 8. Rewrite old raw iptables scripts as firewalld rules. - Users, keys and sudo rules. Each user's
~/.ssh/authorized_keys, the files in/etc/sudoers.d, and any service accounts the app runs as. - Network settings. Interface files in
/etc/sysconfig/network-scriptsdon't carry over, because RHEL 9 dropped the network-scripts package in favor of NetworkManager. - TLS certificates and their renewal job.
- Databases, as a dump. Move them with
mysqldumporpg_dumpand restore the dump on the new server, since the database server jumps several major versions.
The larger job is usually the runtime under the app. Red Hat's guide to adopting RHEL 8 lists PHP 5.4 and MariaDB 5.5 in RHEL 7, the base CentOS 7 was built from. RHEL 8 moved to PHP 7.2 and MariaDB 10.3, made Python 3 the default and dropped the unversioned python command. AlmaLinux 10 goes further, with PHP 8.3, MariaDB 10.11, MySQL 8.4 and Python 3.12 in its release notes. If your code was written for PHP 5.4 or Python 2, it'll likely need changes before it runs there, and that's the part that can stretch a rebuild into a week.
Migration has been such a pain for our VPS boxes, so that we just spooled up new instances on AlmaLinux and migrated
data by hand. It was a long week.
Convert in place with ELevate
ELevate is the AlmaLinux project's in-place upgrade tool. It's built on Leapp, the same utility Red Hat uses for its own RHEL 7 to RHEL 8 upgrades. It's also the only maintained tool we found that takes CentOS 7 itself to a newer major version without a reinstall or a RHEL subscription.
Leapp upgrades one major version at a time, so CentOS 7 to AlmaLinux 10 takes three runs: 7 to 8, 8 to 9 and 9 to 10. Each run reboots into a special upgrade boot entry, and AlmaLinux's CentOS 7 to AlmaLinux 10 guide tells you to keep console access so you can watch it. The CentOS 7 repositories are offline. Before the first run, you point yum at the CentOS vault or AlmaLinux's CentOS 7 mirror. AlmaLinux warns that the pre-upgrade check fails on a default install until you fix what its report lists.
One Hacker News reader used it on a few home VMs and said it worked pretty well.
They went from Centos 7 to Alma 9 one release at a time.
What ELevate handles
- Moves CentOS 7 to AlmaLinux 8, then 9, then 10 without a reinstall
- Carries supported third-party repos through the upgrade, including EPEL, Docker CE, MariaDB, nginx and PostgreSQL
- Checks the server first and writes a report of what blocks the upgrade
What you fix by hand
- The app: PHP, Python and the database move to newer versions with each hop, so retest it on the copy every time
- A driver your hardware needs that EL8 dropped, which can stop the first reboot
- Legacy network-scripts configs, which block the 8 to 9 run
- Packages from the old release left behind after each hop
- EPEL packages from EL 9 with no EL 10 build
The driver and network items come from AlmaLinux's frequent issues page and its upgrade guide, and the runtime versions come from Red Hat's RHEL 8 adoption guide.
ELevate doesn't target Rocky Linux anymore. The project dropped it in its November 3, 2025 update, and its stated reason is that the migration data Rocky Linux needs in the new format hasn't been contributed. Rocky's own tool, migrate2rocky, converts version 8 or 9 systems within the same major version, so it can't take a CentOS 7 server forward. If you'd rather run Rocky Linux, a rebuild gets you there with the same dates. Oracle also publishes a community script that converts CentOS Linux 7.9 to Oracle Linux 7. Oracle says the script isn't officially supported, and it can't change major versions, so you'd still be on a version 7 release. DreamHost's VPS images are Ubuntu, Debian, AlmaLinux and Rocky Linux, with no Oracle Linux image.
cPanel servers need cPanel's own ELevate wrapper. cPanel says running the plain tools on a cPanel install means the system won't function correctly. Its wrapper follows the same path: CentOS 7 to AlmaLinux 8, then 9, then 10. cPanel has also removed support for Rocky Linux, existing installs included. So of the two, a cPanel server leaving CentOS 7 belongs on AlmaLinux, whether you convert it or rebuild. If AlmaLinux 9 is your stop, our AlmaLinux 9 on a VPS guide answers the CentOS 7 to AlmaLinux 9 question in its FAQ.
Pay for extended support
Extended update support keeps updates coming to CentOS 7, or to a converted RHEL 7, for a fixed time. Every plan we found ends by mid-2029. Red Hat has stretched RHEL 6 past its original ELS end with renewable yearly terms it calls ELS Long-Life, so check the dates again before you sign.
SUSE Multi-Linux Support Lite lists at $67 per server per year, with a 3-year commitment paid upfront. That's $201 per server at list. SUSE's own plan table marks Lite NO SUPPORT.
You get a limited set of updates in the base system without support cases, and CentOS 7 coverage runs until June 30, 2028. A 3-year term bought in October 2026 would run past that date. Ask SUSE how it bills the gap.
CIQ Bridge provides extended update support on CentOS 7 for up to four years after end of life, which CIQ rounds to through 2028.
Four years from June 30, 2024 is June 30, 2028, the same cutoff as SUSE's. CIQ doesn't list a price. Its pricing page asks you to fill out a form for a quote.
TuxCare sells CentOS 7 support for up to five years past end of life, which would reach June 30, 2029, billed monthly or yearly. Its Standard tier covers a limited set of updates. Its page listed no price when we checked.
Red Hat's path converts the server to RHEL first, then adds paid support on top:
- Convert2RHEL takes CentOS Linux 7.9 to RHEL 7.9, and it needs a RHEL subscription to reach Red Hat's update service.
- Only Standard or Premium RHEL Server subscriptions qualify for Extended Life Cycle Support (ELS). Red Hat's store lists Standard at $878.90 for one year, and it shows no price for the ELS add-on.
- ELS covers RHEL 7.9 until May 31, 2029, with a limited set of updates and selected urgent bug fixes. Red Hat's legacy support policy says RHEL 7 ELS should be bought before June 30, 2024, and a later purchase must be back-dated to that date. That means you'd pay today for coverage that's already passed, and Red Hat doesn't publish what that adds up to.
- Red Hat's Leapp upgrade replaces RHEL 7.9 with RHEL 8.10 in place on a registered system. A second run takes RHEL 8.10 to RHEL 9, and Red Hat says you can't skip from 7 to 9 in one run.
Red Hat also sells a bundle called RHEL for Third Party Linux Migration, with conversion tooling and optional ELS, and it doesn't publish a price for that either.
please, please don't rely on extended support, unless desperate, switch to new versions.
If you're on CentOS 8
A CentOS 8 server has gone the longest without fixes. Each conversion tool below takes a CentOS 8 server to another version 8 system, and what you can do after that depends on which one you used.
| Tool | Converts from | Lands on | What to know |
|---|---|---|---|
| almalinux-deploy | CentOS Linux 8.4 or later | AlmaLinux 8 | Updates end May 31, 2029. ELevate can then take it in place to AlmaLinux 9 and 10. Needs GRUB2 and reliable console access |
| migrate2rocky | An EL8 system (non-Stream CentOS is frozen at 8.5) | Rocky Linux 8 | Updates end May 31, 2029, and ELevate no longer upgrades Rocky Linux. A dropped SSH session can leave the system unrecoverable |
| Convert2RHEL | CentOS Linux 8.5 | RHEL 8.5 | Needs a RHEL subscription. RHEL 8 maintenance ends May 31, 2029, and Red Hat's Leapp upgrades RHEL 8.10 in place to RHEL 9 |
Tool details come from the almalinux-deploy README, the migrate2rocky README and Red Hat's Convert2RHEL and upgrade docs, and AlmaLinux's ELevate overview lists in-place upgrades between EL8 and EL9 and between EL9 and EL10. Run migrate2rocky inside screen or tmux so a dropped connection doesn't kill it.
If you stop at version 8, you have about 32 months before its update support ends. There's no version 8 image on DreamHost. If you're moving a CentOS 8 server here, you'll rebuild on 9 or 10 and work through the same list as a CentOS 7 rebuild.
CentOS end of life FAQs
Is CentOS 7 end of life?
Yes. The CentOS Project's own page lists CentOS Linux 7 as ended, and its repositories now sit in the CentOS vault. Red Hat, SUSE, CIQ and TuxCare sell paid plans that keep updates coming for a while.
Is CentOS 8 end of life?
It is. Its packages moved to vault.centos.org and get no more updates, and CentOS Stream 8's builds ended on May 31, 2024.
Is CentOS 9 end of life?
Not yet. The 9 you'll find is CentOS Stream 9, and endoflife.date lists its end of life as May 31, 2027. The CentOS Project describes Stream as tracking just ahead of RHEL development.
Can I upgrade CentOS 7 to CentOS 8?
Not to anything still supported, since CentOS Linux 8 has ended too. ELevate takes CentOS 7 in place to AlmaLinux 8 or CentOS Stream 8, and Stream 8's builds ended on May 31, 2024, so AlmaLinux 8 is the useful stop. From there the same tool carries on to 9 and 10.
Can I convert CentOS 7 to Rocky Linux in place?
Not with a supported tool today. ELevate dropped Rocky Linux as a target in its November 3, 2025 update, and migrate2rocky only works on version 8 or 9. To run Rocky Linux, rebuild on Rocky Linux 9 or 10.
Sources
- CentOS Linux, The CentOS Project, Oct 2, 2026. centos.org/centos-linux
- CentOS Linux EOL, The CentOS Project, Oct 2, 2026. centos.org/centos-linux-eol
- CentOS Stream, The CentOS Project, Oct 2, 2026. centos.org/centos-stream
- CentOS Stream end of life, endoflife.date, Oct 2, 2026. endoflife.date/centos-stream
- What is CentOS Linux EOL?, Red Hat, Oct 2, 2026. redhat.com/en/topics/linux/centos-linux-eol
- Red Hat Enterprise Linux Legacy Extended Support Offerings, Red Hat, Oct 2, 2026. access.redhat.com/support/policy/updates/errata_legacy
- Red Hat Enterprise Linux Server, Red Hat Store, Oct 2, 2026. redhat.com/en/store/red-hat-enterprise-linux-server
- Converting from a Linux distribution to RHEL using the Convert2RHEL utility, Red Hat, Oct 2, 2026. docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html-single/converting_from_a_linux_distribution_to_rhel_using_the_convert2rhel_utility/index
- AlmaLinux Release Notes, AlmaLinux OS Foundation, Oct 2, 2026. wiki.almalinux.org/release-notes
- Rocky Releases, Rocky Enterprise Software Foundation, Oct 2, 2026. docs.rockylinux.org/10/releases
- ELevate, AlmaLinux OS Foundation, Oct 2, 2026. almalinux.org/elevate
- About ELevate project, AlmaLinux OS Foundation, Oct 2, 2026. wiki.almalinux.org/elevate
- ELevating CentOS 7 to AlmaLinux 10, AlmaLinux OS Foundation, Oct 2, 2026. wiki.almalinux.org/elevate/ELevating-CentOS7-to-AlmaLinux-10.html
- ELevate Frequent Issues, AlmaLinux OS Foundation, Oct 2, 2026. wiki.almalinux.org/elevate/ELevate-frequent-issues.html
- almalinux-deploy, AlmaLinux OS Foundation, Oct 2, 2026. github.com/AlmaLinux/almalinux-deploy
- migrate2rocky, Rocky Enterprise Software Foundation, Oct 2, 2026. github.com/rocky-linux/rocky-tools/tree/main/migrate2rocky
- How to migrate to Rocky Linux, Rocky Enterprise Software Foundation, Oct 2, 2026. docs.rockylinux.org/guides/migrate2rocky
- cPanel ELevate Project, cPanel, Oct 2, 2026. cpanel.github.io/elevate
- System Requirements for Rocky Linux, cPanel, Oct 2, 2026. docs.cpanel.net/installation-guide/system-requirements-rockylinux
- System Requirements for AlmaLinux OS, cPanel, Oct 2, 2026. docs.cpanel.net/installation-guide/system-requirements-almalinux
- Upgrading from RHEL 7 to RHEL 8, Red Hat, Oct 2, 2026. docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html-single/upgrading_from_rhel_7_to_rhel_8/index
- Upgrading from RHEL 8 to RHEL 9, Red Hat, Oct 2, 2026. docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html-single/upgrading_from_rhel_8_to_rhel_9/index
- Considerations in adopting RHEL 8, Red Hat, Oct 2, 2026. docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html-single/considerations_in_adopting_rhel_8/index
- Red Hat Enterprise Linux Extended Life Cycle Support, Red Hat, Oct 2, 2026. redhat.com/en/resources/els-datasheet
- Red Hat Enterprise Linux, endoflife.date, Oct 2, 2026. endoflife.date/rhel
- AlmaLinux OS 10.0 Release Notes, AlmaLinux OS Foundation, Oct 2, 2026. wiki.almalinux.org/release-notes/10.0.html
- migrate-to-oracle-linux (centos2ol), Oracle, Oct 2, 2026. github.com/oracle/centos2ol
- SUSE Multi-Linux Support, SUSE, Oct 2, 2026. suse.com/products/multi-linux-support
- CIQ Bridge, CIQ, Oct 2, 2026. ciq.com/products/ciq-bridge
- Pricing, CIQ, Oct 2, 2026. ciq.com/pricing
- Endless Lifecycle Support for CentOS 7, TuxCare, Oct 2, 2026. tuxcare.com/endless-lifecycle-support/centos-7-eol-support
- CentOS Linux 7 will reach EOL on Sunday (comment thread), Hacker News, Oct 2, 2026. news.ycombinator.com/item?id=40773749