Chapter 3. Execution Modules: The Functional Foundation

Salt comes with a rich set of execution modules and execution functions that allow you to administer many common tasks on your systems. All of these routines are simply Python. There isn’t any custom language; it’s just Python. The Salt libraries are exposed to these modules and functions, giving them access to the innards of the Salt system. Alongside the standard, built-in modules is the ability to add functionality with your own code.

The list of modules built in to Salt is extensive. The best place to look is on the main documentation site.1 We have already been using the test.ping module pretty heavily in our examples up until now. It would take an entire book to describe all of the modules in detail, so we are going to cherry-pick a few of the most heavily used ones to give you a taste of what is available. But we sincerely encourage you to examine the list on the Salt web pages. The list grows almost every day, with both new modules and new functionality added to existing modules.

sys: Information and Documentation About Modules

Whether you are an experienced user or brand new to Salt, you are eventually going to need to see some documentation. The sys module offers a lot of insight into the modules and functions loaded. We have mentioned several times already that the modules are actually executed on the minions themselves. The minions may be in different states. They may have different dependent libraries loaded ...

Get Salt Essentials now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.