Having the right IT infrastructure for your small business is very important, small business do not have the budget or resources to setup an IT infrastructure that mimic much larger organizations with bigger pockets. Do you want to know how to setup up your small business IT infrastructure like an enterprise. This article will discuss how I setup my IT infrastructure to run my business websites and what I pay monthly for the services I use.
Lets first take a look at what I define as the minimum requirements to run a small business online and having the tools to communicate with potential customers, lets take a look at what my requirements was before I got started with my online business.
- Docs, Spreadsheet, Slides
- Video Conferencing
- Document Management
To setup a scalable secure website, you would need to set up an IT environment that allows you to grow and have the security that bigger businesses have. Here are the minimum requirements to get a website online.
- Domain Name – To get your business online you need a Domain Name.
- Web Hosting- Hosting your website is important – if you are a do it yourself, then you can signup for your own server – if you are not there are hosting companies that offer you other choices.
- Web Platform – Selecting a platform for you business can be tricky, there are many options out there – what you need to take into account, is to define what your online presence is going to be all about, are you going to have one site or multiple site, will you be selling through your site. Your web platform can be anything from a simple single blog to a sophisticate multi site business offering. There are many platforms available to you, you might want to leave this to a web agency if you are hiring one to get you online.
- Backup-howto backup your website – two aspects of backup the application backup and database backup
- For application backup you can choose a Source Code Repository
- For database backup – you can have a function in your application that backup you database, or you can have a more sophisticated solution. What you need to think about is how quickly you want to recover from a server failure and be back in business.
- Monitoring – Service to monitor your online presence
- Analytics – to analyse the site visitors to your site
- Security – Secure your website – using SSL certificate.
- Performance – deploying caching for performance gain
How did I pull it all together
Business Suite – I choose G Suite
Getting a domain is very easy nowadays, in my case I choose Go Daddy and for domain management I choose CloudFlare. For Domain name there are many options out there, you might want to look at a hosting company that gives you a free domain name with the hosting.
Web Hosting Infrastructure
For my web hosting needs I choose Digital Ocean, I’m a hands on guy so I know what is required to manage your own server. I also choose to use CloudFlare – CloudFlare provides me with many IT infrastructure services such as domain management, caching, firewall, analytics, crypto (SSL).
My server architecture is outlined below.
For web platform I choose WordPress, WordPress has evolved over the years and is now a solid web platform where you can run all kind of application from just basic blogging, a community site to selling products online. For my own requirements, I had the need for 3 websites, so I have setup WordPress as Multi Site – which means that I can launch any number of site from one single platform. I operate an online store that sells WordPress plugins, a community site for cyclists to my own blog.
You can read this article I wrote about what to not forget when launching a wordpress site.
For application backup I’m using git on my servers to push and pull any changes I do like adding a new plugin or a plugin update. Only new code is deployed on my staging host where I test all the changes, I then GIT to push the code to my Github Repository, and then I pull the code from my Github Repository to my production environment.
For Database backup – I have a two phase approach. I have deployed MySql Database replication, so my staging host has the same database content as my production, the staging holds my live database backup. I also use a WordPress plugin that takes a daily backup of my database, emails me the database backup which I then store on my Google Drive account.
IT infrastructure Monitoring
For monitoring my servers I have chosen two providers New Relic and Logentries.
New Relic offers the tools to monitor the state of my applications, New Relic sends an automated alert to me when my servers become unavailable.
Any server that run any type of applications has several log files, analysing these log files can give you visibility into your servers – in the past you needed a developer to get access to your logs. With Logentries this has changed, you can now analyze your server logs in real-time. With the Logentries custom tagging you could easily spot errors as they occurred.
Analytics – to analyse the site visitors to your site
One important aspect of running a website is to know who visiting your websites, In my case I’m using Google Analytics that is tracking site visitors to my site.
Securing my website
Deploying CloudFlare in front of my web server provides my with many levels of security, CloudFlare also provides me with a SSL certificate.
When you setup your servers for WordPress, you need to think about setting up page caching – this article that I wrote recently explains how to setup caching on your server.
What do it cost to run my infrastructure
My yearly cost is US 690 that comes to US 57,50/month – that is what it will cost you to get started running your business with online presence. I have broken down the cost based on the services I’m using.
|Go Daddy||Domain Name||30.00|
All prices is in US dollars.
What is not factored in is my own time, how do you value your own time and how much time do you put in. In my cases I did all the work myself, there was no upfront fee to set up any of the service that I’m using in my IT infrastructure.
If you find this article interesting, please comment below.
Do you need advice or help to get your business started online, get in contact.