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.
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.
The goal of the installation process is to create the back-end SaltStack Config system architecture, which consists of four main components:
|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.
|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.
|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:
The installation process has five main phases:
- 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.
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.
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.
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:
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:
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: