The Minions workspace is used to view minion details, search for or sort minions by ID or other properies, run ad-hoc jobs or commands, and create new targets. You can also use this workspace to adjust target settings, such as attached pillars, run jobs, accept or reject keys, as well as assign a role or pillar to a target. See Minions for more information.

Note: As part of VMware’s initiative to remove problematic terminology, the term Salt master will be replaced with a better term in SaltStack Config and related products and documentation. This terminology update may take a few release cycles before it is fully complete.

Managing minions and targets

The Minions workspace includes a list of all Salt minions that are running the minion service and that are currently managed by SaltStack Config. Minions are nodes running the minion service, which can listen to commands from a Salt master and perform the requested tasks. Salt masters can themselves run the minion service, which makes it possible to configure and manage the node running the Salt contoller service as needed.

The side panel of the workspace includes a list of targets. A target is the group of minions, across one or many Salt masters, that a job’s Salt command applies to. A Salt master can also be managed like a minion and can be a target if it is running the minion service. Defining a target for a job or operation also prevents the operation from running on nodes that should not run that operation. Targets can contain minions that are connected to any Salt master in your environment. You can attach pillar data to different targets. Pillars are structures of data defined on the Salt master and passed through to one or more minions, using targets. They allow confidential, targeted data to be securely sent only to the relevant minion. See Pillars for more information.

By default, when you open the workspace, the All Minions target is active. The All Minions target lists all the minions you have permission to access.

Ad-hoc jobs or commands

The Minions workspace also includes a Run Command control that allows you to run a single, ad-hoc command on one or more minions without creating a reusable job. This feature is useful for executing commands quickly or for running one-off jobs that are not part of your everyday workflow, such as when troubleshooting, or during initial configuration. See Running a command for more information.

In the Minions workspace, you can run an ad-hoc job or command on:

  • A single minion
  • A list of minions
  • A Salt master or all Salt masters (using salt-run)
  • A target

See SaltStack Config jobs workflow for an overview of how to use the Minions workspace along with the other workspaces in SaltStack Config to create and use jobs for configuration management.

Accessing the Minions workspace

To use the Minions workspace, click Targets on the side menu.

Viewing minion details

To view a specific minion’s details:

  1. In the Minions workspace, select a minion ID from the Minion ID column to open the minion details page.
  2. In the minion details page, you can view a list of grains, or information about the minion. You can also run an ad-hoc job against a single minion.
  3. Select the Activity tab to view the minion’s job history. See Jobs for more information.

Downloading minion data

To download data for all minions:

  1. In the Minions workspace, click More actions to open a menu.
  2. In the menu, under Download table, select the required format to begin the download.

Searching for a minion

To find a specific minion:

  1. In the Minions workspace, click the filter button filter-icon for the column you want to search.
  2. Start typing the search criteria to see the rows filter instantly. For example, you might search for a minion ID in the Minion column.
    Note:

    You can also click any column name once to sort the rows in descending order. Click again to reverse the order. For more information about filtering, see Filtering and sorting table columns.

Filtering and sorting table columns

You can filter each column by selecting its filter icon filter-icon and selecting or typing your filter criteria. To clear a filter, click the Clear Filters button above the minions table.

You can also sort a column by selecting the column name. To customize which columns display in the table, click the Show columns button show-columns-icon in the corner under the minions table.

Note:

If you filter against the All Minions target, that filter remains persistent across all your targets.

Filters, column sorting, and column visibility settings are persistent for a given user, regardless of the device used to log in. This means that when a particular user logs in, he or she sees the same filtering, sorting, and visibility settings the next time he or she logs in until the filters are cleared or the sorting and visibility settings are changed.

You can also sort a column by selecting the column name.

Running an ad-hoc job

In the Minions workspace, you can run an ad-hoc job or command on:

  • A single minion
  • A list of minions
  • A Salt master or all Salt masters (using salt-run)
  • A target
Note:

Targets are dynamic, and new minions are automatically added to any matching target definition. Make sure to review the minions included in a target before you run a job.

See SaltStack Config jobs workflow for an overview of how to use the Minions workspace along with the other workspaces in SaltStack Config to create and use jobs for configuration management.

To run an ad-hoc job:

  1. In the Minions workspace, select which minion, target, or list of minions you want to run the job against:
    • To select a single minion or list of minions, check the box next to the minions in the table.
    • To select a target, click the name of the target in the Targets side panel. The name of the currently selected target shows above the minions list.
  2. Click Run job to run a job.
  3. In the confirmation dialog, select the job you want to run and confirm the correct target or minions are selected.
  4. Select additional options as needed and click Run now.

For more on jobs and the different options available when running a job, see Jobs.

Note:

You can also run a job on a single minion by selecting its Minion ID and viewing the minion details page.

Running a command

In the Minions workspace, you can run an ad-hoc job or command on:

  • A single minion
  • A list of minions
  • A Salt master or all Salt masters (using salt-run)
  • A target
Note:

Targets are dynamic, and new minions are automatically added to any matching target definition. Make sure to review the minions included in a target before you run a job.

See SaltStack Config jobs workflow for an overview of how to use the Minions workspace along with the other workspaces in SaltStack Config to create and use jobs for configuration management.

To run a command against one or more minions:

  1. In the Minions workspace, select which minion, target, or list of minions you want to run the job against:
    • To select a single minion or list of minions, check the box next to the minions in the table.
    • To select a target, click the name of the target in the Targets side panel. The name of the currently selected target shows above the minions list.
  2. Click Run Command.
  3. In the Run Command dialog, confirm the correct command and target are selected, then select a function.
    Note:

    If you select the salt-run command, you can choose to run the command on all Salt masters or on a specific Salt master. This is known as a Salt runner. See Salt runners for more information.

    Include any arguments as needed. For more on Salt commands and functions, see Jobs.

  4. Click Run Command.

