Friday, 14 February 2014

Choosing Server Hardware (Part II)

In our previous posts, we were talking about the server that needs to be replaced (an old Windows 2000 box), and how come your previous quote of $25,000 may have been rejected. We also went over choosing the hard drive, memory, CPU and hard drive. Here, we will discuss power requirements for all your equipment, licensing, and choosing an operating system.

Power

Power is something that should not be taken for granted, especially for a server that is housing all your company's important data! Does this mean you need a 1500W Power Supply for a server acting as a router? Don't be silly! You'll need to do some calculations to find the ideal power supply, and be prepared to buy another one with it.

In general, I calculate it using 15W per Enterprise class hard drive, 5W per memory module, then adding in what the processor recommends (see links on the previous posts). I would then add about 25% for the motherboard, then add 50% to that total to find the upper limit for the power supply. It may seem like a lot, but it really isn't. Power supplies are also rated by their efficiency. The more efficient it is, the cheaper it will be to run, and easier it is to sell to your boss. Depending on your chassis depends on if you use a standard ATX Power Supply, or if you need to use a custom power supply. If it's a custom one, make sure that you order a second one as a backup replacement, for when (or if) it dies.

While investigating the power supply, choose a chassis that will hold your motherboard and all your drives. Do you need hot swap? Only if your operating system and drive controller (on the motherboard or dedicated card) supports hot swap. I would almost always pass on this, for the simple reason that it's too easy to corrupt data. Other people will probably tell me that it's required, a great plus, super awesome... I would still prefer to power it down once in a while, especially when dealing with spinning hard drives. Make sure it has all the right power connectors too. You'll need enough SATA power connectors for each drive you plug in (remember the spare drives slots on the motherboard? Make sure you have a couple spare plugs on Power as well!), and usually just the 24-pin ATX connector, and a 4- or 8-pin CPU Power connector. If any of your add-in cards require special power, make sure you add those connections to what you require on a power supply as well.

Once you have the proper power supply picked out, you need a UPS to back up the power source. A UPS is a device that has a large battery in it, designed to keep the server running for a while after power has been cut off; some are built for extending the time the server stays up, and some are for telling the server to shut down safely as soon as power is lost. You will need to determine the requirements of your server to pick which is more important. UPSes are usually measured in Volt Amps, although some are in Watts. An example UPS Calculator can be found here, and will ask you what power supply you chose, as well as how much extra load you may have. Remember, you'll usually keep a network switch or Wi-Fi adapter on this as well, so you can talk to your server from your notebook or smart phone. Another sought-after feature in a UPS is that they will usually clean up the power for you, so spikes or shortages won't affect your server; yet another selling point when talking to your boss.

Licensing

Licensing is a big issue, especially if not done correctly. For the most part, Microsoft Windows Server software and Mac OSX Server software are the ones who require the most licensing on your server. If you are dealing with a small server, with less than 25 users, it's easy enough to purchase a Small Business version of Microsoft Windows Server (now called Windows Server Essentials); if dealing with more users, you'll need to find out which CALs (Client Access Licenses) you need; these are your licenses on top of the actual Server license. The CALs are counted by the number of users or connections into your server, not including clients such as over the web for a web site. The Windows Licensing Center is the best place to learn about CALs, as well as licensing other Microsoft products. They also have toll free numbers to call, where you can ask questions and get quotes. I highly recommend you spend some time figuring out your needs, and choosing the correct licensing for your organization.

Luckily, due to budget cuts, the only server software that LukeCorp was able to choose, based on the number of users, was Debian Linux. The cost of supporting 500 users with Windows Server was too much, and Linux can grow exponentially, and relatively easily once it's learned. With the decision to go with Linux, some Microsoft-only features will be lost: DirectAccess, a full Active Directory infrastructure, and Remote Web Access, for examples. Due to what the bosses wanted, we should be able to do the rest with Linux. That is what we will plan for.

Choosing the Operating System

Most companies will choose between Windows Server, and Linux. There are pros and cons to each, and the system admin will have to make an educated choice, and be able to stick to it! Whatever you choose, do not expect to switch on a whim, and without any sort of backlash from management and users during downtime. Both are different in how they are administered, what tools are installed by default, how much they are customized, and definitely by cost. If you've never used the Linux terminal, I'd recommend reading some tutorials and getting familiar with it. If you've never used Windows PowerShell or the Windows Command Prompt, I'd recommend some other tutorials. Feel free to Google other tutorials.

