This can happen because port 80 is not open, or your license has expired and/or your IP is out of date and also if the license server itself from cPanel is having issues.
In most cases as long as you have a valid license the following command will solve it:
/usr/local/cpanel/cpkeyclt
Updating cPanel license...Done. Update succeeded.
Building global cache for cpanel...Done
Cannot Read License File
To access the interface, you must install the license and ensure that the license is active.
To ensure that the server is licensed, navigate to http://verify.cpanel.net/, and enter the server’s public IP address.
If the server is licensed, run the /usr/local/cpanel/cpkeyclt command as the root user.
Make certain that port 80 is open to contact our license server and that your server’s hostname is a FQDN.
If you do not currently own a license, register at the cPanel Store and request a trial license in the Free Services section.
You can purchase or lease a license directly from cPanel, or from one of our Partners.
After you successfully activate the license, reload the page and the message will no longer display.
cpanel, solutionthis, expired, ip, server, valid, usr, cpkeyclt, updating, update, succeeded, global, cache, interface, install, ensure, active, licensed, navigate, http, verify, rsquo, user, hostname, fqdn, currently, register, purchase, lease, successfully, activate, reload, display,