Synchronize Plesk Servers (Failover)
Keep two (or more) Plesk servers in sync for a failover scenario.
Migration Manager only allows manual "sync"
We hear you and see a clear demand for this feature.
I want to say that implementing these features requires a lot of investment, and in 2021 Plesk team keeps focusing on the delivery of other improvements (sad, but true).
We will back to the re-evaluation of these features at the beginning of the next year.
Please continue to share your use cases and requirements, and it would really helpful if you point to existing solutions that we can review and check before implementation.
Your feedback is important to us. Thank you, everyone.
Laurent Henni commented
This is the most requested suggestion...
Michael Lenz commented
Any updates planned for 2022?
Michael Neubauer commented
Faceki Inc commented
Melhem Dagher commented
H S commented
Welcome to 2022. 2013-2022. Waiting and waiting for this feature. Please do it.
I see here that it depends what kind of failover is requested to be implemented. A manual failover solution or an automatic one. Because for a manual one I do not see that it should be too complicated: Establish a permanent ssh connection between the servers and create a monitoring service who detects changed files. Afterwards they will be synced to the replication server.
Way more complicated might be a multi-node scenario or as said an automatic failover which detects if the primary goes down and starts the takeover based on defined conditions.
Recommendation: Create the manual failover approach for the normal licence and add a more complex solution for extra licensing.
agaitan, they have a cPanel migration tool but not one for Plesk yet. Knowing them, if there becomes demand for it, they will build it.
agaitan, it has been good. No issues at all. The CP is not as robust as plesk but they are always adding new features. I'm not aware of any import tools right now but they may have something. We have a pretty complex cloud setup already so we stopped using the plesk migrator years ago due to some problems with it. The Cluster CS team can be hired for custom work on migrations though.
hi Will how is clustercs? have any migration tool from cpanel plesk to that ?
I've since been migrating away from Plesk, over to https://clustercs.com/. Not only has it been noticeably faster and obviously an HA/cluster, but we have found savings spreading the computational workloads onto more smaller instances compared with the giant machines we have to use to support the Plesk way of doing things. So far so good. Very responsive and ambitious team over there.
C'mon guys! You can do it! Failover it's the thing!
Rob Lee commented
Hurry Up Plesk! Geez you're platform has been surpassed many times over
For some people said using database sync master to master (replication). It all fun until 1 database stop syncing and you only found out few month later after it stop replicated.
Solution is you can use external database service like Amazon then connect 2 server to that database.
Dennis Rahmen commented
In my setup,
the plesk server uses clustered network storage for the "vhost" and "mailnames" files.
I also have an external MariaDB Galera cluster for client databases, that the plesk server has access to through a load balancer.
This is in my opinion how it should be done.
Take as much clustering out of the hands of plesk as possible. Because plesk does not need to do that, there are better already existing solutions for that purpose.
Now to what plesk has to do:
Every plesk server should use its own database, as it is currently, and rely on an external database server for client databases.
Same for the files, those should be on an external file server.
Now plesk has to manage the config and customers, those should always be up-to-date on both servers, and it should not throw errors when both access the same file or database and try changing something.
Because fact is, if you need a cluster of plesk servers, you should also have external database and file servers.
I know it is not as cheap as just having two plesk servers do all the work but blowing plesk up is not the solution.
in fact, the main requirements to "cluster" option are(IMHO):
- Database syn as master-master to allow cross sync of databases;
- master-master sync of files(data), within work folders. Such idea has already been implemented in various services/software(the same google drive, one drive, seafile etc)
I believe everyone agrees to pay that as an additional license.
AS for DNS failover, it is something that can be added further, however, there are a lot of ready services that provide such solution based on monitoring. at the end such a system can be developed on your own.
Have to agree w/ Plesk this is a highly complex task.
I have had to resolve myself to using a custom built load balancer, with Plesk merely acting as a low level http only (no ssl handshake) website manager.
It would be ideal, if Plesk had a proxy-only mode with likely a separate license, to act as a simple proxy and ssl certbot manager for domains, linked to a full installation of plesk itself.
HA and load balancing will require significant effort on their part, considering Plesk is not built to handle that job whatsoever.
And personally, I find nginx a far better product for caching than Varnish, especially for things like Wordpress.
I realize that's debatable. But seems to me a simple proxy management system with a linked Plesk server -- to separate SSL handshake from hosting, would be a far more achievable goal. And would open the door towards HA.
Plesk Staff, how about for an initial version you offer us the following:
1. An option to have Plesk Migrator perform regular syncs (using something similar to existing Plesk Scheduled Tasks)
2. Plesk should check to make sure another sync is not already running. Or better yet, breakup the sync by services (ie Email, Web, DB, DNS sync can run concurrently). This way if a sync of email is taking too long, the sync of other services can continue to take place on the desired frequency.
3. Offer an option for Plesk admin to update DNS zones for all services to point to new failover server. This can be a prerequisite to use an external DNS server (like Plesk Route53 or an external name server). So when the primary fails, the failover can connect w/ external name server to update DNS records for various plesk services and customer hosted sites to point to new server (ie failover server).
4. Once DNS is updated to failover server, primary server should get locked as to not allow updates (DB, Web, DNS, etc) as all changes should now occur on the failover. This will help ensure easy syncing back from failover to primary server.
5. Once primary server comes back online, plesk admin must manually select to over-write primary server with data from failover. It would be nice to have an option to select which services to sync from failover to primary (eg admin might select to only sync email or DB from failover to primary server but not other services).
I think most of the above capabilities are either available or can be easily added to Plesk with minimal investment. Overtime, Plesk can develop a more robust bidirectional sync.
Sam Thacker commented
Following up -- Plesk, thank you for providing an official response on this.
As I mentioned previously, I am still planning to continue my annual license. I am looking forward to seeing future updates on this.