Why do I say to use the Linux Terminal, or Windows PowerShell and Command Prompt? Because most tasks are easier when done with just a keyboard. I've administered NT4 Servers, Windows Server 2000, Server 2003, Server 2008, Server 2008 R2, and Server 2012 servers. I've administered many Linux-based servers as well. The less I need to use the mouse when trying to get stuff done, the more efficient I am. Again, this is my personal experience and opinion; your mileage may vary. To connect to a Linux server, I use the free PuTTY program from my Windows computers; otherwise, I just type ssh username@servername command from my Mac OSX terminal, and other Linux servers. Easy as pie!

For administrating Windows Server products, I can use a variety of tools, some built in. The classic Remote Desktop Services is the most common way to connect, and gives you the full Windows Desktop. It is limited in its number of connections at a time, so make sure you log off when you are done, instead of just disconnecting every time.  You will almost always use this method, even for typing commands. If you prefer the Command Prompt only, you can connect with Telnet (you'll need to activate the Telnet server) to the server. As well, if you are only using Microsoft Management Console snap-ins, you can connect remotely to that service from your MMC console by right-clicking the element, and choosing 'Connect to another computer...'. These choices should give you access to what you need.

Do not take this decision lightly, as stated above. You will hear admins who love Linux, you'll hear admins who love Windows. You need to choose the right one for you and your team, since you'll be the ones who will be using the most features of it. To the end user, they see their files, they see their websites, they see their email. They don't care what you choose, but they know it better work.

In the next section, we'll talk about choosing your networking hardware, including switches, wireless, and routers. Stay tuned!

Thursday, 13 February 2014

Choosing server hardware (Part I)

In our previous post, we were talking about the server that needs to be replaced (an old Windows 2000 box), and how come your previous quote of $25,000 may have been rejected. Here, we will describe some of the better ways to do planning for servers.

Do you have all the information you need?

You know that it is going to be the main server. It is going to house pretty much every service imaginable. Is this recommended? Sure, if you got redundancy, a backup, a plan for recovering, and the ability to fix everything. Do you know what software will do all this? Do you know the required hardware for this? What about software licensing? This is one area where research will be great. I cannot do all of it in one post, but will recommend some sites for information about this. Other links are welcome as well

Do you know how long you expect this server to last?

If the previous server has run for almost 15 years before getting ready to die, you need to make sure the current server can last for years! When you sell the idea to your managers, make sure that you indicate this. Depending on who or how you build the server, you need to make sure you get a decent hardware warranty on all the parts you can. For the warranty terms, you need to make sure that hardware components come to you quickly, and hopefully, for free. Yes, I realize that nothing is free, but you're paying for the warranty, because you know that nothing lasts forever.

What if the company you are buying from only offers a 1- or 3-year warranty, but you need this server to last for 10 years? Do you completely abandon that supplier? Not necessarily... When working on the side of selling servers, if we knew that hardware was going out of style soon, we'd recommend they purchase two of the motherboards, an extra CPU and CPU cooler, and at least one extra power supply. Why? Because we don't want to be left saying "Too bad, so sad!". It's a small price to pay to offer peace of mind when needed. If the spare parts don't get used, then that means this server could be used longer. Why these pieces in particular though?

Depending on what you purchase, you may have a custom power supply with the case. If so, get a spare one to replace it with. To keep it running even longer, get a decent UPS, and make sure the critical components are plugged in to the Battery Backup section. The UPS is critical, and you should also buy an extra battery, as they are usually expected to last up to 3 years in decent conditions.

The Motherboard and CPU should be bought as a spare, because these change constantly. Almost every year, new sockets or advances are made, and previous products will either be difficult to find, or cost too much for most organizations by the time you need it. Purchase it now, and put it with the spare battery and power supply.

"But what about the RAM? The hard drives? The case?" Well, most of these are going to be available for years with the current technology. When DDR3 RAM took over, for instance, DDR2 RAM was still available from some major manufacturers. Even years later, it's still available! Hard drives are the same way. As long as the interface is the same, it should be a simple matter of restoring your data. The case should not be damaged, unless you have a physical intruder who is planning on sabotage - You store your server in a secured room that only your IT team have access to, right? If not, make sure that's one of your requirements!

Choosing the components

For space, you went all-out with storage and memory! This is good for you, but bad for the company. If they only need a couple terabytes, and you quote them for five terabytes and no explanation, it's not going to fly. As well, unless you have thousands of people connecting to your MySQL server, there is almost no reason to get 128 gigabytes of RAM, let alone ECC Registered memory. Tone it all back a bit. I'll go into further detail below.

Storage

For storage, depending on how much data you anticipate them using, you can get away usually with less. If they need two terabytes now, and I expect this to last for 5 years, I'll say double it, as your goal. I would then get larger hard drives so that I don't need to buy as many drives. So let's choose the 2 terabyte drives, and make sure they are Enterprise-class drives. We'll plan to RAID them in RAID 10 though, not RAID 5. Wikipedia has a great article to help describe the different versions of RAID; I suggest reading it if you are unfamiliar with the different levels. So for 4TB, and RAID 10, we would need 4x 2 Terabyte hard drives. Yes, it cuts the storage space in half, but it allows any single drive to fail, or a combination of two drives, if they are the correct drives, to fail. It also gives a GREAT performance boost, due to the striping of data. Mirroring plus striping is the new standard, as large RAID 10 arrays. RAID 5 is usually slow for writes, as it's constantly calculating checksums for all writes, and I, personally, do not like the delays I sometimes see with onboard RAID and RAID 5.

Memory

For the memory, we'll tone it down to 16- or 32-GB of RAM. We'll get ECC Memory, if that's what our CPU calls for. We may expect this to be on for everyone, but unless it's doing many, many calculations, we can most likely leave most data on the disk. ECC Memory is Error-Checking and Correcting Memory, and should be used when possible. Wikipedia has an excellent article about it that I recommend you read, if you don't know about it. Make sure that any industry-specific server applications will run together with whatever else you are choosing, and make sure you have spare memory slots available for if (when) you need to upgrade.

Central Processing Unit(s) and Motherboard

For the motherboard and CPUs, you need to decide what type of processing you need. Let's discuss CPUs first.

When choosing the CPU, if you need more parallel computing, you'll benefit from dual-CPUs, or a great CPU with Hyperthreading. Because of how much changes every quarter, I will not recommend a specific CPU, but recommend researching them with links above. If you are doing some of the more basic server tasks (i.e. file/printer sharing, basic static website, domain controller, proxy, etc), you can get away with a single physical CPU. If you are doing lots of virtualization or high-end data-driven applications, consider two physical CPUs. The choice to do two physical CPUs requires a special motherboard, and certain CPUs, which is why we are choosing this first. When buying Server CPUs, you will also need to purchase the heat sink and fan separately.

Now, for the motherboard, you need to do research on the ones you want. First off, does it have the proper socket for your CPU? As well, is it a single- or double-processor motherboard? If it's a double, you will need to split your RAM for each CPU, and likely need to buy your memory modules in groups of 4. The motherboard specs will also show what type of memory to get (i.e. ECC non-registered, Non-ECC registered, ECC registered, etc), and how much it requires. These are the first two important motherboard details.

Also with a motherboard, you need to look at the form factor, drive connectors, remote management features, and onboard RAID (if applicable). The form factor is the size of the motherboard, and where the mounting screws are. There are many motherboards that fit in standard cases, and usually these are good for single-CPU installations. There are also much larger motherboards, and some motherboards that rely on certain cases. Take note of what type you are aiming for, and be sure you have the space available! For the drive connectors, unless you are using a dedicated RAID card, make sure you have enough space for all your hard drives, an optical drive, and at least one or two spare plugs. Almost all motherboards right now contain SATA drive connectors, so we will assume that is what you are getting. Some optional features to look at would be if you want remote management (access the console from another system, including BIOS and booting to Safe Mode from another system), and what type of onboard RAID controller it has (if needed). Your needs will determine what to look for.

On the next post, we will discuss the Power Supply, UPS considerations, Form Factor, and other special hardware requirements. Stay tuned!

Wednesday, 12 February 2014

Choosing where to start

Taking a look at our fictitious company, LukeCorp, you may realize that there are many issues with the way things are running for the IT group! Non-standard everything, lack of proper security, lack of direction, lack of motivation to spend money on proper IT equipment/software, and probably much more. Let's dive a little deeper into it, and choose where to start.

Currently, LukeCorp is using an old Windows 2000 system to host everything they need: file sharing, email server, web server, proxy server, firewall, printer sharing, and custom databases in MySQL. Unfortunately, this is only one server, and was built back when RAID-5 was considered the best use for this server. The drives are quite old, and only get changed as needed. Currently, they have 3x Western Digital hard drives, all changed at varying times in the past 10 years. The server is old, and starting to die. There is no backup server, but there are backup tapes.

Their file server requires at least 2 TB worth of storage, and needs to be redundant, while being fast. Their Active Directory service needs to handle the 500 current employees, and offer room for growth as the company gets bigger. You have been given the go ahead to quote a proper server, and move all the clients over. Where do you start?

First off, find out what they want to use the server for. Most of this can be accomplished with high-end hardware, easily costing thousands. You build a server based off the latest Intel Xeon CPUs, hot-swap bays for the hard drives, 128GB of ECC Registered RAM, 6x 1TB Enterprise-class hard drives in a RAID 5 (5TB of storage), single NIC, a 500-user CAL, and 4-hour response from the manufacturer. Total cost? $25,000. Your boss says no after laughing at you. Back to the drawing board...

Where did you go wrong? The cost? The hardware? The RAM? No. The way you presented it may have something to do with it. Do you have all the information you need? Do you know how long you expect this server to last? Does it take into account a backup solution? Is it the best bang-for-buck? Can it be done cheaper? All these are valid questions, so we'll look into it as best as we can for the next few blog posts. We will also show how to properly present this information for you to your boss, and show that it may be required to make business go.

Tuesday, 11 February 2014

LukeCorp - Our Ficticious Company

Throughout this blog, we will be posting information on servers, managers, devices, and may other items. Because I can't really post all the company details of a real business/organization, I have decided to make a company called LukeCorp. According to Google, no one else has this name, so we should be safe! So, a quick biography about LukeCorp:

Founded in 2014 (with this blog), it is a Canadian-made company with 500 employees. It has a dedicated Financial department of 5 people, a small IT group of 5 people, and about 450 other workers. That leaves the other 40 employees as higher-ups, the people who get what they want everytime. They believe that just because cheap alternatives exist, that they are good enough for their business. They refuse to spend thousands upon thousands on a proper IT infrastructure. But, they offer you a decent rate of pay for coming out of college with a diploma, and expect you to give them the world on a penny!

They manufacture and support the selling of LukeCorp Widgets, and have 5 branches, plus one head office. They are located in the same province, but all the branches are in difference cities, with the largest branch in the same city as the head office. The IT guys are split up between the 5 branches, offering advice and tech support to that branch. They communicate with GMail, since it's free. Because this company grew at various rates, none of the systems are exactly the same models; some users have HP machines, some have Dells, some have Gateway, some have Asus, some have Acer. There are even some Apple Macintosh systems that need access to Windows-type resources.

Each branch has 2 or 3 big multi-function printers (i.e. that scan, copy, print, fax), as well as many individual printers from various manufacturers. The main branch has the luxury of having the head office back its decisions to purchase any and every item that the upper management requests, and you (as the IT guy) is forced to make it work with their current infrastructure. There is little regard for major security considerations, such as a dedicated Anti-malware provider or the same firewall on all systems.

If you've been an IT worker for a dedicated company, you know most of this sounds like an IT nightmare! We are going to show you how to take care of most of these issues, and present the solutions to the people who make purchasing decisions. Any suggestions, add to the comments below.

Monday, 10 February 2014

WANTED: Designer and Author

As this is a new blog, it looks basic right now. I would like to get a custom theme going that makes the website look good, and makes information easy to find. If you are artistic, and would like to submit a design, please include a URL in the comments below.

I am only one person, and have a life outside of computers. My girlfriend will be having our baby in the coming months (thanks for the congrats!), and I don't think I'll be able to keep up when life gets going. If you are an avid IT guru, and know enough about what we deal with on an everyday basis, please leave your email address in the comments section.

NOTE: Comments are being MODERATED, so your information will NOT be published. You will be contacted once I see your information, and then it will be deleted. No, I do not spam; I hate spammers, and believe they should die a slow, painful death for what they put users though. Thank you for helping make us grow!

Use the Force, Luke - An Intro

Welcome all!

This is my blog, aimed towards the IT person who needs to deliver the world, but on a budget. We are hoping to give guidance when other regions of the Internet cannot help. We want to deal with the following categories mostly:
  • Using Linux for Servers
  • Using Legacy / End-of-Life Software
  • Purchasing Assistance
  • Dealing with the budget-choosers
  • Random computer issues that come up
  • Excellent scripts for all your needs
  • Troubleshooting common issues
  • Free / Open Source software details
Now, what makes me qualified to deal with this? Well, I deal with it 6 days a week! I work with a volunteer organization that does not have money to spend on IT. I have a day job where I am only typically allowed major IT purchases once every 5 years. I contract out to clients who do trust me, and those can sometimes be the greatest of all!

Most of my material will come directly from my life experience. All client names and server names will be changed/anonymized to protect all parties involved. Some posts will come from readers, either in the form of an article or a question. We will do our best to answer as many questions as possible, or at least direct you to the area of the Web that will help you most. Please use the comments section on this post to add any questions to be answered, or to suggest a post of an item.

I believe that as a free blog, I cannot ask for much, but I will run ads with AdSense, hoping to help migrate this to a custom domain. Donations will be welcome, but not required. This is my first blog of this type, so please go nice on me! I am hoping to post every Monday to Friday with tips or answers; if you like what I post, let me know! If not, let me know quicker!