[NOTE] My blog post scheduling-fu is weak, so this post didn’t go out Friday as planned. My apologies.
This is the final installment of our Small Business series. So far we talked about how to get the software, and we’ve talked about the different options of SQL Server available to you. Today we’re going to talk about what hardware you’ll need as a small business to setup your database environment for success.
Backups, Backups, BACKUPS!
Before we even start getting into hardware for your database servers, answer this question: Are you taking backups? I’m not only asking about SQL Server backups (which you REALLY need to be doing), but backups of any and all of your data as well. There are tons of options for backup devices out there, I highly recommend you add this to your shopping list if you’re putting together hardware list for your budding IT department. I lead with this advice because we can setup the most awesome server setup in the galaxy but it doesn’t do you a bit of good if the power goes out suddenly and all of your databases get corrupted and you have no backups to restore from! If you’re unsure of what sort of backups and maintenance you need to setup for your databases, don’t sweat it, Brad McGehee (Blog | Twitter) wrote a great (and free) e-book on setting up SQL Server Maintenance Plans that I highly recommend you get/read right now. You can also check out Ted Kruger’s HA/DR week from last semester to help you wade through your options.
I can’t emphasize enough how important backups are in your environment, ESPECIALLY in regards to SQL Server. Your data is the lifeblood that powers your business, without it you’re dead.
As much as I’m a fan of the folks in the ugly brown uniforms, I’m not talking about the delivery service here. UPS stands for uninterrupted power supply. Basically this is a giant battery that you’re going to plug your critical equipment (i.e. servers, routers) into and then plug the UPS into the wall. What happens is that when the power goes out you’re the UPS will continue to power your equipment off its battery until either the power comes back on or you manually shut down the servers yourself. Again, there’s a slew of UPS options out there you can purchase.
There’s a few things to watch out for here, however. UPSes come in all sizes and capacities. The smaller the size, the less battery capacity it has and the less load it can handle. Also because of the different capacities and sizes, that will affect how long it can run on battery before the UPS dies out as well. I mentioned that when the power goes out you’ll need to time to manually shut stuff down. Well UPS systems can’t run forever and the power outage may only be a few minutes or it can last way longer than your system can handle running on batteries. When the outage is going to exceed your UPS’ capacity, start shutting down your systems manually. During this period it will let you save anything pertinent and gracefully shut down systems such as SQL Server. Do NOT try kicking off full backups or anything extremely intensive when your switch to running off the UPS as the more workload you put on the server, the more power it is going to need from the UPS and the less time you’ll have running off batteries. So again, just make sure you have sound backup strategy in place.
Ah finally, the hardware. Like with everything else, you’ve got quite a few options in this department. I’ll lead off this section by pointing you to a fantastic resource in the SQL Server hardware department and that resource’s name is Glenn Berry (Blog | Twitter). Glenn wrote a fantastic book, which Brent Ozar wrote up a great review on, that covers EVERYTHING you need to know to choose the right hardware to run SQL Server on. I won’t go into specific details about what you “should” be using, because it differs for everyone. Again, there are many different options out there but I’ll just do an extremely high-level overview of a few options.
Desktop/Tower Servers – Okay a server is really nothing more than a regular machine on your network with some specialized software running on it. Technically you can fire up a Windows XP laptop, enable IIS on it and call that a server (I really wouldn’t recommend this as a production solution, by the way). Desktop/tower servers, or rather machines that are essentially running on what look to be regular desktop equipment, have a few differences compared to your regular desktop machines. One of the main differences is that there isn’t only one hard drive in these machines. If you fire up a desktop server you may only see a C: drive but behind the scenes you’re probably really looking at two or more hard drives setup in a RAID array.
In small businesses and offices, it’s often common to go with a tower/desktop as a server due to costs or simply space. With a tower you can just set it up under a desk or tuck it in a corner somewhere. While this is a relatively easy setup there are a few issues you should be aware of. If you place a tower server on the floor somewhere, especially under your desk for instance, you could risk accidental damage like kicking it or spilling your morning coffee on it. Probably not the best thing for electronic equipment! Also tucking a machine like that underneath or behind something you run the risk of overheating, which can be really bad for the system.
Another fun issue I’ve seen in small business before is someone plugging in vital equipment (such as server or router) into a wall socket that is controlled by a light switch. I know someone who worked at a company that noticed everyday around 5 or 530 their entire network would go down. It turns out that the last person leaving the office was flipping off the light switches and one of the routers was plugged into it. Once they turned off the lights, they turned off the router which brought down their entire network. Fun times.
Rack-mount servers – These are the servers you typically see in a data center. The obvious drawback here for small businesses is that you would need to buy the rack in order to support these types of servers. On the flip side, if your company has need for multiple servers then buying rack and going with rack-mount servers is probably the better bet. I say this because the tower servers can be cumbersome in regards to finding space to store them. The other nice thing about rack-mount servers is that they’re elevated off the floor so the hardware is protected by things like flooding (unless your UPS is also on the floor then you might run into issues).
Racks are also great because it just makes things more organized. Typically you can mount power strips along the back and also put in other equipment such as network routers in with the servers, so everything is organized nicely in a single space. Also they make rack-mounted UPS units so again, big win for everyone! The obvious drawback for rack-mounts is that the rack needs a place to go. Typically you setup a rack in a dedicated closet or room somewhere in your office.
A few things to note when setting up servers in your closet/server space, YOU NEED COOLING! This hardware is up and running 24/7 and it will generate heat. Make sure you take this into account when selecting your hardware setups and locations.
You’ve got your horsepower now you need somewhere to keep all that data. Again, a few options here. Direct attached storage (DAS) is the most common form of storage and the one you’re probably used to. That drive in your laptop now? That’s direct attached storage. One, lonely spinning wheel of magnetic death. While this option may be cheap and easy, don’t skimp on your business. If you’re going to do DAS then protect yourself and setup the proper RAID groups. Since we’re focusing on SQL Server here, check out this Storage Top 10 Best Practices article from the SQLCAT team.
To get a good overview on storage, check out Brent Ozar’s SQLU Storage Week posts, which while we’re focusing on small businesses this week, still apply across the board no matter what size company.
Really, this again? Yeah, this again. I’m telling you, Cloud strategies are more than just marketing fluff, it’s an extremely viable and cost-effective solution especially for small businesses. All that stuff we’ve covered today, all of that is handled in background for you if you decide to instead have your infrastructure hosted using a cloud solution like Windows/SQL Azure.
So class, is there anything else you think is missing from this small business puzzle? How is everyone doing on their homework assignment from last class? Let me hear from you in the comments!