Dorian Martin

Dorian Martin added an article 17 09 2019


Utmost Sysadmin Automation Tools to Optimize the Working Process

Here’s something many sysadmins don’t like to hear: no one will get out of using automation. With the number of automation tools to optimize the working routine increasing, it might be a good time to expand your skillset by learning them. Instead of letting these tools replace you, let them help you to get your job done better and easier.

For example, by automating your work, you can future proof your career by streamline your workload and letting yourself focus on more important tasks. In this article, we’re going to review seven robust sysadmin tools to automate different processes, including backup, monitoring, management, troubleshooting, and other recurring tasks, to help you with taking the leap to DevOps and staying relevant.
Sysadmin Automation Tools for Working Process Optimization

1. Puppet

The first tool on our list is a widely known Puppet, a powerful configuration management system that can provide sysadmins with an opportunity to differentiate themselves from the pack. For example, by using a platform like Puppet, a sysadmin can learn or improve skills like application management, cloud provisioning, and automate a lot of repetitive tasks.

Essentially, it’s a configuration and automation management software designed to help with configuring and maintaining servers and other network systems. It’s particularly helpful when managing multiple servers (in fact, the tool is able to manage hundreds of servers per one sysadmin) because it automates configuration management and saves hours of avoidable work.
Here’s how it does that: when installed, the system utilizes a client/server method. The managed servers are called Puppet agents and they interact with the Puppet master that provides configuration profiles to them. Each configuration used by the master is safely stored in PupetDB. Both agents and master run as a daemon on a master server.
Here are some of the most useful Puppet functions for sysadmins:
• Monitor network for changes at all times
• Management of configuration settings
• Definition of configuration settings for every host
• User management.

2. Ansible

As a sysadmin, you can use this tool to automate the most essential tasks in web hosting: configuration management, task automation, and deployment. One major advantage that many Ansible users appreciate is a super easy configuration thanks to YAML code, which is a pretty simple mark-up language. It allows for easy manipulation and understanding, even for people with limited experience in tech.

On top of that, the system is very easy to install and execute; in fact, it’s quite possible to complete both of these tasks within 30 minutes. Because of the fact that it was developed with Python, all automation steps can be completed, which is something sysadmins will surely appreciate.
Here’s the breakdown of the most important benefits of Ansible for users:
• Easy and simple system account management. Instead of spending hours and even days for creating new users and categorizing them by appropriate groups, you can automate this task and dramatically reduce the time needed for accomplishing it
• Package list maintenance. Automate maintenance of packages required for applications to improve the overall security
• Configuration of applications and systems. Manage configuration from one location
• Cloud provisioning of VM. No need to use the UI to launch virtual machines
• Agentless architecture. Instead of agents, the user has to manage an Angible installed server with WINRM (Windows Remote Access) or SSH (for Linux) protocols
• Automation of the entire application lifecycle.
How many people use Ansible? According to the developers, it’s the most popular open source automation system on Github, with 250,000 monthly downloads and more than 3,000 contributors regularly submitting new modules.

3. Salstack

Many experts from the software industry recommend Salstack for system management because it can help to automate a lot of tasks in a user-friendly way. For example, here are some of the functions that sysadmins will love about this tool:
• Predictability, orchestration, and automation
• Created in Python and uses simple, human-readable Jinja templates and YAML files
• Uses jinja2 platform for logic
• It’s open-source and free
• Fully encrypted data transfer and communication
• Utilizes powerful communication layer ZeroMQ for high-speed data connectivity.

The Salstack architecture consists of the following essential components:
• Master: the main server (daemon) communicating with and controlling agents (minions), installed on endpoints. Each master can handle up to ten thousand minions
• Minions: these are agents – also daemons – run on the controlled system and designed to send information to the Master as well as execute its commands
• Grains: an interface used to send information about a target device to minions; typically contains information such as IP address, memory, OS, etc.
• States: files where the minion configuration is stored
• Pillars: files that store details of configuration
• Reactor: a system for event-driven operations such as deployment.
There are two Salstack versions available: the first is a completely free, open-source version while the second one is designed for enterprise use and includes a range of additional features including custom reports, a vast module library, front-end analytics engine, integrated database, and others.

4. CFEngine

Yet another popular automation system for system admins designed to assist them with managing infrastructure and ensure compliance and security. Offered in both free and enterprise versions, CFEngine offers an impressive range of automation functions; in fact, you can automate pretty much everything from single-server shops to vast and complex enterprise computer networks.

CFEngine is also the most mature configuration management system out there. It was developed and released by Mark Burgess in 1993 and became a major inspiration for the development of more recent tools such as the abovementioned Puppet. CFEngine has a vast and active community that ensures regular updates.
Here are some of the most important tasks that CFEngine can perform for sysadmins:
• Configuration. Easily keep operating systems and third-party software current and consistent
• User management. With CFEngine, you can control all user accounts as well as their features such as expiration dates, passwords, etc.
• Software installation. Designed to manage both custom-made as well as third-party software, CFEngine makes it easy thanks to the ability to interact with the managed system’s native package-management tools
• Security and compliance. Sysadmins can use the tool to manage a wide range of security-related features, including user rights, device configuration, and current states, file permissions, software versions, and many more others. In terms of compliance, CFE can provide the user with documentation on system configuration and help to ensure that the desired state is maintained.
And here are some of the reasons why sysadmins should consider using CFEngine for automation and configuration tasks:

• Reusability. Thanks to the tool, a user can abstract typical configuration operations and conditions and reuse them as many times as required in other places. For example, one can identify specific components of a library responsible for common operations, and combine them in order to have the desired configuration settings.
• Flexibility. With CFEngine, a user can perform maintenance of configurations performed by the system. For example, this task typically requires different types of servers, but with the tool, it’s unnecessary to perform the configuration of each server more than once.
• High customization. Thanks to CFE, the user doesn’t have to configure all systems according to one predetermined type; in fact, the tool allows to be as specific as the user needs and develop highly detailed, unique configurations
• Express complex system configurations in human-readable form. While some systems don’t allow hide system-specific, complex implementation information, it’s possible with CFE; moreover, this makes the evaluation of system configurations for compliance a lot easier.

5. D2C

This tool makes it easy to manage multiple services and automate typical DevOps operations such as deployment, configuration, scaling, and app management. D2C provides the user with an easy-to-use yet functional web interface by eliminating the need to perform routine, repetitive tasks.

Here are the most useful features for sysadmins:
• Configure, deploy, and scale apps (for example, cloud app deployment is possible within minutes)
• Provides an easier way to run and manage apps by automating routines in building an infrastructure for them
• Move or scale apps to new servers without having to perform re-configuration
• Regular updates and a vast, active community of users and developers
• Simple database configuration within minutes
• Latest security tools for infrastructure protection.

6. Foreman

According to the developers of Foreman, the main motivation to design such a tool was to provide system administrators with a system able to manage vast IT infrastructures. The result of their effort was an application for automation of server management, configuration, and monitoring, which is also open-source and free. Thanks to the brilliant architecture of Foreman, the users can perform such tasks as quick app deployment, automation of routine processes, and change management with Salstack and Puppet, both in the cloud or on-premise.

The list of the most useful features includes:
• Provision, maintenance, monitoring, and update of hosts throughout the complete lifecycle to manage both small and large-scale IT infrastructures
• Publishing, promotion, and management of packages and repositories across the life cycle
• User management that includes permission management
• Group and manage hosts with common features for easier management
• Automation of repetitive tasks to simplify system management
• Remote execution of arbitrary commands on hosts which can also be customized
• Real-time system checkups to advise the user on health and other performance metrics
• Compatibility with most Linux operating systems.
Foreman is also powered by a large community of developers, which ensures regular updates and advice.


The last tool on our list is widely regarded by many as a must tool for software developers, database administrators, and IT administrators. Indeed, it’s an effective automation system that can help to avoid the process of installation and configuration of an individual server is you have hundreds or even more of them. All you have to do as a Chef user is to supply a configuration once, and it will do the rest of the job.

Using Chef, you can write scripts – or recipes – and command the tool to provide automation for them. Automation is possible for both simple tasks to complex ones such as automating vast data centers. The tool works with three elements to help users achieve their goals:
• Server. The core of the system that supplies configuration data for the rest of the elements
• Workstations. These are either virtual servers or computers used to the development, testing, and improvement of configuration code. They provide the testing tools such as Foodcritic, Cookstyle, and Test Kitchen, as well as InSpec, a special tool for writing automated tests for security and compliance purposes. There’s no limit for the number of workstations
• Nodes. Network devices, servers, storage devices, and other items that are final beneficiaries of the automation. Each of the nodes contains a special client managed by the Chef.
Chef is written in Ruby, and the choice is explained by the developers by the fact that this language provides “the flexibility to use both the simple built-in taxonomy, as well as being able to handle any customization path” required by the user.
One more thing: you don’t have to be a Ruby expert to be able to take advantage of the benefits provided by Chef. For example, you can specify what contents you need, and the tool will take care of it, so you don’t have to tell Chef how to complete this task. The only thing you have to do is to simply state the desired state of the system.


The automation tools for optimization of the working process that we’ve just explored are perfect for sysadmins who are looking to differentiate themselves from the competition and make a transition to DevOps. Each of these tools can teach the user a wide range of new skills, including app management and monitoring, cloud provisioning, and many types of automation. Also, they can make their work a lot easier by helping to automate many repetitive processes, thus allowing to focus on more important tasks.

Gaining familiarity with these tools is also not a problem; each of them has a free version with training options available, so hopefully, you’ll learn how to optimize your working processes easily and efficiently.

Continue reading...

SecGroup will keep the Noorderplantsoen green for the coming two years

SecGroup will keep the Noorderplantsoen green for the coming two years

Startup in Residence participant SecGroep will work together with the City of Groningen for the next two years, to roll out and test Sensoty, the management system they developed. With sensors above and underground, the system constantly checks the soil conditions of the Noorderplantsoen. Based on the data, Sensoty gives advice on protection measures during events and busy warm days.