Ask HN: Agencies, how do you host multiple client websites?
If you serve multiple clients and help them setup their own website but you provide the hosting, how do you usually do it ? Do you get one big dedicated server with big specs OR you get individual VPS for each client ? The cost is one factor but the main question is about how to manage a large number of clients when you provide them a hosting but for them, it is all "cloud" based.
Note: The clients are not technical but more like regular end users.
8 comments
Do all your clients use the same stack? Most resellers use 1 big server and cPanel and (although I dislike GUIs and abstractions) I can say that cPanel is really good at what it does.
If you're not fond of cPanel and you want to use multiple VPSs you should definitely do it with docker, one container per client and then map them to a CNAME (e.g. www.website.com), you can use AWS, DO or any VPS provider with a mature API to automate the process, use logspout and ELK for logging and you're all set.
You can either choose to scale vertically (more servers) or horizontally (increase CPU/RAM).
If you're not fond of cPanel and you want to use multiple VPSs you should definitely do it with docker, one container per client and then map them to a CNAME (e.g. www.website.com), you can use AWS, DO or any VPS provider with a mature API to automate the process, use logspout and ELK for logging and you're all set.
You can either choose to scale vertically (more servers) or horizontally (increase CPU/RAM).
yes currently using cpanels for the same purpose. It is not great but works well for our client base.
Every agency I've worked at didn't have one overarching solution for hosting client sites. Some clients already had a relationship with a hosting company and didn't want to change it. Other clients had a huge legacy codebase that they didn't want to pay to have replaced and we didn't want to pay to migrate and host it. With every client, there was some weird new situation that we had to navigate.
So rather than finding one solution, you might think about putting your client's sites into different buckets. Some sites might be a small one-off that you're starting from scratch, and those might fall into the shared hosting bucket. Some might be bigger or use a different stack than your typical site and those could fall into the VPS bucket. The remainder might fall into that unknown/unknowable zone, so it'd be good to plan out a way of managing third-party or client-hosted sites.
I think it's a rare thing for an agency to start off a new client relationship with an entirely blank slate, it'd serve you well to be flexible.
So rather than finding one solution, you might think about putting your client's sites into different buckets. Some sites might be a small one-off that you're starting from scratch, and those might fall into the shared hosting bucket. Some might be bigger or use a different stack than your typical site and those could fall into the VPS bucket. The remainder might fall into that unknown/unknowable zone, so it'd be good to plan out a way of managing third-party or client-hosted sites.
I think it's a rare thing for an agency to start off a new client relationship with an entirely blank slate, it'd serve you well to be flexible.
We host several agencies' clients' websites. The majority host their clients' websites across several managed servers (VPS or dedi). They opt for managed servers because they don't want to deal with upgrades, patching, or day to day server work. It frees up their time substantially (dev work is time consuming too).
But the choice between VPS and dedi depends on several factors (traffic, requirements, compliance, projections, etc). I always recommend starting small unless the business whose website being hosted is already established.
As far as the hosting platform is concerned, you should always seek to leverage a control panel. This is one of those things you wish you had only after you're stuck without one (we support panel-free servers too). Your clients don't need to contact you for every little change they need to make.
But the choice between VPS and dedi depends on several factors (traffic, requirements, compliance, projections, etc). I always recommend starting small unless the business whose website being hosted is already established.
As far as the hosting platform is concerned, you should always seek to leverage a control panel. This is one of those things you wish you had only after you're stuck without one (we support panel-free servers too). Your clients don't need to contact you for every little change they need to make.
Not really an agency but we (ISP/MSP) host sites (on FreeBSD) for many of our customers. Some of them we also design/develop and some sites are "managed" by the customers themselves (mostly these are just WordPress sites).
Sites that are 100% static content co-exist in a single jail but, other than that, it's one jail per customer (whether they have one or multiple sites). We would separate multiple sites belonging to the same customer into multiple jails if there was a good reason to, though.
Another jail runs nginx as a reverse proxy in front of the jails.
The big concern for me was the compromise of one site affecting other, unrelated customers. That's why we've separated them like this.
Sites that are 100% static content co-exist in a single jail but, other than that, it's one jail per customer (whether they have one or multiple sites). We would separate multiple sites belonging to the same customer into multiple jails if there was a good reason to, though.
Another jail runs nginx as a reverse proxy in front of the jails.
The big concern for me was the compromise of one site affecting other, unrelated customers. That's why we've separated them like this.
AWS and Rackspace are awesome. Scale up and down as you need.
I think hosting client websites on multiple servers is more safe solution - imagine that Your hosting company have a huge server wipeout or something that makes Your data lost for ever. And Your EVERY SINGLE CLIENT data too.
There's a thing called backup....every serious agency should do client's backups daily imho...