Linux deployments still carry high expectations. Before pushing the button on that Linux deployment, make sure you have all the bases covered, and we have a few tips to help save the day.
You could, and some have, write a book on deploying Linux. Here we have a few tips to help ensure that your Linux deployment is a successful start to a long relationship with Linux in your organization.
The major Linux enterprise distributions have fairly comprehensive documentation, but much of it goes unread. Sure, folks start reaching for the documentation when something goes wrong, or to check a specific problem — but there's something to be said for reading the documentation before you encounter problems.
Why? Take a look at Red Hat's set of documentation as an example. Red Hat provides guides for deployment, installation, resource management, and so on. Some of it is obvious or something that will be stumbled across in due course of an installation. Other things — like how to use Cgroups or tips on power management — are not things that are presented as installation options or are generally non-obvious.
Once the deployment team has read the documentation, make sure it's available to others as well — and encourage them to read it!
Test, Test, Test
Remember the old joke about asking directions to Broadway? How do you get to Broadway? Practice. How do you ensure a successful Linux deployment? Testing. Specifically, a test deployment.
Before deploying Linux, make sure that you have run it through its paces hard. You want to make sure that the hardware you've selected for a deployment is up to the task. Linux performs well, but it's not a miracle worker — whatever you're doing with Linux needs to have ample hardware underneath. Make sure you're not only ready for average loads, but spikes in activity. Retailers, for example, ought to be set for holiday sales and other peak seasons — not just the average daily sales.
Test your users, too. Get feedback from users before pushing Linux out, to avoid unpleasant surprises that can't be solved with more software.
Odds are, you're not deploying Linux in a Linux-only shop. Be sure that Linux systems will be a first-class citizen on your network. Linux clients need to have the tools to access Microsoft systems and you need to know if your users are going to need access to Windows-only tools. If you're using SharePoint or other Web tools that favor Windows or Internet Explorer, make sure you've accounted for that and have come up with workarounds. You may even need to leave a few users on Windows, or ensure that they have access to Windows VMs.
Authentication is also an issue. We've written before about Single Sign-On (SSO). A surer way to success is to let users start accessing the new systems with existing credentials out of the box. Don't ask users to have separate credentials for Windows systems and Linux systems.
After the deployment, it's time for some penetration testing. You've probably done some of this as part of the initial testing, we hope. But after the deployment, it's time to do it again. And again.
Make sure that you're using an Intrusion Detection System (see our Weekend Guide) and that you've ensured no unnecessary services are running, no unnecessary ports are open, etc.
And make sure that you have in place an update policy for not only the underlying OS, but the software running on Linux — especially if it's not part of the vendor's package offerings. How often will you be running updates? Set regular maintenance windows and plan for special cases when zero day or other urgent fixes come up.
You've deployed the systems and everything is working as expected. Job done, right? Wrong. Successful IT deployments are never done — just at a different stage in the lifecycle. After deploying Linux, get some feedback from the stakeholders and make sure that they really are satisfied.
Even better, ask them what can be done better next time or what might help make this deployment more successful. A lack of complaints or request tickets isn't a guaranteed indicator that nothing is wrong — just that it's not egregious enough to motivate people to stop work to complain. Eliciting feedback not only gives you a learning opportunity, but it also helps users realize that the IT folks care. Also? It's possible that some deployments have been successful, but unnoticed. Most of the time, IT is invisible to the rest of the company, until something breaks. If you've had a successful deployment, call attention to it by asking for feedback.
Linux has become sufficiently mainstream that deploying it isn't a mystery. Most companies already have some expertise in working with it — though some have more than others, of course. Share your experiences deploying Linux in the comments — the more we know, the more successful Linux will continue to be.