Upgrade by transfer is the process of switching to the latest Plesk version by moving all the hosting data and settings from the current Plesk server to a server with the latest version installed.
This approach is preferred when upgrading servers with an operating system (OS) that either falls under the end-of-life policy or is approaching its support termination date.
Upgrade by transfer also allows you to minimize the downtime of services on the production server, as websites stay online while the transfer is in progress.
This article provides some recommendations on performing a smooth Plesk transfer to the newer version.
Before starting the transfer, use this checklist to verify the transfer is possible and make sure the server has enough resources and satisfies all prerequisites:
Choose the appropriate destination Plesk environment
See Plesk Knowledgebase article #120998 to find out which Plesk version is compatible to transfer from your source Plesk server.
Compare Plesk licenses between your source and destination servers
If you deploy a brand new Plesk server, you must order a license with at least the same features and capabilities to host all the data from your source server. Alternatively, you may request a temporary license that doesn't have any limitations except the expiration date. You may need to contact your sales representative to get this license.
Make sure you have enough server resources to perform the data transfer
Check the available diskspace. The source server should contain at least the same amount of free disk space as needed to transfer. The destination server must contain free disk space at least twice the size of the data being migrated. This extra space is required to store the dump on the destination server and extract data from it. Note: for migrating to Plesk version 12.5 and higher, the disk space requirements are different.
Equalize the number of IP addresses between source and destination server
During the transfer, shared and dedicated IP addresses are mapped respectively. As a result, you need to make sure your destination Plesk server has the same amount and type of IP addresses as the source server.
Increase Plesk PHP limits to handle heavy and long-running operations
If the source Plesk implementation contains a lot of objects (domains, mailboxes, aliases, DNS records, etc), the default Plesk PHP limits may need to be increased:
- On Linux
- On Windows
Pay particular attention to the
- On Linux
Make sure your source and destination server can communicate to each other
Since version 12.5.30 for migration purposes the following ports are required to be opened:
- 135, 139, 445 (TCP) ports for migration - Windows Only
- 137, 138 (UPD) ports for migration - Windows Only
- 10155 (TCP) for a custom Plesk Migrator service performing miscellaneous tasks - Windows Only
- 10156 (TCP) for rsync server(migration) - Windows Only
1434 (TCP) and all (or manually selected) TCP ports for MS SQL, if it is used as a named instance
- When migrating from Linux, allow TCP connections to port 22 (SSH).
Install Migration & Transfer Manager component on destination Plesk server
Open the Plesk control panel and go to Tools & Settings > Updates and Upgrades. The Installer web interface will be opened in a new window or tab. In the Installer window, click Add Components, select the checkbox corresponding to the Migration & Transfer Manager component, and click Continue.
Choose an appropriate timeframe for final transfer
It is advised to perform the transfer during a period of minimal load on the servers. The fewer requests coming to the source server during the transfer, the more consistent the data will be between source and destination once the transfer is finished. In addition, the transfer procedure may consume system resources such as CPU, memory and network bandwidth. Running the transfer during non-business hours may reduce your risk of service outage.
Notify your customers about your pre-scheduled migration date. For instance, the nameserver IP address may need to be switched to the new destination server for some domains. This step may require customer involvement, so plan ahead.
To make sure your data will be transferred correctly and consistent on destination server, use the following steps:
Decrease the TTL for DNS zones to 1 hour or less
A low TTL allows you to refresh DNS changes more quickly and display migrated content.
You can use the Plesk DNS CLI utility to decrease the TTL:
$ for domain in $(MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysql -u admin psa -Ns -e"select name from dns_zone where name not in (select val from misc where param = 'FullHostName')") ; do /usr/local/psa/bin/dns --update-soa $domain -soa-ttl 1h; done
On Windows in cmd.exe
"%plesk_bin%"\dbclient.exe --direct-sql --sql="select name from dns_zone" > C:\domains.txt FOR /F %D IN (C:\domains.txt) DO IF NOT '%D' == 'name' "%plesk_dir%\bin\dns.exe" --update-soa %D -soa-ttl 1h
Perform the initial migration
Open the destination Plesk and go to Tools & Settings -> Migration & Transfer Manager -> Start New Migration. Follow the wizard to initiate the migration process.
Note: If you are transferring Plesk for Windows Server With Custom Hosting, you need to use the following guide.
Note: If your Plesk servers are members of an Active Directory domain, you need to use a local account with privileges of the local administrators group, while specifying credentials for the source host in the migration wizard.
Check the migration results. Investigate warnings or errors if any.
Suspend domains for 100% consistency (optional)
If your source Plesk server hosts domains with content that is updated frequently (such as a forum, blog, ecommerce applications, and so on), it may be a good idea to suspend those domains to avoid possible data loss or routine duplicates.
Run final migration
This is also an optional step if the initial migration was completed successfully. However, in case of critical errors and partial data transfer, another migration session may be required to completely transfer all source server content.
Verify that services are up-and-running on the destination server
Spot-check several webspaces and their related websites, emails, and databases to make sure they function properly on the destination server.
Make the necessary changes to DNS at the Registrar or managed system
Update your nameserver IP address with the Registrar if required and update the DNS zones on external nameservers to reflect the recreated DNS records for transferred services.
Mass migrations and transfers:
If you want to perform a mass migration or transfer, consider using a specialized mass migration/transfer script. See this article for step-by-step instructions.
Manual migrations and transfers:
Sometimes a manual migration or transfer is the best approach. For example, you might have mail content or databases that are challenging to move with the Migration and Transfer Manager, your connection speed might be too slow to complete the automated approach, or you might be recovering content after a server crash. Step by step instructions for manual migrations and transfers are included in this KB article: How to migrate Plesk data manually with Plesk Migration Manager.
- How to migrate Calendar, Personal Address Book, and Horde Webmail preferences manually.
- How do I restore Plesk from the hard disk drive if the Operating System is broken and the HDD with the old OS and Plesk is mounted in the new system?
- If you prefer to let Plesk professionals handle the migration or upgrade job for you please check out Plesk professional services options on our website: https://www.plesk.com/professional-services/