Nextcloud cluster question
Thank you, severalnines, for the brilliant guide to deploy a Nextcloud ("NC") cluster (something I have been wanting to do for a while)! Without the guide, and also without Clustercontrol, I wouldn't have been able to achieve this so quickly.
Now my cluster is actually up and running (only in test environment because there is so much to learn about clusters in general and NC and mysql clusters in particular).
The last step in the guide mentions using redis, how to install and to integrate into NC config. When it comes to providing the host address, it only gives the IP of the first NC host and not of the others. I imagine this can work. But I am wondering what will happen, if that one host is down. Will the other two hosts then be rendered inoperational? Would it make sense to install redis on all NC hosts and reference the IP in the NC config file as "localhost"? Or is this not needed, as NC is recommended to run in a single-writer setup only. But then, I wonder, irrespective of using redis or not, whether this setup will work when the writer host is down?
Yes, you are spot on. Redis was configured as a standalone in that blog post. For production setup, it should be configured with HA, but it was not the focus at that time.
Starting from v1.9.0, ClusterControl supports Redis replication with Sentinel, available in ClusterControl GUI v2. If you would like to use Redis Sentinel, take note that ClusterControl only supports one database type/role per node. If you follow the architecture diagram in the blog post, the 3-node Redis Sentinel has to be deployed on a set of new hosts. You can't co-locate them within Percona XtraDB Cluster or ProxySQL hosts, since these hosts are already part of another cluster. Alternatively, you may co-locate Redis within NextCloud + GlusterFS hosts, and deploy Percona XtraDB Cluster on a new set of hosts.
If you intend to use "localhost" for Redis, you have to use Redis Cluster, not Redis Sentinel. That means you have to set up your Redis Cluster manually. I am not sure if NextCloud supports Redis Sentinel (commonly, the DB client/connector will figure out the replication topology from Sentinel before connecting to the right Redis master).
Please sign in to leave a comment.