Building a personal linux server for small enterprise purpose

0

I'd like to open my own agency and offer map (GIS) services to potential customers. I am thinking about the best way to host and serve such data/services.

Right now, what I can think of is:

  1. server in pharm
  2. server in cloud (e.g. Amazon AWS, Microsoft Azure, etc.)
  3. building my own server

As a passionate of OpenSource Software and Hardware, and being a Linux user, the third option is what excites me the most.

Considering I am not a network specialist, but I have little knowledge and enough confidence to try it, and especially that my initial business would be very limited (e.g. three small customers), here are some some PROs and CONs I thought of:

PROs

  • I own everything (hardware, data, ...)
  • it may cost less (I can reduce the cost according to my and others needs and experience)

CONs

  • I have to do everything by myself (setup, backup)
  • it may cost more (electricity, internet, general maintenance?)
  • proper space to host the server machine

Given that I am planning to use CloneZilla to backup regularly (for restoring or even porting everything to a more capable machine), buying a uninterruptible power supply and a SSD, and that I would use 100% free OSS (e.g. most likely Ubuntu Server as OS), would you recommend such strategy for a small business at its beginning?

umbe1987

Posted 2018-10-15T14:04:19.267

Reputation: 119

Question was closed 2018-10-15T20:34:32.547

Answers

2

There's one even bigger CON you missed:

  • It's harder to scale.

This item alone is a large part of why cloud hosted options are popular for new businesses that are providing network or web services.

Put quite simply, assume you get this set up, you have a great server (which is not hard), a great internet connection (which actually can be very hard to obtain depending on where you are located), and have all the software set up just like you need it. Then, suddenly, one week in, your service goes viral. Everybody suddenly knows about it and wants to use it. You now need exponentially more processing power and network bandwidth right now otherwise you're going to lose potential customers.

With a self hosted solution, you have to find a way to get the new hardware on short notice (if you plan smart, you already have at least a full system on-site as a backup, but that may not be enough to cover your sudden influx of new users), get it set up on short notice (which may take a while depending on how big the base image is), and then if you're being sensible, you have to compensate your existing users for the downtime caused by the original server not keeping up with the increased load.

With a basic cloud hosted solution, you eliminate the need to find new hardware, and just have to do the software setup on the new nodes.

With a good cloud hosted solution and proper integration, you eliminate most of the setup work too, and just need to hit a couple of buttons to spin up new instances of the same server.

With a really good cloud hosted solution and well thought out integration, you just have to sit back and figure out what you're going to do with this influx of new profits, because the cloud hosted solution automatically scaled up to meet the increased demand without you having to lift a finger.

Now, covering the other advantages and disadvantages (which are arguably not as big as scalability):

  • Space: Probably not an issue for you given what you've said. A standard server rack should be more than enough for what you need, and they're really not all that big
  • Cost: As stupid as it may sound, the cloud solution is probably going to cost a bit less than self hosted. Among other things that need to be factored in for costs that most people don't think about:
    • Internet access. Good internet access is not cheap in some parts of the world, and it's not unusual for an ISP to require that you use a business plan instead of a consumer plan if you want to host anything.
    • HVAC. Quite simply, you need to keep your server in a good environment for it to work reliably and not have hardware problems. If you want to just have a decent baseline, you want temperatures between 18 and 22 celsius year around with less than 30% relative humidity, and, most importantly, a minimum of dust. Achieving even this basic level of climate control is not cheap when you've got a remarkably efficient space heater running 24/7 in the room.
    • Physical security. Providing a decent baseline of physical security is not cheap.
  • Management. You actually should still do most if not all of the systems-level management yourself even if you go for cloud hosting, it gives you much better control of how your systems work. Given that, other than hardware management, you don't really have to do much more work for a self hosted option.
  • Ownership. This should not be an issue provided you trust the cloud hosting provider (and you should not do business with them if you don't).

Austin Hemmelgarn

Posted 2018-10-15T14:04:19.267

Reputation: 4 345

thank you for your in deep answer. Really appreciate your expert point of view and I surely consider the cloud solutipn now. – umbe1987 – 2018-10-15T19:51:30.550