You can install the SaltStack Config service in your vRealize Automation environment using one of two installation methods. Once installed, you can configure a SaltStack Config integration and complete the necessary post-installation tasks.

Important: SaltStack Config runs on Salt, an open-source automation and configuration management engine. In order to begin using SaltStack Config for configuration management, you also need to install and run the Salt minion service on any nodes that you intend to manage using SaltStack Config. You can deploy the Salt minion service to your nodes using either vRealize Automation cloud templates or by installing the service through Secure Shell (SSH).

This installation guide explains the standard process for installing SaltStack Config from the beginning to the end. It is intended for network system administrators with the general knowledge and experience required in that field, such as experience working with Linux and the command line. You do not necessarily need advanced knowledge of Salt or SaltStack Config before installing.

If at any time you encounter difficulties with the installation that are not addressed by this guide, Contact Support.

Installation goals

The goal of the installation process is to create the back-end SaltStack Config system architecture, which consists of four main components:

Component Description
SaltStack Config API server, also known as RaaS

RaaS (Returner as a Service) provides RPC endpoints to receive management commands from the SaltStack Configuser interface, as well as RPC control endpoints to interface with connected Salt master(s).

Salt master(s) and the Master Plugin

You can connect as many Salt masters as needed to SaltStack Config, but at least one is required.

The Salt master is the main connection between SaltStack Config and the rest of the nodes on your network (referred to as minions). When you issue a command from SaltStack Config (such as a job), the command goes to the Salt master for distribution to the targeted minions.

The Master Plugin is installed on the Salt master(s). It allows the Salt master(s) to communicate with the SaltStack Config backend server, the RaaS node. The Master Plugin allows the Salt master(s) to access jobs or processes initiated by SaltStack Config, as well as external files and pillar data that are stored on the PostgreSQL database.

PostgreSQL database SaltStack Config uses a PostgreSQL database to store minion data, job returns, event data, files and pillar data, local user accounts, as well as additional settings for the user interface.
Redis database SaltStack Config uses a Redis database to store certain types of data in temporary storage, such as cached data. It also uses temporary data storage to distribute queued work to background workers.

In the standard installation scenario, each of these components will be deployed to a dedicated node, which means you'll have four dedicated nodes when you're finished. If your system needs high availability, you might need to deploy multiple Salt masters, PostgreSQL databases, and Redis databases.

The following image shows the end goal of a standard installation:

Diagram explaining SaltStack Config architecture: vRA, Postgress and Redis connect to the RaaS server, which controls the Salt Masters. The Salt Masters then pass information to individual minions.

Installation overview

The installation process has five main phases:

  • Preinstallation
  • Installation
  • Post-installation
  • Integrate with vRealize Automation
  • Install Salt on the nodes you want to manage with SaltStack Config

This guide provides content to support each phase, as described in the following sections.

Preinstallation

Before you begin the pre-installation phase, ensure you are roughly familiar with how SaltStack Config's architecture works.

During the preinstallation phase, you make key decisions as you plan your SaltStack Config installation project. In this phase, you will:

  • Decide which installation scenario is best for your network.
  • Determine the hardware and software you need for your SaltStack Config installation, such as how many nodes you need to allocate, which operating systems these nodes or virtual machines (VMs) need, etc.
  • Plan any necessary workarounds if your network does not have access to the Internet.
  • Install Salt on the nodes or VMs that will host the necessary SaltStack Config architecture.
  • Download, verify, and import 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.

Installation

SaltStack Config supports two installation methods:

  • Standard installation - Installs the architectural components needed for SaltStack Config in four or more separate nodes.
  • vRealize Suite Lifecycle Manager (vRLCM) installation - Installs SaltStack Config and all of its architectural components on a single node. This method also installs the Salt master host and configures a required vRealize Automation property group.
Caution: If you are unsure which installation method is best for your system, the standard installation is recommended. The vRealize Suite Lifecycle Manager installation method is not recommended for production grade systems with more than 1,000 nodes.

The following image shows the system architecture that you'll have after you complete a standard installation but before you complete the post-installation or Salt installation steps:

Diagram explaining how a standard installation of SaltStack works: vRA, Postgress and Redis connect to the RaaS server, which controls the Salt Master.

The following image shows the system architecture that you'll have after you complete a Lifecyle Manager (vRLCM) installation but before you complete the post-installation or Salt installation steps:

Diagram explaining how SaltStack Config is installed via LCM: LCM uses the vRA interface to install the RaaS server, Postgres database, and redis database. Once installed, the Salt Master is configured.

Post-installation

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

Install Salt on the nodes you want to manage with SaltStack Config

SaltStack Config runs on Salt, an open-source automation and configuration management engine.

In order to begin using SaltStack Config for configuration management, you also need to install and run the Salt minion service on any nodes that you intend to manage using SaltStack Config.

You can deploy the Salt minion service to your nodes using either vRealize Automation cloud templates or by installing the service through Secure Shell (SSH).

The following image shows the system architecture that you'll have after you complete the standard installation, post-installation, integration, and Salt installation steps:

Diagram explaining how a standard installation of SaltStack and Salt works: vRA, Postgress and Redis connect to the RaaS server, which controls the Salt Master. The Salt Master then passes information to control individual minions.