Bbusiness gotchas hosting my clients

I've been using a 512 linode with Ubuntu 10.04 for a little less than a year, but I have been using Linux servers and desktops for longer on my own hardware. I use the linode for developing Drupal applications, but I have never offered hosting to any of my clients. Recently it's dawned on me that a project I'm about to develop, which will be two separate sites sharing a single Drupal code base, would be much easier for me to manage on my linode than with another managed option. Does anyone have any advice about business gotchas that should be avoided when making this kind of move? I won't be hosting mail for this particular project, so should make things pretty easy. Looking ahead, this client is really going to need to sign a maintenance contract with me because they don't have anyone in-office who can field even the smallest hosting issues; so I figure I may as well host the sites myself.

5 Replies

The major business-gotcha I can think of is payment: the Linode(s) backing the site have a monthly recurring cost which will have to be passed to the client somehow. This either means they have a relationship with and handle payments to two vendors (Linode and you), or you front the Linode money and bill them.

I usually end up in the first scenario, but my clients tend to be "people like you" (i.e. developers) rather than "real" clients (i.e. your clients), so it just turns into a job for password management and Chrome's porn mode. (For the multiple simultaneous logins.) Checks arrive, and they clear, and everything runs, and life is good.

The second seems cleaner, though, and would work well with a maintenance contract. Plus, you can share resources between clients for the benefit of all, e.g. database servers, memcached servers, …

If you do this often enough, shared hosting becomes a PITA to deal with. :-)

(Note: take a serious look at Aegir if you're doing Drupal-based stuff.)

I was thinking about doing the later of your suggestions, front the cost of the linode and then bill them for hosting. I'm not really interested in charging them a lot for this, I really just want to have better control, etc. - and why not, I like fiddling around on servers anyway. Shared hosting is already a pain for me, too, which is why I'd like to make this change now and hopefully stick with it in the future. I'll need to make sure that I'm not liable for security attacks, although I don't think I have much to worry about, I have the only user account and SSH is locked-down, keep everything up-to-date, etc. I guess I was just really looking for words of wisdom, thanks for your advice!

@steveplatz:

I'll need to make sure that I'm not liable for security attacks, although I don't think I have much to worry about, I have the only user account and SSH is locked-down, keep everything up-to-date, etc.
That's what a well-written contract is for. You're not only the developer but also the host, so make sure your contract includes all the relevant provisions that would normally be included in a contract between a host and its customer.

@hoopycat:

Chrome's porn mode. (For the multiple simultaneous logins.)
Porn mode is good for multiple simultaneous penetrations, too… No, I mean, penetration testing. :oops:

@hoopycat:

Porn mode is good for multiple simultaneous penetrations, too… No, I mean, penetration testing. :oops:

With or without the NIC in promiscuous mode?

@steveplatz:

I'll need to make sure that I'm not liable for security attacks, although I don't think I have much to worry about, I have the only user account and SSH is locked-down, keep everything up-to-date, etc. I guess I was just really looking for words of wisdom, thanks for your advice!

Liability is what it is. Keep good backups, don't be stupid ("Oooh, 'Free Airport Wifi'… time to FTP down the credit card numbers!"), keep more good backups, and document how to re-deploy everything quickly in case something bad happens. (And test this.)

My major word of wisdom, however, is "automation." NOTHING will familiarize you with your system quite like writing deployment scripts from scratch. For various reasons, Chef is how we roll, along with fabric and libcloud to automate the automation. (Aegir and Chef/Puppet/cfengine/… complement each other, by automating different things.)

You know, if I were smart, I'd change my title from Cloud Mechanic to Mesoscale Controller.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct