SaltStack Foundation | Starting with SaltStack

Module Details

Code M001
Created 2017-05-31
In Courses C001 SaltStack Foundation | Online Salt Training

Academic Aims

This module covers many of the features and techniques need to implement Salt as an infrastructure manatement system. The course is struxtured into sections, each building on the previous; the first section Salt masterless introduces many of the core Salt concepts, then salt-ssh is described, the main sections then cover Salt in a Master/Minion arrangement, and finally a section on troubleshooting Salt issues.

Learning Outcomes

At the end of the module, a student will have an understanding of:

  • Execution modules
  • State modules
  • Salt’s execution flow
  • Writing state files
  • Using data:
    • Pillar
    • Grain
    • Mine
  • Using Salt’s filesystem
  • Finding and using Salt formulas
  • Tracking Salt jobs
  • Viewing and using the Salt event system
  • Basic orchestration
  • The basics of:
    • Reactor
    • Beacons
  • Troubleshooting Salt issues

Students working through this module’s practical material will have successfully deployed a multi-machine Salt installation and used it to deploy a number of different applications. Practical work builds to the final project where students will deploy a system consisting of:

  • nginx with self-signed SSL configuration
  • PHP
  • MariaDB
  • Mediawiki
  • fail2ban
  • iptables firewall

Content

 Salt Masterless

Deploying Salt in masterless configuration. This section introduces key Salt concepts:

  • Execution modules
  • State modules
  • State files (.sls)
  • Salt’s render pipeline
  • Salt execution flow
  • Basic jinja and YAML
  • Debugging state files
  • Salt’s filesystem
  • Introduction to Pillar data
  • Introduction to Grain data

Salt salt-ssh

Deploying Salt as an SSH master. This section introduces:

  • Remote execution
  • salt-ssh on the target sytem
  • salt-ssh roster file
  • State files with salt-ssh
  • Grains with salt-ssh
  • Pillars with salt-ssh

Salt Master/Minion

Deploying Salt in a Master/Minion configuration. This section introduces the main Salt deployment model along with the following:

  • Salt’s event bus architecture
  • More on remote execution
  • Monitoring minions
  • The top.sls files, highstate, and Salt environments
  • Developing more comples state files
  • The complete Salt execution flow
  • Modifying how Salt outputs results
  • More on Salt filesystems

Assessment

This module is not assessed.

Teaching

n Lectures, m Seminars, …