Friday, October 4, 2013

Moving from CentOS 5 to CentOS 6

Recently we ended up upgrading the base OS at my organization from CentOS 5 to CentOS 6. Our product is an application built in Qt with dependencies on PostgreSQL and Qwt.

Now with the old solution being based off CentOS 5, Qt 4.5 and Qwt 5.1, there were a number of stability and performance issues that were observed. So finally we decided to bite the bullet and decided to shift to CentOS 6. The reason for not proceeding earlier was there are a number of hardware peripherals and interfaces that our system uses which doesn't have upgraded drivers etc. So the task fell on me to go through all the pieces and get a good estimation of efforts required for this jump and what problems we would face.

It was decided that we would also upgrade to Qt 5 and Qwt 6 alongwith jump to CentOS 6. After getting a fresh installation ready we - me and one of my colleagues, started going through the requirements one by one. PostgreSQL was easy. Add the repository and fetch the required version. Qt was toughest. It took a lot of tweaking and installing lots of development libs etc to get it compiled properly and even then we ended up recompiling it again since we ended up with screwed up prefix setting.

Anyway after a fortnight we had the system up with Qt and Qwt compiled and the application refactored to work with Qt 5. Refactoring the application itself took about a week for two of us, and even then I don't think it's a good job. Mostly just good enough to get the UI up and get started. So after performing a quick prayer we started the App through it's startup script. Thankfully it started without any issues and we let it run for couple of days. After a steady run we are now nitpicking through the performance corners, compatibility corners and life is going to be interesting.

It was a good experience for me to see such a generation-big upgradation of a system and have a first-hand. We faced a number of problems and some of them readily solved while some other took a while to fix. At the same time it was good to know that CentOS has as good a community as any and lots of helpful people.

No comments:

Post a Comment