Home ยป Migration Chronicles: Transitioning from CentOS 7 to Azure Linux on LinkedIn.

Migration Chronicles: Transitioning from CentOS 7 to Azure Linux on LinkedIn.

The engineering team at LinkedIn recently shared insights on the migration of LinkedIn’s system from CentOS 7 to Microsoft’s Azure Linux on their blog.
After Microsoft acquired LinkedIn, there was a plan to shift all existing server systems to Azure, but the transition was not successful. The operating system migration took place in early 2024 and concluded by the end of April.
LinkedIn stated that the main goal of the operating system migration was the need for a more modern OS (CentOS 7, based on RHEL 7 released in 2014, was becoming outdated) to support the rapid development of new AI features for over a billion LinkedIn members.
The issue with CentOS 7 reaching the end of support in June 2024 pushed LinkedIn to hasten the system migration. The original plan was to upgrade to CentOS 8, which should have been done by 2019. However, with CentOS 8 reaching end-of-life in 2021, alternative solutions had to be explored.
The LinkedIn engineering team found Azure Linux to be a suitable solution due to its modern architecture, new features like efficient image file creation for faster boot times, continuous security patches, long-term Microsoft support, and cloud-centric design.
However, the complexity of the original LinkedIn system made migrating to Azure Linux a challenging task. LinkedIn’s approach was to conduct pilot system migrations to familiarize internal teams with the new OS, identify obstacles and limitations beforehand, develop migration tools internally, and thoroughly test before the final migration.
Some issues encountered during the planning phase included:
– Choosing the XFS file system, not natively supported by Azure Linux, yet proving to be the most efficient in almost all cases except for Hadoop.
– Significant changes in systemd usage from CentOS 7 to Azure Linux, requiring the team to adjust internal systems.
– LinkedIn facing limitations in the OS image customization process, which Azure addressed with the Azure Linux Image Customizer tool.
– Handling global changes logging risked disruptions during the system migration, leading to temporary adjustments by the engineering team.
– Adapting hardware drivers, initially using DKMS on Linux, to be compliant with Microsoft’s signing policy on Azure Linux, necessitating a standardized version of Azure Linux drivers.
Due to the absence of a graphical user interface in Azure Linux, tasks such as managing GUI-dependent VMs shifted from RDP on CentOS desktops to remote-connected IDEs.
LinkedIn’s system comprised stateless and stateful components, with automatic migration to Azure Linux for the former and data partition transfer, MySQL package creation, and potential application refactoring for the latter, to minimize downtime.
The migration from CentOS to Azure Linux was a gradual process, starting in January 2024 and completing around March, with nearly all of LinkedIn’s systems successfully running on Azure Linux.
LinkedIn emphasized the importance of pilot testing, highlighting the value of sharing experiences and learnings with other engineering teams through technical talks, meetings, and casual discussions during work hours.
Source: LinkedIn Engineering Blog

TLDR: LinkedIn’s engineering team detailed the intricate migration of their system from CentOS 7 to Azure Linux, emphasizing the importance of pilot testing and knowledge sharing among teams during the transition process.

More Reading

Post navigation

Leave a Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Farewell CentOS: After a 20-Year Run, It’s Time to Part Ways with Version 7 as Support Comes to an End