Chapter 1: Understanding Salt and Configuration Automation
Chapter Goal: Learn about Salt Open and its' commercial sibling, SaltConfig, from VMwareNo of pages 8
Sub - Topics-
Salt Open and the SaltProject
SaltConfig and VMware
Speed, the Salt advantage
Speed, the Salt advantage
Chapter 2: Installing Salt
Chapter Goal: In this chapter we will outline the labs systems used throughout the book and optional networking equipment before moving onto installing the Salt-Master Salt-Minions and providing basic tests
No of pages: 12
Sub - Topics
1. Identity Lab setup
2. Install latest version of Salt Master and Minions
3. Configuring Master and Minions
4. Configuring Times Services
5. Signing Keys
6. Implementing basic tests
7. Implement firewalling on the Salt Master
Chapter 3: Installing Additional Minions
Chapter Goal: We have just one server and a Minion on the same server. We will now expand this to include additional Linux distribution and learn more about Salt authentication
No of pages : 8
Sub - Topics:
1. Authenticating with Minion public keys and key management
2. Automating key signing
3. Locating the Salt Master
4. Automating the Minion ID
Chapter 4: Targeting Minions
Chapter Goal: Learn how we can target tasks to the required Minions in Salt Open
No of pages: 12
Sub - Topics:
1. Salt Targeting
2. Understanding grains and using them as targets
3. Targeting using regular expressions and IP notation
4. Creating Node groups and using them as targets
Chapter 5: Working with Remote Execution Modules in Salt Open
Chapter Goal: At the heart of Salt we have remote execution modules and we stale a look at the construction in Python and how we use them and find their documentation
No of pages: 15
Sub topics
1. Using Modules and Functions
2. Listing the salt module indices
3. Using salt and salt-call to execute modules
4. Locate command line help
5. The big three: packages, services, and files
Chapter 6: Writing YAML
Chapter Goal: Learn to write and understand YAML files. Configure your command line editor for YAML
No of pages: 8
Sub - Topics:
1. YAML Ain't Markup Language
2. Using Online Parser to process YAML
3. Configuring the nano editor
4. Configuring the vim editor for YAML and SLS files
Chapter 7: Writing Salt State Files
Chapter Goal: Create repeatable configurations using SLS files
No of pages: 15
Sub - Topics:
1. State vs Flow
2. Jinja and YAML Parsing
3. Creating Jinja2 templates
4. Installing packages with Salt states
5. Managing services with state files
6. Delivering files with salt states
7. Syntax checking state files
Chapter 8: Building an effective state tree
Chapter Goal: The top.sls file can be referenced as the inverted root of the state tree to include the required states for different systems
No of pages: 8
Sub - Topics:
1. Creating the top file
2. Understanding state.sl, state.apply and state.highstate
3. Targeting in the top file
Chapter 9: Creating Reusable State Files
Chapter Goal: Learn to implement states that fit a variety of systems
No of pages: 15
Sub - Topics:
1. Using variables and Jinja
2. Using grains
3. Configuring Salt Pillar
4. Using logic to remove reliance on external data
5. Speeding the process with map files
6. Accessing templated data
Chapter 10: Implementing Reactors and Beacons
Chapter Goal: The Salt Master maintain the high-speed message bus. Events are written to this bust and we can view the events to help understand and debug the salt system. Working with events we can configure the master to react to events using Reactors. This can move configuration management into the realms of orchestration. Taking this further we can configure beacons on Minions to send events to the bus when triggered by thresholds on the managed device
No of pages: 18
Sub - Topics:
1. Reading and Identify events on the event bus
2. Configuring reactors on the Salt Master
3. Configuring Beacons on Minions
Chapter 11: Using Salt-SSH
Chapter Goal: Where a long running Minion service is not desirable we can use salt-ssh to deploy configuration
No of pages: 8
Sub - Topics:
1. Salt-SSH
2. Deploy key based ssh authentication
3. Using Salt-SSH
Chapter 12: Deploy Virtual Machines Using Salt-Cloud
Chapter Goal: Using salt-cloud the single utility can be used to manage your virtual machine deployment irrespective of the cloud system used
No of pages: 10
Sub - Topics:
1. Managing VMs with salt-cloud
2. Using salt-cloud with AWS
3. Configuring providers and profiles
4. Using map files
5. Managing systems
Chapter 13: Scaling Configuration Management Using Salt-Syndic
Chapter Goal: Implementing Salt-syndic you add additional masters to the system that report back to the Master or Masters. This can load balance your Minions or act to traverse a network link
No of pages: 6
Sub - Topics:
1. Installing Salt Syndic
2. Configuring Syndic on minion
3. Configuring Minions to use Syndic
Chapter 14: Automating Network Infrastructure with Salt Proxy
Chapter Goal: Salt Proxy is used to connect to devices that don't maintain a long running Minion such as network devices
No of pages: 15
Sub - Topics:
1. Configuring Pillar Data for Proxy
2. Installing NAPALM modules
3. Configuring Proxy Systems
4. Enabling SSH on Cisco IOS
5. Configuring NTP services on Cisco Devices
6. Backing up Configuration on Cisco and Aruba systems
7. Restoring configurations
8. Using salt-sproxy as a Proxy Minion alternative