Installation overview

Overview

This page provides a high-level overview of the installation process for each of the installation scenarios.

The installation process has three main phases:

  • Pre-installation
  • Installation
  • Post-installation

The following sections describe what occurs during each phase.

Pre-installation

Before you begin the pre-installation phase, ensure you are roughly familiar with the SaltStack Enterprise system architecture.

During the pre-installation phase, you make key decisions as you plan your SaltStack Enterprise installation project. In this phase, you will:

  • Decide which installation scenario is best for your network.
  • Determine what hardware and software you need for your SaltStack Enterprise installation, such as how many nodes you need to allocate, which operating systems these nodes need, etc.
  • Plan any necessary workarounds if your network does not have access to the Internet.
  • Decide whether to install Salt beforehand if needed.
  • Download and verify the required installation files.

By the end of this phase, ensure that you have requested the necessary nodes and virtual machines (VMs) needed for your installation scenario.

For guidance with this phase, see Pre-installation planning.

After you have finished planning your installation, there are a few additional pre-installation tasks that must be completed:

Installation

The SaltStack Enterprise installer supports two core installation scenarios:

  • Single-node installation
  • Multi-node installation

For guidance on which installation scenario is right for your network, see Which installation scenario should you use?

The following sections provide an overview of the installation process for each scenario. Before reading these sections, ensure you are familiar with the core components of the SaltStack Enterprise system architecture.

Single-node installation overview

In the single-node installation scenario, you install SaltStack Enterprise on a single node (server) using the SaltStack Enterprise installer. The end goal is to have a Salt Master, SaltStack Enterprise, a Redis database, and a PostgreSQL database that all run on the same node.

To run a single-node installation scenario, you will:

  • Extract and import the installation files for this scenario.
  • Install or update Salt and Python, if needed.
  • Run an installation script that will install a Salt Master, SaltStack Enterprise, a Redis database, and a PostgreSQL database on one node.

For a step by step guide, see Single-node installation.

Multi-node-installation overview

In the multi-node installation scenario, you install SaltStack Enterprise on multiple nodes (servers) using the files provided with the SaltStack Enterprise installer. The end goal is to have four nodes, each hosting a different component of the SaltStack Enterprise structure:

  • A Salt Master
  • A PostgreSQL database node
  • A Redis database node
  • An Enterprise API node, also known as the RaaS node

Alternatively, you can run the Salt Master service on one node, and combine two or more of the other services on a separate node. Custom architecture requirements may require consultation services.

In the multi-node installation scenario, you run an orchestration highstate designed by SaltStack. The highstate runs on your Salt Master and sets up the multi-node environment. It installs the core SaltStack Enterprise architecture on the three other nodes that will host PostgreSQL, Redis, and the Enterprise API.

Note

Orchestration is one reason why Salt is so powerful as a configuration management tool. Manually installing and configuring every node in your system is very time-consuming, resource intensive, and tedious. Orchestration allows you to define the configuration for a set of minions all at once. For example, you could create an orchestration that automates the process of bringing a new server online by installing all the necessary applications and even notifying certain employees at different stages of the configuration. For more information about how orchestration works, see Salt system architecture.

During a multi-node installation scenario, you will:

  • Update Salt and Python, if needed.
  • Customize the installation orchestration files to point to the nodes that eventually host PostgreSQL, Redis, and the Enterprise API. From an infrastructure as code perspective, you are essentially creating the unique variables for your network that you will pass into the orchestration.
  • Run the installation orchestration highstate.

For a step by step guide, see Multi-node installation.

Post-installation

After the core installation scenarios are complete, there are a number of post-installation steps, some of which are optional: