Best IT-infrastructure For a Small Company?
DiniZuli writes "I've been employed by a small NGO to remake their entire IT-infrastructure from scratch. It's a small company with 20 employees.
I would like to ask the /.-crowd what worked out best for you and why? I came up with a small list:
Are there any must have books on building the IT infrastructure?
New desktops: should it be laptops (with dockingstations), regular desktop machines or thin clients? A special brand?
Servers: We need a server for authentication and user management. We also need an internal media server (we have thousands of big image and video files, and the archive grows bigger every year). Finally we would like to have our web server in house. Which hardware is good? Which setup, software and OS'es have worked the best for you?
Since we are remaking everything, this list is not exhaustive, so feel free to comment on anything important not on the list."
Keep the whole thing simple, the next person who comes in will thank you for it. Don't introduce any weird convoluted things into the system and make sure to make it so that the whole system is modular, easily upgradeable, and when the time comes and they need to expand that it's expansion friendly.
For servers: Use Supermicro-based servers with LSI hardware RAID cards. Run CentOS with SMB so that you can get domain support in place for the Windows workstations, but avoid having to pay obnoxious per-seat/per-connection licensing ON TOP OF server licensing as you would have to do with Microsoft's solutions. If you need a full feature alternative to Exchange, check out Scalix or Zimbra (both are very inexpensive compared to Exchange) and run either one on CentOS. For backups, I've become partial to just writing bash scripts to back up to external drives. Get three or more external hard drives and rotate through them day by day. If Windows is required for your server, I would recommend the same hardware, but be aware that the total costs are much, much higher when you factor in Server+client access licensing + groupware solution + realtime antivirus (annual subscription) + email gateway antivirus (annual subscription unless you want to wrestle with perl to get ASSP running on 64-bit Windows) = your new server is incredibly expensive. Another problem with Windows licensing is eventually Microsoft will pull the plug on client access licenses for your installed version, which means that you will be forced into an OS upgrade if the current OS would otherwise be perfectly adequate for your purposes.
For workstations: to decrease total cost of ownership (the pain of maintenance. If you are not married to Windows, consider using Macintoshes instead. Mac Minis offer pretty decent performance and take up a lot desk estate than PCs of comparable quality, plus you can also run Windows and Linux on Mac hardware if you need to. Why OS X? You can escape the insanity of malware/virus/trojan horse breakouts, maintenance is a heck of a lot easier, and backup and restore is far easier on a Mac than it is on Windows.
For laptops if maximum reliability and desktop-like performance are the priority: I would recommend Macbook Pro, or if you want real mobile workstations and if the budget allows it, Dell Precision M6500. I have a Dell Precision M6400 and it's great- they cram a desktop chipset into the laptop form factor and performance is excellent, plus if I enable all the power saving features I can still manage to get 3-4 hours of use on a charge (about an hour if I turn off power management for max performance). The M6500 is far better than my M6400 performance-wise as it uses Core i5/i7 processors and a newer generation nVidia chipset. If portability is a concern I would still go with the Dell Precision line, but the M4500. If budget is a concern and rules out the precisions, some of the Latitudes are pretty good as well, but I would stay far away from any of Dell's other laptop lines as the other lines are not built nearly as well (their netbooks are okay though).
The Christian Right is Neither (Christian nor right). See: Matthew 23, Matthew 25, Ezekiel 16:48-50
OK, seriously, I've done a couple dozen of these 10 to 50 user installations. Half the time is spent at the beginning to determine what the customer needs and wants, and what the budgeting will be. Things invariably cost a lot more than the customer anticipated so your goal is to manage expectations. If you don't do that, your life will either become a living hell (if you will be providing long-term support) or you will leave behind an unhappy customer.
Some of the basic things that were not considered when customers brought me on:
Are there remote employees? Will they need VPN access? What platforms are they using to connect? Can you verify that the endpoints are secure?
What is the anticipated volume of mail? In this day, it's often much cheaper to outsource to Google for smaller installations, but in some cases it makes a lot of sense to keep in-house.
When hosting your own web server how much downtime is acceptable? Do you need 24/7 uptime or will you have maintenance windows? What if your primary site burns to the ground? Do you have the floor space and adequate cooling? How much traffic is anticipated at the beginning of the project? How much do you expect to grow?
What applications do you need in-house? Accounting packages? Company intranet? Database? How will you separate your LAN for security purposes? Do you take credit cards as part of business?
What infrastructure applications do you need? Can you afford downtime on these? How many ports/switches do you need? Wireless? Separate backup LAN? OOB management for your servers?
Before you even start pricing hardware, find out what your customer needs and wants and willing to pay for.