SaltStack Enterprise II

Contexte

This course begins by presenting the different aspects of deploying SaltStack minions. It presents SaltStack support for cloud control, custom deployments of Linux, Windows, and Salt Proxy Minions. Alternative topologies such as implementing master failover strategies. Salt Syndic and other hierarchical solutions are presented outlining the requirements, benefits, and caveats of each type.

Building on the fundamental administrative tasks presented in the Salt Open Source Foundations and the SaltStack Enterprise I course, this course shows how to address administrative tasks in large environments. It provides a detailed outline of various execution paths in the SaltStack architecture. Execution topics include Salt events, state and file rendering, and more. The security of a SaltStack implementation is covered and includes running as a non-root user, using external authentication, and troubleshooting SaltStack.

The course adds to configuration management concepts by outlining best practices for state formulas. There will be scenarios presenting the best use of templating with Jinja. The course also shows how to utilize the Salt state system with a deep-dive into the stages of execution. Salt orchestration scenarios will show how to automate enterprise-wide deployments. The content also includes information about creating a dynamic, event-driven infrastructure with Salt Reactors and Beacons.

 

Format

Cours Online

Durée : 3 jours

Lab : Salt Cloud

 

Agenda

Chapitre 1 – Introduction

Chapitre 2 – Salt Cloud

2.1 Objectives

2.2 What is Salt Cloud?

2.3 Salt Cloud Components

2.4 Configuring Salt Cloud

2.6 Querying Available Data

2.7 Defining Virtual MachineProfiles

2.8 Salt Cloud Options

2.9 Creating VMs with Profiles

2.10 The Salt Cloud Provisioning Process

2.11 Salt Cloud Command Output

2.12 Querying for VMs

2.13 Destroying Virtual Machines in the Cloud

2.14 Managing Multiple VMs Instances

2.15 Provider-Specific Commands

2.16 Salting Existing Systems

2.17 Using the VMware Cloud Driver

2.18 The Class Setup

2.19 Your Salt Lab Environment

2.20 Summary

2.21 Labs

Chapitre 3 – Windows Minions

3.1 Objectives

3.2 Salt Windows Minion Management

3.3 The Salt Windows Management Framework

3.4 Deploying Windows Minions

3.5 User and Group Management

3.6 Managing Windows Permissions

3.7 Software Management

3.8 Managing Windows Features and Roles

3.9 Summary

3.10 Labs

Chapitre 4 – Proxy Minions

4.1 Objectives

4.2 What is a Proxy Minion?

4.3 Salt Proxy Minion Topology

4.4 Using Proxy Minions

4.5 Proxy Minion Modules (ESXi Example)

4.6 Multiple Proxy Minion Configuration

4.7 Summary

4.8 Labs

Chapitre 5 – Salt Execution and Architecture

5.1 Objectives

5.2 Salt Execution

5.3 Salt Components

5.4 Calling Modules Locally on a Minion

5.5 Sending Jobs to the Salt Master

5.6 The Event System

5.7 Salt Master Processes

5.8 The salt Execution Architecture

5.9 Summary

5.10 Labs

Chapitre 6 – The Salt State System

6.1 Objectives

6.2 Uses of the Salt State System

6.3 SLS Files

6.4 Salt State Processing

6.5 State Rendering

6.6 State Compile

6.7 State Runtime

6.8 Summary

6.9 Labs

Chapitre 7 – Salt Renderers

7.1 Objectives

7.2 Salt State Rendering

7.3 Using the Python Renderer

7.4 Using the Jinja Renderer

7.5 Conditional ifStatements

7.6 Jinja Variable Assignments

7.7 Leveraging Lookup Lists and Dictionaries

7.8 Jinja Filters

7.9 Calling Execution Modules with Jinja

7.10 Using the GPG Render

7.11 Summary

7.12 Labs

Chapitre 8 – Building Salt Formulas

8.1 Objectives

8.2 Salt Formulas

8.3 Salt State Formulas Best Practices

8.4 Using Inline Pillar Data

8.5 Data Merging of Dictionaries and Pillar

8.6 The Online Salt Formula Repository

8.7 A Complete State Example

8.8 External Pillars

8.9 Summary

8.10 Lab

Chapitre 9 – Salt Job Scheduling

9.1 Objectives

9.2 Scheduling Jobs

9.3 Managing Scheduled Jobs

9.4 Scheduling Jobs from Pillar

9.5 Managing Schedules in States

9.6 Summary

9.7 Lab

Chapitre 10 – Salt Orchestration Formulas

10.1 Objectives

10.2 Running Jobs on the SaltMaster

10.3 Salt Orchestration

10.4 Orchestration Declarations

10.5 Using Inline Pillar with Orchestration.

10.6 Using State Modules in Orchestration

10.7 The Salt Mine

10.8 The Simple Database (SDB)

10.9 Summary

10.10 Labs

Chapitre 11 – Reactors and Beacons Formulas

11.1 Objectives

11.2 Reactor System

11.3 Beacons

11.4 Reactor Best Practices

11.5 Summary

11.6 Labs

Chapitre 12 – Salt Security

12.1 Objectives

12.2 More About Keys

12.4 Increasing Security

12.5 Decreasing Security

12.6 Publisher ACLs

12.7 External Authentication System

12.8 Hardening Salt

12.9 Security Issues

12.10 Summary

12.11 Labs

Chapitre 13 – Supporting and Troubleshooting Salt

13.1 Objectives

13.2 Introduction

13.3 Viewing Salt Activity

13.4 Network Settings

13.5 Salt Keys

13.6 Salt States

13.7 Summary

13.8 Labs

Chapitre 14 – Multi-Master

14.1 Objectives

14.2 Multi-Master

14.3 Sharing Files Between Masters

14.4 Summary

14.5 Labs

Chapitre 15 – Tuning Salt

15.1 Objectives

15.2 Setting Context

15.3 Master Rendering Time

15.4 Slow Modules

15.5 Salt MWorkers

15.6 Salt Keys

15.7 Sleepy Minions

15.8 Tuning Network Bottlenecks

15.9 Tuning CPU Bottlenecks

15.10 Tuning IO Bottlenecks

15.11 Large Jobs

15.12 State Runtime Tuning

15.13 Summary

15.14 Labs

Chapitre 16 – Auto-Scaling Case Study

16.1 Create the Web Server State

16.2 Labs

 

Read On