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.