When using Linux in a data center, there are plenty of tools from which to choose. From networking and backup to automation, Linux tools can assist in nearly every aspect of data center operations when properly configured.
The complications of Linux data center tools are often worth the extra effort and offer a range of features and services with a lot of flexibility. Here are five tools for Linux automation, monitoring and backup that could easily be considered "must haves" for Linux data center admins.
Linux automation tools
What it is: CFEngine is a Linux automation tool that allows you to automate large-scale configurations with consistency and compliance. What makes this tool so special is that it can autonomously search for configuration discrepancies or system errors and fix them without user intervention. If you're looking for a Linux automation tool that can successfully create a nearly self-healing system, CFEngine is a strong choice.
CFEngine can also automate package updates across thousands of servers. It has the ability to change your entire IT infrastructure within minutes, if desired. CFEngine was written in C and has been, over several years, hardened to ensure robust security. Features include:
- Configuration management
- Process management
- Scheduling and task management
- Patch management
- Inventory management
- Remote execution
- Partial reporting and compliance
- Service management
- File integrity
- Local User management
- Application deployment
- Password management
There are two different versions of the CFEngine tool for Linux automation: Community and Enterprise. With the Enterprise edition, you get all the features of the Community edition, plus:
- GUI admin console
- Full compliance and reporting
What it is not: The biggest caveat with CFEngine is that it works best in a homogenous UNIX environment. Although you can get it to work in a heterogeneous network, it may not function as predictably.
Linux monitoring tools
What it is: Cacti is a free, open source, web-based, real-time network Linux monitoring tool. This is a front end for the RRDtool that uses Simple Network Management Protocol to collect data. It allows the users to check services at an interval of time and presents everything in an easy-to-read graph format. Cacti includes a fast poller, advanced graph templating and multiple data acquisition methods and user management features. The tool collects data from various services within your data center and stores them in a MySQL database so administrators can monitor server loads, network performance and more. Cacti also includes a user management tool, so you can add users and give them access privileges for only certain areas of the tool.
What it is not: Cacti is not a turnkey tool that you can just drop into your network to immediately monitor everything. You must do some work to get it to monitor what you need -- and it doesn't come with vendor support.
As with many open source monitoring tools, you'll have to do quite a bit of work to get the tool to do what you want. You'll be writing scripts, creating data sources and performing a number of other tasks that you might not have to do with non-open source tools. But the beauty of Cacti is its ability to work with scripts and templates. You can bend and twist this tool to do just about anything you want.
What it is: Nagios is often considered an industry-standard infrastructure monitor. It is free and open source, but unlike Cacti, you can purchase support for $995 per year. Nagios offers three different setups:
- Nagios XI: Provides monitoring of all mission-critical infrastructure, including applications, services, operating systems, network protocols, system metrics and network infrastructure. You'll find hundreds of third-party add-ons that provide monitoring for nearly any type of application, service or system.
- Nagios Log Server: Provides a centralized location for all of your log data and enables you to set up alerts to notify you of threats or to query log data for on-the-fly audits.
- Nagios Network Analyzer: Provides an in-depth look at all network traffic to help you uncover security threats so administrators can easily keep tabs on the health of their network.
Nagios is ready-made for any Linux data center administrator who works with a complex network and needs to monitor network traffic, server processor load and temperature, disk usage and more.
What it is not: Again, like Cacti, Nagios isn't a drop-in system. You will have to create scripts to monitor each endpoint. For a large-scale data center, that can be time consuming. Although you can make Nagios do just about anything, you will be putting in hours of work to get it to do exactly what you want.
Linux backup tools
What it is: Amanda is one of the oldest open source Linux backup tools on the market -- and yet, it's still one of the most widely used. With Amanda, you can schedule, automate and track backups that are packaged with tools like tar. Amanda works with a master backup server to back up multiple hosts over your network. The backups can be stored on tape, disks or optical media. Amanda can also automatically determine when to run your backups and includes agents for SQL Server, Exchange, SharePoint, Oracle, MySQL and Ingress.
If the standard Amanda package isn't enough, there are enterprise editions -- such as Amanda Enterprise from Zmanda -- that feature:
- Centralized backup of heterogeneous systems and applications
- Support for Linux, Solaris, Windows, Mac OS X, VMware, and Hyper-V
- No proprietary data formats
- Backup to tape, disk or Amazon Simple Storage Service
- Single management console
What it is not: Amanda is not simple to set up. But once it is up and running, it will work constantly to keep your data center backed up. While Amanda is free, Amanda Enterprise is not, but it's worth considering if you require more robust backup features.
What it is: Bacula is a free set of programs that allows the administrator to manage the backup, recovery and verification of computer data across a heterogeneous network. Bacula can back up to various types of media and is relatively easy to use. Bacula is scalable from a single computer to a data center consisting of hundreds of computers. It consists of five major components:
- Admin workstation: This is the command console where you can interact with the software either via command line or through a graphical user interface (GUI).
- Database server: This will hold your storage catalogue used by Bacula.
- Backup server: This is where the background application will run to schedule, control and authenticate backups.
- File server: This is where the background application runs, which reads files from a data source.
- Bacula storage daemon: This is the background service that writes backups to the backup media.
What it is not: If you're looking for a Linux backup tool with an easy setup that can also back up databases, you'll need to look elsewhere -- like Amanda Enterprise. Bacula is an incredibly complicated system to set up and doesn't offer as many features as the other tools. However, if you need a simple network file backup system, Bacula does a great job once it's up and running.
Choose the Linux distribution that's best for you
Useful Linux commands to monitor connectivity
Explore the latest updates in RHEL 6.8