Looking for documentation for scalable deployments

Support intro

Sorry to hear you’re facing problems. :slightly_frowning_face:

The community help forum (help.nextcloud.com) is for home and non-enterprise users. Support is provided by other community members on a best effort / “as available” basis. All of those responding are volunteering their time to help you.

If you’re using Nextcloud in a business/critical setting, paid and SLA-based support services can be accessed via portal.nextcloud.com where Nextcloud engineers can help ensure your business keeps running smoothly.

Getting help

In order to help you as efficiently (and quickly!) as possible, please fill in as much of the below requested information as you can.

Before clicking submit: Please check if your query is already addressed via the following resources:

(Utilizing these existing resources is typically faster. It also helps reduce the load on our generous volunteers while elevating the signal to noise ratio of the forums otherwise arising from the same queries being posted repeatedly).

Hi,

I am looking for any documentation for a scalable deployment. We just finished our proof of concept and we like really like Nextcloud and would like to go to the next level and create a dev install for about 500 users but scalable to 50,000 users. Basically we want dev to be a small size version of our production. Is there any documentation that could help with this? Cheers!

Hey @toolbox welcome to the Nextcloud community :waving_hand:

sounds great :+1:

While Nextcloud is open source and the sky is the limit as far as user numbers and scale are concerned, your use case is beyond the community’s scope.

The community forum is a community of enthusiasts helping and supporting fellow enthusiasts. The community has a huge knowledge base and there are some very clued up folks in the community who gladly share their knowledge and expertise in the spirit of open source.

Scaled deployments are another ball game and require specialised professionals and engineers who spend time and money gaining their expertise. These folks are certainly also enthusiasts, but their livelihood depends on their expertise.

So where are the boundaries? As a rule of thumb you could say, from ~100 users you’re looking at a corporate instance and from ~500 users you’re looking at an enterprise solution and you’d be best looked after by the engineers and consultants at Nextcloud GmbH.

as for community documentation and deployment recommendations, you’ll find most of what you need here;

and upon subscribing you’ll have access to concise documentation here;

Welcome @toolbox :tada:

This sounds really interesting:

To scale out, you need to divide your solution into layers:

  • Network
  • Compute
  • File Storage
  • Session Management (Redis)
  • Database
  • Authentication Services

Then you have operational tasks:

  • Backups
  • Server & Application patching
  • Maintenance windows
  • SSL Management
  • Performance and Security Monitoring

In fact at this stage of planning you can ignore nextcloud and prepare the ground work to deploy it.

I’m going to mention a bunch of techno jibber jabber, but the fact that you are undergoing something like this I’m going to assume that you will know what I’m talking about :laughing:

Start with your network, design your network to support all the other layers. I’m assuming you are using a private cloud, using virtualisation. Design for migration, replication and a dedicated storage network like CEPH for example investigate VXLAN if using multi location or hybrid cloud.

Install a good SIEM like Wazuh or Elasticsearch, to monitor your servers as well as your network environment using a syslog collector

Docker and K8s seems to be the goto solution for scale. However for production i would first take a good look at set of ansible playbooks combined with terraform. This removes an additional layer of complexity. This can used to manage layers from network, Hypervisor to your network switches and CEPH Cluster.

You will need to have a reliable key value (redis) store across your next-cloud nodes, so prepare this for the nextcloud application. Then you can use
some reverse proxy load-balancers with VRRP HA between them and in front of your next cloud servers.

If you are going to be using Nextcloud Talk for all these users,It might be worth taking out a High Performance Backend subscription

Nextcloud High Performance Backend (HPB) | Faster Talk & Messaging | TAB.DIGITAL

What are you going to use for user Authentication and authorisation , LDAP, AD, External auth services ?

I would also recommend taking a look at a Enterprise HA solution for Mariadb or Mysql as well as NextCloud

Get your infrastructure in place first, Put some artificial stress on it. The deploy NextCloud

1 Like

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.