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

Migrate linux builder OS from CentOS 7 to RockyLinux 8 #379

Closed
wuhuizuo opened this issue Aug 13, 2024 · 0 comments · Fixed by #381
Closed

Migrate linux builder OS from CentOS 7 to RockyLinux 8 #379

wuhuizuo opened this issue Aug 13, 2024 · 0 comments · Fixed by #381
Assignees

Comments

@wuhuizuo
Copy link
Contributor

wuhuizuo commented Aug 13, 2024

Plan

The overall plan will be completed within 2024-9 and then apply in building of new TiDB major or minor versions.

Background

The impact of the end-of-life of CentOS 7

The CentOS 7 operating system officially entered the end-of-life (EOL) phase on June 30, 2024. This means that Red Hat will no longer provide security updates, vulnerability fixes, and other technical support for CentOS 7. Continuing to use CentOS 7 will lead to the following serious consequences:

  • Security risk greatly increased: over time, CentOS 7 system will accumulate a large number of security bugs, hackers can use these vulnerabilities to launch attacks, causing serious damage to the company's data and business.
  • Software compatibility issues: With the continuous development of software technology, more and more software no longer supports CentOS 7. For example, Node.js 18 and higher versions do not support installation on CentOS 7, which will directly affect our projects developed based on Node.js.
  • Toolchain aging: The toolchain version on CentOS 7 is relatively old and may not meet the requirements of the Development Environment for new projects. This will lead to low development efficiency and increase the difficulty of debugging and maintenance.
  • Reduced community support: With the decrease of CentOS 7 users, community support for CentOS 7 will gradually decrease, which will make it difficult for us to find relevant solutions and help.

Impact on the company's business

  • Decreased Development Efficiency: The outdated Development Environment will lead to low productivity of developers and increase development costs.
  • Project Delays: Project development cycles may be extended due to software compatibility issues and toolchain limitations.
  • Damaged reputation: Once a security incident introduced by the compile environment occurs, the company's reputation will be seriously damaged.

The need for upgrading

In order to deal with the risks brought by CentOS 7 EOL and ensure the security and stability of the company's business, we must upgrade the compile environment to a long-term supported and secure operating system as soon as possible.
CentOS 7's EOL has sounded the alarm for us. If we don't take timely action, we will face huge security risks and may face business losses. Upgrading the compile environment is a necessary measure to ensure the long-term development of the company.

Upgrade target

Based on CentOS 7 EOL and our requirements for stability, security, long-term support, and toolchain compatibility, we decided to upgrade the compile environment to Rocky Linux 8 .
By upgrading the compile environment to Rocky Linux 8, we expect to achieve the following goals:

  • System Stability: Rocky Linux inherits the stability of RHEL and provides a reliable platform for our software development.
  • Enhanced security: Get the same security updates as RHEL to reduce the risk of system attacks.
  • Enhanced software compatibility: Supports more emerging technologies and development frameworks.
  • Reduce costs: Free and open source features can save software licensing costs.
  • Promote community collaboration: Participate in an active open source community and get more technical support and resources.

Reasons to choose Rocky Linux 8

  • Highly compatible with CentOS 7: Rocky Linux is a community-driven RHEL clone with extremely high compatibility with CentOS 7 in terms of kernel, system libraries, etc. This allows us to smoothly migrate to Rocky Linux 8 without making extensive modifications to the existing code.
  • Long-term support: Rocky Linux provides the same long-term support cycle as RHEL, ensuring that our compile environment remains stable and secure for extended periods of time.
  • Free and open source: Rocky Linux is a completely free and open source operating system, which saves us a lot of software licensing fees.
  • Active Community: Rocky Linux has an active community that provides timely technical support and assistance.
  • Rich software ecosystem: Rocky Linux compatible with RHEL software ecosystem, can easily install and configure a variety of software packages.
  • Previous experience : The component container mirroring released from TiDB v6.6 has been adjusted to Rocky Linux 9.
  • Rocky Linux 8 has been verified for a longer time: Compared with Rocky Linux 9, Rocky Linux 8 has been tested and used by the community for a longer time, and its stability is relatively higher.
  • Better compatibility: Rocky Linux 8 is more compatible with CentOS 7. For those projects that rely on the CentOS 7 ecosystem, migration to Rocky Linux 8 can be smoother.
  • Reduce unknown risks: As a newer version, Rocky Linux 9 may have some undiscovered bugs or compatibility issues, while these issues of Rocky Linux 8 have been widely verified and fixed by the community.

Advantages of choosing Rocky Linux 8 over RHEL 8

  • Completely free: No licensing fees are required, reducing costs.
  • Community-driven: more flexible and open to respond quickly to community needs.
@wuhuizuo wuhuizuo pinned this issue Aug 13, 2024
@wuhuizuo wuhuizuo self-assigned this Aug 13, 2024
wuhuizuo added a commit that referenced this issue Aug 13, 2024
wuhuizuo added a commit that referenced this issue Aug 13, 2024
ti-chi-bot bot pushed a commit that referenced this issue Aug 13, 2024
wuhuizuo added a commit that referenced this issue Aug 13, 2024
wuhuizuo added a commit that referenced this issue Aug 13, 2024
wuhuizuo added a commit that referenced this issue Aug 21, 2024
@ti-chi-bot ti-chi-bot bot closed this as completed in #381 Sep 2, 2024
@ti-chi-bot ti-chi-bot bot closed this as completed in 8a12cd0 Sep 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant