Salt: Getting Started

This course serves as a primer for using Salt to manage system configurations. You’re going to get a tour of the critical path elements in Salt so that you can start using it yourself.
Course info
Rating
(35)
Level
Beginner
Updated
Sep 29, 2016
Duration
2h 25m
Table of contents
Description
Course info
Rating
(35)
Level
Beginner
Updated
Sep 29, 2016
Duration
2h 25m
Description

Stop configuring your servers by hand! In this course, Salt: Getting Started, you'll see how to automate software installation, configuration changes, and deployments using Salt. First, you'll learn about installation and network configuration; and how to get the Salt software installed and configured. Next, you'll use states (Salt's declarative specification for configuration changes) and learn how to wrangle sensitive information like usernames, passwords, and certificates in a secure way. Finally, you'll wrap up the course learning about automating and coordinating configuration changes across multiple machines using Salt’s powerful orchestration mechanism. By the end of this course, you’ll have a basic working knowledge of how to install and use Salt to manage Linux systems.

About the author
About the author

Developer. Craftsman. Leader. Architect. Mentor. Teacher. Author. Floyd is a veteran software craftsman with broad experience and a passion for teaching.

More from the author
Designing Fluent APIs in C#
Advanced
1h 58m
Mar 1, 2016
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone. I'm Floyd May, and welcome to my course, Salt: Getting Started. I am a software craftsman and programming mentor in Tulsa Oklahoma. Salt is a really easy to learn configuration management platform that can handle the largest and most complex environments. It's cross platform, scalable, and secure. In this course we are going to learn the basics. You're going to get a tour of the critical path elements in Salt, so that you can start using it yourself. Some of the major topics that we will cover include, installation and network configuration, how to get the Salt software installed and configured, using states, which are Salt's declarative specification for configuration changes, wrangling sensitive information, like usernames, passwords, and certificates in a secure way, automating and coordinating configuration changes across multiple machines using Salt's powerful orchestration mechanism. By the end of this course you'll have a basic working knowledge of how to install and use Salt to manage Linux systems. Before beginning this course you should have a basic understanding of using Linux from the command line, including installing packages, and editing configuration files with a command line friendly text editor. I'm looking forward to helping you use Salt to start managing infrastructure with Salt: Getting Started at Pluralsight.

Grains: Machine-specific Data
Hi. This is Floyd May with Pluralsight. Welcome back. This module is called Grains: Machine-specific Data. In Salt grains are used to store information with each minion, so that information can be different from minion to minion, so what we're going to explore in this module is how we can make use of grains to do interesting things with our Salt minions. For instance, role-based configuration management. So let's get started. Our lead developer has informed us that our HWAAS site, again, in module 2 we worked on this site called Hello World As A Service, and Hello World As A Service is apparently expected to be very, very popular, and so our lead developer has told us we need horizontal scaling. That is, we need to be able to add new web servers and use load balancing to distribute the load across all of those web servers. So to make a picture, what we have right now is a single web server we've called web1, and our HWAAS site lives on that web server. It runs on NodeJS. What we need is this. Rather than just a single web server, we need to create multiple different web servers all running the same site, and then put a load balancer in front of those web servers, so that we can shuffle out requests to each of those web servers, and distribute the load across many web servers. So, what our lead developer has told us is that he's added some features to the HWAAS site that should make it a little bit easier for us to configure and test our load balancing configuration.

Pillar and Templating: Parameterizing States
Hi. Welcome back. This is Floyd May with Pluralsight, and this is Pillars and Templating: Parameterizing States. In this module we're going to learn how to use Salt's Pillar datastore. Pillar data is suitable for potentially sensitive information, like usernames, passwords, certificates, and private keys. Sometimes we need to make use of that kind of sensitive information in configuration management, and so we need a secure facility for doing it. We'll also learn how to write templates into our states. This creates opportunity for our states to be more general purpose, so that a single state definition can handle the configuration management details for multiple scenarios. It's a good thing that we're learning about how to manage sensitive information in Salt because our lead developer has just come to us with a new infrastructure need. The Hello World As A Service site needs to be delivered over HTTPS. It's important that the users receive their greetings securely. This means that we need to configure our load balancer to serve content over HTTPS using SSL, which also requires that we configure it to use an SSL certificate. SSL certificates are sensitive information, and so we need a configuration management solution that can handle sensitive information the right way. So at the end of this module we should accomplish this. Our load balancer sits on the boundary between our internal infrastructure communications, which are all done using raw HTTP, whereas these communications between the load balancer and the internet at large are done over HTTPS.