tutorial series

Managing Development Environments with SaltStack
  • By Justin Ellingwood

  • SaltStack is a powerful remote execution tool and configuration management system. In this series, we will use Salt to configure reproducible development, staging, and production environments onto which we can deploy an application. This is primarily meant as a learning exercise to demonstrate some common Salt components and strategies that can be used to control your infrastructure.

    Published on October 5, 2015

    Salt, or SaltStack, is a remote execution tool and configuration management system. Its remote execution capabilities allow administrators to run commands on various machines in parallel with a flexible targeting system. In this guide, we will discuss some of the basic concepts and terminology needed to begin learning Salt.

    Published on October 5, 2015

    In this article, we’ll introduce the various environments we’ll be building out and install the Salt master daemon onto our primary server. This is the core system that will house our configuration instructions, control our infrastructure nodes, and manage our requirements.

    Published on October 5, 2015

    In this guide, we will expand our Salt master’s reach by configuring the salt-cloud components. This will allow us to hook into our DigitalOcean account to spin up resources as necessary. We will be creating profiles that define the properties of our individual components and of our environments as a whole.

    Published on October 5, 2015 · Updated on November 7, 2016

    In this article, we will begin to dive into configuration management by creating Salt state files for Nginx. Nginx will be used on our web server nodes in all three environments in order to handle web requests.

    Published on October 5, 2015

    In this guide, we will configure Salt states for the load balancer that will sit in front of our web servers in our staging and production environments. Our load balancers need to be configured with the web server addresses in order to correctly pass traffic.

    Published on October 5, 2015

    In this guide, we will change our focus to create states that will install and manage our MySQL database servers in each of our environments. This article will cover the basic installation and setup of MySQL.