SonarQube Version: 9.9.6 (build 92038) → Upgraded to 2025.1.0.102418 Edition: Developer Java Version: 17 Server OS: Migrating from CentOS 7.9 (EOL) to Rocky 9
Since CentOS 7.9 has reached EOL, I planned to migrate my SonarQube installation to a supported OS (Rocky 9).
Migration Steps Taken:
Cloning & OS Migration:
Cloned the CentOS 7.9 server and migrated it to Rocky 9.
Changed the cloned server’s IP and hostname.
Confirmed that SonarQube (version 9.9.6) on the new Rocky 9 server was accessible via http://<IP>:9000.
SonarQube Upgrade:
Upgraded SonarQube from 9.9.6 → 9.9.8.100196 and verified login access.
Further upgraded from 9.9.8 → 2025.1.0.102418, confirmed login access was still fine.
Database Migration:
Copied the latest database from the CentOS 7 (SonarQube 9.9.6) server to the Rocky 9 (SonarQube 2025.1) server and restored it.
Ran the following PostgreSQL maintenance commands after restoration:
VACUUM FULL;
REINDEX DATABASE <db_name>;
ANALYZE;
Issue Faced:
The SonarQube UI is accessible, and I can log in as admin.
However, when running an analysis, we receive the following license error:
"errorMessage": "Analyses suspended. Please renew your license."
The CentOS 7 server is still operational, and SonarQube runs fine there with an active license.
Questions:
Is there any issue with restoring a SonarQube 9.9.6 database onto SonarQube 2025.1?
Could the license be tied to specific system properties (e.g., IP, hostname, MAC address)? If so, would moving the original MAC address to the new server resolve the issue?
Are there any additional steps required to resolve this license error after migration?
Once the license issue is resolved and all functionality is verified, I plan to shut down the CentOS server and transfer the IP/hostname to the Rocky 9 server.
Any insights or recommendations would be greatly appreciated.
This is an open community with people volunteering their free time to provide assistance. We’re eager to contribute to the community, but you are not guaranteed a fast response.
You’ve got two SonarQube instances pointed to the same DB? That doesn’t work and will cause weird errors and could possibly break things. You need to turn one of them off right away.
Actually the new SonarQube server is pointed to the production server, but no updates are performed on it. As I mentioned earlier, I could see the licence error on the new one.
We are planning to switch off the production server permanently as it runs on EOL OS. So my question is, once I switch of the production server, will the licence error on this new SonarQube server will be resolved by itself? Or do I need to make any modification on the server side?
If you have two SonarQube instances pointed to the same DB (and it’s still not clear to me whether or not you do), you need to turn one of them off immediately.
If you’re seeing a license error now, that’s not likely to go away once the extra SonarQube is turned off.
If the JDBC URL changed in the shuffle, then you’re going to need to request a new license key.
Could you please explain me more about how the license works with the SonarQube?
My JBDC URL on both servers are as below.
Production server : sonar.jdbc.url=jdbc:postgresql://localhost/<db_name>
New test server: sonar.jdbc.url=jdbc:postgresql://localhost/<db_name>
Once I poweroff the production server, I will replace the IP in the new server with the one in the production server. The hostname will also be replaced with the production one. So everything looks same as the production server.
In that case, will there be any more license issue?