The command is executed as a job. You can track its progress and results as for other jobs in SaltStack Config. See Job returns.

Creating a new target

Each target in SaltStack Config includes a name, Salt master, and target criteria. To define a new target including one or more minions:

  1. In the Minions workspace, click All Minions in the Targets side panel.
  2. Click the Create target button.
  3. In the Create Target dialog in the Name field, enter a descriptive name for the new target.
  4. By default, the All masters setting is enabled, which means that minions being managed by any Salt master can be included in the target. Click this button to apply this target only to a subset of minions associated with one or more Salt masters.

    If you disable this setting, a menu appears that you can use to select which Salt master or Salt masters to apply the target to. See Target settings for more information.

  5. Click the Grain menu and select the type of target want to use. You can target minions using grains, globs, lists, or compounds. See Target settings for more information about these targeting options. For more general background information about Salt targets, see Targeting minions.
  6. Different target settings and criteria are available based on the type of target you selected in the previous step. For more information about these settings, see Target settings.
    Note:

    If you select Compound as the first criterion, you must follow the targeting syntax included in the Salt Targeting Reference, and you must include any secondary criteria in the compound target definition. SaltStack Config does not allow you to add any other criteria in the target editor. For more on compound targeting, see Target settings.

  7. When complete, click Save.

Defining a simple list target

To create a new target using a simple list:

  1. In the Minions workspace, click All Minions in the Targets side panel.
  2. Click the checkbox next to the minions you want to include in the list and click Create target.
    Note:

    Filtering or sorting your minions can be useful for defining a list. See Filtering and sorting table columns.

    The selected list is included as a criterion.

  3. Enter a target name and define any additional target settings. See Target settings.
  4. When complete, click Save.

Assigning pillar to a target

To assign pillar data to a specific target of minions:

  1. In the Minions workspace, select a target from the Targets side panel.
  2. Click More actions.
  3. In the menu, click Attach Pillar.
  4. In the dialog, select the pillars you want to apply to the target.

    In addition to selecting a pillar, select Refresh pillar to make the pillar available to the selected target immediately.

  5. Click Update Target.

    The selected pillar data is now available to all minions in the target.

    Note:

    You can also assign a pillar to a target in the Pillars Workspace. See Pillars.

Minion presence

The Presence column indicates if SaltStack Config has received any job data from the minion recently, within a defined interval called raas_presence_expiration. By default, this interval is set to 3600 seconds. Presence can provide an indicator of machine health by using the Presence beacon installed on minions.

If the Presence beacon is in place, minions send periodic status payloads to their Salt masters, which SaltStack Config then retrieves, influencing the status displayed in the Presence column.

Beacons are used to monitor non-Salt processes. When monitored activity occurs, an event is sent that can be configured to trigger a reactor. For more on beacons, see Salt beacon reference.

Note: You can check which beacons are installed and active on a minion by running a job with beacons.list on a minion’s respective target. See Jobs for more information.

SaltStack Config provides the following Presence statuses.

Status Description
Unknown SaltStack Config has never seen a response from the minion. This is the default status for newly-connected minions. Once minions have received a command, the status updates to Present.
Present SaltStack Config has seen responses from the minion within the last raas_presence_expiration interval, set to 3600 seconds by default.
Disconnected SaltStack Config has seen a response from the minion, but not within the last raas_presence_expiration interval.

Target settings

Targeting in SaltStack Config is similar to targeting in Open Source Salt, but SaltStack Config has a simplified interface for defining targets, which also enables you to save target definitions for reuse. For more on targeting in Salt, see Salt Targeting Reference.

Each target in SaltStack Config includes a name, Salt master, and target criteria, described in detail below.

Name

Enter a target name. Target names do not have to be unique. This might result in different items displaying with the same name in the SaltStack Config user interface.

All Salt masters

By default, the target includes all Salt masters. However, you can choose to target minions that only belong to a specific Salt master. For example, if your environment has several machines responsible for running a particular application, and you have partitioned your Salt infrastructure so these machines are all connected to a single Salt master, you might create a target that includes the entire subset of minions by selecting only the Salt master.

To enable targeting by Salt master, click this radio button to deactivate this setting. A new group of settings appears.

Under the Master field, select a Salt master whose minions you want to target. All additional target criteria are applied only to the subset of minions associated with the selected Salt master.

Target criteria

Use target criteria to specify a group of minions, referring to the following field descriptions.

Targets are dynamic, and new minions are automatically added to any matching target definition. Saving your target as a list prevents new minions that match the dynamic target setting from being added to a target automatically.

Target type Description
Grain

Match a specific grain value, for example, osfullname is Debian. Once you select a grain, the value list pre-populates so you can click the field to view available options, or start typing.

For more on grains, see Salt grains reference.

Note: When creating compound targets using grains, RaaS will return no minions if the grain name has a space in the name. For this reason, any space is automatically converted to a ? instead.
Glob Wildcard match using the minion ID. For example, you might enter webserver* to select multiple minions, named webserver01, webserver02, and webserver03.
List

Specify a list of minions to include in the target. For example, dc3-north-db1,dc3-north-db2.

Note: Specifying a list is useful if you do not want to grant access to targets dynamically. This prevents new minions that match the dynamic target criteria from being added to a target automatically.
Compound

Combine multiple target interfaces, separated by conjunctions and, or, and not.

To take advantage of compound targeting in SaltStack Config, first review compound targeting in the Salt Targeting Reference.

Note: If you select Compound as a criterion, you must follow Salt’s compound targeting syntax, and include any secondary criteria in the compound target definition. SaltStack Config does not allow you to include any other types of criteria in addition to a Compound criterion.