Book Image

Mastering SaltStack - Second Edition

By : Joseph Hall
Book Image

Mastering SaltStack - Second Edition

By: Joseph Hall

Overview of this book

SaltStack is a powerful configuration management and automation suite designed to manage servers and tens of thousands of nodes. This book showcases Salt as a very powerful automation framework. We will review the fundamental concepts to get you in the right frame of mind, and then explore Salt in much greater depth. You will explore Salt SSH as a powerful tool and take Salt Cloud to the next level. Next, you’ll master using Salt services with ease in your infrastructure. You will discover methods and strategies to scale your infrastructure properly. You will also learn how to use Salt as a powerful monitoring tool. By the end of this book, you will have learned troubleshooting tips and best practices to make the entire process of using Salt pain-free and easy.
Table of Contents (20 chapters)
Mastering SaltStack Second Edition
About the Author
About the Reviewer

Handling multiple states

Using single SLS files is pretty powerful as it is, but real power comes from being able to combine them to form a larger orchestration. We touched on some of the basics in Chapter 1 , Essentials Revisited. Let's go ahead and expound upon them.

Including other SLS files

That little include code block at the beginning of an SLS file is the start to pulling together SLS files. Let's say that you have a number of formulas that are used to create a development environment for your users. Here are a few examples:

  • git

  • vim

  • emacs

  • ack

  • pip

  • pycharm

Let's go ahead and put together a development environment formula first. Go ahead and create a formula directory called devenv:

# mkdir -p /srv/salt/devenv/

Then, we'll create a file inside that directory called init.sls that references those formulas:

  - git 
  - vim 
  - emacs 
  - ack 
  - pip 
  - pycharm 

Of course, most of your developers will not want both vim and emacs; they'll only want...