Five steps to deploying Linux in the enterprise
Takeaway: These five steps can help an organization get the big picture that is needed when embarking on a Linux deployment.
If you are looking at deploying Linux to run mission-critical services in your enterprise, you'll need to make some important preparations. These steps are similar to any new software deployment; however, the open source nature of Linux software and the sometimes-complicated nature of Linux support leads to some additional requirements.
Step one: Select a single Linux distribution
As simple as it seems, this one step can save a monumental number of headaches. Because
there still is not standardization among Linux distributions (despite the
commendable efforts of the Linux Standard
Base project), administering the same software applications on different
Linux distributions can be very frustrating. Configuration files, binaries,
documentation, and other objects are placed in different locations in the
different Linux distros. These locations can also change between versions of
the same Linux distribution. Therefore, it’s also best to standardize around a
single version number of a singe distribution. This standardization will be
especially helpful when you have applications or services that span multiple
Linux servers or when you are clustering multiple Linux servers.
As for selecting a distribution, this decision will be tied to both hardware
selection, what applications you want to run on Linux, and the business
requirements of your Linux project. The selection of a distribution will also
be directly related to several of the other steps in this process. For a server
deployment, industry leader Red Hat
has a lot to offer. You can get it preinstalled on the servers of major vendors
such as Dell, HP, and IBM, and Red Hat offers a number of ancillary support
services that can make the next few steps much simpler. However, you should
still consider other major Linux distributions and Linux hardware vendors, such
as Suse, Penguin Computing, and Pogo Linux. These vendors could save
you money or provide better integration depending on what app your running (such
as an Oracle database) or the type of hardware you want (such as Linux clusters).
Step two: Develop a support plan
Linux has become renowned for its server stability, and Linux servers usually require
very little babysitting once they are properly configured. However, due to its
more customizable nature, Linux can also be more challenging to troubleshoot
and support than Windows server. Therefore, if you are going to be deploying
Linux for mission-critical services, you will need to carefully plan how you
will support it.
First, you’ll want to look into signing a service agreement with Red Hat (if you
choose their software), or another Linux vendor, based on the Linux
distribution and server hardware you choose. Second, you and/or members of your
staff will need to get educated about Linux. We’ll cover this further in the
next step. Third, you should locate and make contact with expert Linux
consultants in your area. Although a service agreement and a well-trained staff
should solve most of your problems, it’s good to know that you can call on a
hired gun to come in and make things happen if you’re having problems resolving
a difficult issue.
As part of your support plan, you should also make sure that the applications you
want to run on Linux are supported on the hardware and Linux distribution that
you chose because some apps are only supported by the vendor in specific
configurations.
Step three: Get formal Linux training
If you commit to putting the Linux platform in your data center, you need to make sure that your staff can handle the routine maintenance and troubleshooting issues that will be part of a Linux solution. The best way to accomplish this is with formal training. Red Hat offers a wide variety of instructor-led training courses. Novell offers training for Suse Linux and Global Knowledge offers online and instructor-led training programs. There are also an increasing number of non-traditional courses using computer-based training and videos, although these should be approached with caution. Investing in training will often pay for itself since it will enable your staff members to troubleshoot the vast majority of common problems in-house. This will save time and productivity, as well as money for third-party technical support calls, depending upon your service agreement. Training will also allow your staff members to unlock Linux’s extensive capabilities for customization.
Step four: Test your solution on a staging network
Whatever you plan to do with Linux, you will need to test it thoroughly on your staging/testing network before deploying it. By its very nature, the process of configuring Linux involves a good deal of trial and error. This is absolutely necessary in order to build a strong, stable Linux server. It also enables you to see how Linux will interact with other Windows, UNIX, and/or NetWare servers like the ones you may have on your production network.
Step five: Put a plan in place for keeping software up to date
This is an obvious step that still falls through the cracks in too many IT departments. Do yourself a huge favor and set up a solid policy for staying up to date with security alerts and applying the appropriate patches for your Linux servers (and it wouldn’t hurt to extend this plan to your other operating systems either, if you don’t already have an effective policy in place). Once you set up this policy, make sure it’s given high priority. One of the best ways to accomplish this is to assign an employee or a team to check security alerts on a regular basis and provide a procedure for updating the Linux servers during a period of minimal business activity. Neglecting this step could leave your Linux servers vulnerable to becoming the plaything of hackers and script kiddies. Some vendors have begun to offer automatic updating services, such as the Red Hat Network. These services are definitely worth considering.
Bringing it all together
Hopefully, this five-step Linux deployment plan has demonstrated that there is much more
to an enterprise Linux deployment than just downloading or buying a Linux
distribution and installing it on an old server that’s no longer powerful
enough to run Windows (that's the old philosophy for running Linux). A
deployment of stable, reliable Linux servers demands some strategic planning
and decision making.
As mentioned above, one of the most crucial decisions involves selecting a
Linux distribution. Clearly, Red Hat (and Suse to a lesser extent) offers the
most enterprise-friendly distribution, both in terms of the distribution itself
and the ancillary services offered around it.
However, Red Hat’s leadership position does not mean that you should fail to
consider other Linux distributions and vendors that may provide excellent value
and a good fit for your requirements. If you use the five steps mentioned here
and analyze the requirements of your Linux project, you should have a good
framework for selecting vendors and successfully deploying Linux in your
organization.
Print/View all Posts Comments on this article
SponsoredWhite Papers, Webcasts, and Downloads
- What Is Micromanagement? And What You Can Do To Avoid It. Global Knowledge
- Simple Tricks to Ace the Subnetting Portion of Any Certification Exam Global Knowledge
- 2008 IT Salary and Skills Report Global Knowledge
- 7 Things Every System Administrator Should Know About OpenSSH Global Knowledge
- Eleven Myths about 802.11 Wi-Fi Networks Global Knowledge
Article Categories
- Security
- Security Solutions, IT Locksmith
- Networking and Communications
- E-mail Administration NetNote, Cisco Routers and Switches
- CIO and IT Management
- Project Management, CIO Issues, Strategies that Scale
- Desktops, Laptops & OS
- Windows 2000 Professional, Microsoft Word, Microsoft Excel, Microsoft Access, Windows XP,
- Data Management
- Oracle, SQL Server
- Servers
- Windows NT, Linux NetNote, Windows Server 2003
- Career Development
- Geek Trivia
- Software/Web Development
- Web Development Zone, Visual Basic, .NET
