we are currently using the Nextcloud VM image by Hansson IT. I want to replace it with a high availability clustered design, preferably based on docker and then migrate existing data.
I read about different approaches here, some using docker swarm, some glusterfs, haproxy etc.
Can you guys make some general recommendations for designing such a system and point me into the right directions?
We do have co-location in two separate datacenters. I’m planning to have one instance per datacenter. A performant inter-dc connection is available. NC/Docker would run on VM’s on vSphere. Load balancers (F5) are available, but it’s not a requirement to use those.
Thank you so much!
I think this forum it’s not the right place for this question. Majority of the users are private enthusiasts without professional expertise.
The design you are looking for is not very easy and not many people can understand all relevant factors and point in the right direction. Nextcloud instance basically consists of the application, database and storage tied together by some configuration. The state all 3 components must be the same (e.g. each file record in the database must belong to a file on the storage). There are number of options to make each of the components HA but building HA over all the components together is not very easy, and it depends on your expectation. Already the term high-availability could fits into very broad range from “start a copy of the application in the backup data center within few hours” to “each user session must survive an outage of single/multiple components”.
Nobody can’t seriously propose such design without understanding your requirements, existing hard- and software and your know-how…I would recommend your to reach out to Nextcloud GmbH or any other qualified system integrator and book some hours professional support there.