Skip to main content
Account

Salt

Salt automates infrastructure configuration and remote execution at scale. Learn how masters, minions, States, Pillar, Grains and the Reactor work together.

Status
Stable
Category
Provisioning
Subcategory
Automation & Configuration
License
Apache-2.0
Technology matrix Graveyard Tried, got burned, walked away See the matrix

Salt (formerly SaltStack) is a Python-based configuration management and remote execution system created by Thomas S. Hatch in 2011. It targets the same space as Ansible, Puppet, and Chef but differs in being designed around a persistent pub/sub bus for low-latency command execution across tens of thousands of nodes.

A typical Salt deployment has a central salt-master and salt-minion agents on each managed host connected over ZeroMQ (or the newer RAET/TCP transports). Commands issued on the master are published on a bus and executed in parallel by every matching minion, with results streamed back, which makes ad-hoc operations like “run this command on every web server tagged production” near-instantaneous. Desired state is expressed in States, written as YAML files rendered through the Jinja templating engine and organized into SLS (SaLt State) formulas. A parallel data layer called Pillar provides per-minion secrets and variables, while Grains expose static facts gathered from each host.

Beyond agent-based operation, Salt also supports agentless SSH via salt-ssh, cloud provisioning via salt-cloud, and a Reactor system that turns events on the bus into automated responses, which is the basis for its event-driven infrastructure story. Salt is Apache-2.0 licensed and maintained by VMware (now Broadcom) after the 2020 SaltStack acquisition.

Salt recordings

1 recording, newest first

Automation & Configuration

Email signup loads here. You can also manage email preferences in account settings.

Build Salt? I'll show you where engineers get stuck with it → Back free content for the community →