Download and install the latest release of SaltStack.
This page contains instructions to download and install the latest release of SaltStack.
Bootstrap works across many platforms and is the easiest way to get started. If you cannot use Bootstrap or if you prefer packages, click the tab for your platform.
Latest release: 3001 (June 17, 2020)
ARCHIVE.REPO.SALTSTACK.COM
SEP 22 was accepted which means that all unsupported and CVE affected releases have been moved to https://archive.repo.saltstack.com. If you get 404 errors from your package manager, the release you were using probably moved there. Please consider upgrading to a supported version of Salt. Click here for more information.
UPGRADE FROM PYCRYPTO
For Salt releases before 3001, the PyCrypto library provided by your system packages is likely unmaintained and insecure. SaltStack strongly recommends upgrading to a more maintained library. See Hardening Salt for more info. Starting with Salt version 3001, either Pycryptodome, Pycryptodomex, or M2Crypto is installed as a dependency of Salt.
PYTHON 2.7 DEPRECATED
In light of Python 2.7 reaching its End of Life (EOL) on Jan 1st 2020, Python 2 has been deprecated and is not longer supported starting with the 3001 release.
Salt Bootstrap is a shell script that detects the target platform and selects the best installation method. (Supported Platforms)
Run these commands on the system that you want to use as the central management point.
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P -M -x python3
Your Salt master can manage itself, so a Salt minion is installed along with the Salt master. If you do not want to install the minion, also pass the -N
option.
Run these commands on each system that you want to manage using Salt.
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P -x python3
Post-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
wget -O - https://repo.saltstack.com/py3/debian/10/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/debian/9/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/debian/10/amd64/latest buster main
deb http://repo.saltstack.com/py3/debian/9/amd64/latest stretch main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
wget -O - https://repo.saltstack.com/py3/debian/10/amd64/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/debian/9/amd64/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/debian/10/amd64/3001 buster main
deb http://repo.saltstack.com/py3/debian/9/amd64/3001 stretch main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
wget -O - https://repo.saltstack.com/py3/debian/10/amd64/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/debian/9/amd64/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/debian/10/amd64/archive/3001 buster main
deb http://repo.saltstack.com/py3/debian/9/amd64/archive/3001 stretch main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-latest.el8.noarch.rpm
sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-latest.el7.noarch.rpm
Run sudo yum clean expire-cache
sudo yum install salt-master
sudo yum install salt-minion
sudo yum install salt-ssh
sudo yum install salt-syndic
sudo yum install salt-cloud
sudo yum install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-3001.el8.noarch.rpm
sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-3001.el7.noarch.rpm
Run sudo yum clean expire-cache
sudo yum install salt-master
sudo yum install salt-minion
sudo yum install salt-ssh
sudo yum install salt-syndic
sudo yum install salt-cloud
sudo yum install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
Run the following commands to install the SaltStack repository and key:
sudo rpm --import https://repo.saltstack.com/py3/redhat/8/x86_64/archive/3001/SALTSTACK-GPG-KEY.pub
sudo rpm --import https://repo.saltstack.com/py3/redhat/7/x86_64/archive/3001/SALTSTACK-GPG-KEY.pub
Save the following file to /etc/yum.repos.d/saltstack.repo
:
[saltstack-repo]
name=SaltStack repo for RHEL/CentOS 8 PY3
baseurl=https://repo.saltstack.com/py3/redhat/8/$basearch/archive/3001
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/py3/redhat/8/$basearch/archive/3001/SALTSTACK-GPG-KEY.pub
[saltstack-repo]
name=SaltStack repo for RHEL/CentOS 7 PY3
baseurl=https://repo.saltstack.com/py3/redhat/7/$basearch/archive/3001
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/py3/redhat/7/$basearch/archive/3001/SALTSTACK-GPG-KEY.pub
Run sudo yum clean expire-cache
sudo yum install salt-master
sudo yum install salt-minion
sudo yum install salt-ssh
sudo yum install salt-syndic
sudo yum install salt-cloud
sudo yum install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
wget -O - https://repo.saltstack.com/py3/ubuntu/20.04/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/ubuntu/18.04/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/ubuntu/16.04/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/ubuntu/20.04/amd64/latest focal main
deb http://repo.saltstack.com/py3/ubuntu/18.04/amd64/latest bionic main
deb http://repo.saltstack.com/py3/ubuntu/16.04/amd64/latest xenial main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
wget -O - https://repo.saltstack.com/py3/ubuntu/20.04/amd64/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/ubuntu/18.04/amd64/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/ubuntu/16.04/amd64/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/ubuntu/20.04/amd64/3001 focal main
deb http://repo.saltstack.com/py3/ubuntu/18.04/amd64/3001 bionic main
deb http://repo.saltstack.com/py3/ubuntu/16.04/amd64/3001 xenial main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
wget -O - https://repo.saltstack.com/py3/ubuntu/20.04/amd64/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/ubuntu/18.04/amd64/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/ubuntu/16.04/amd64/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/ubuntu/20.04/amd64/archive/3001 focal main
deb http://repo.saltstack.com/py3/ubuntu/18.04/amd64/archive/3001 bionic main
deb http://repo.saltstack.com/py3/ubuntu/16.04/amd64/archive/3001 xenial main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest version currently available from SUSE. (These packages are only a mirror from SUSE)
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_11_SP4/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP1/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP2/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP3/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP4/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_15/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_15.0/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_15.1/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_42.2/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_42.3/systemsmanagement:saltstack:products.repo
sudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Tumbleweed/systemsmanagement:saltstack:products.repo
Refresh the package list:
sudo zypper refresh
sudo zypper install salt-master
sudo zypper install salt-minion
sudo zypper install salt-ssh
sudo zypper install salt-syndic
sudo zypper install salt-cloud
sudo zypper install salt-api
sudo zypper install salt-proxy
sudo systemctl restart salt-minion
or
sudo service salt-minion restart
Post-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
Currently Salt 3000.3 is available for Fedora stable, however Salt 3001 will soon be available from the testing repo and is expected to migrate to stable soon.
sudo dnf install salt-master
sudo dnf install salt-minion
sudo dnf install salt-ssh
sudo dnf install salt-syndic
sudo dnf install salt-cloud
sudo dnf install salt-api
Post-installation configuration
AMD64: Salt-Minion-3001-Py3-AMD64-Setup.exe | MD5 | SHA256
x86: Salt-Minion-3001-Py3-x86-Setup.exe | MD5 | SHA256
AMD64: Salt-Minion-3001-Py3-AMD64.msi | MD5 | SHA256
x86: Salt-Minion-3001-Py3-x86.msi | MD5 | SHA256
The installer can be run silently by providing the /S
option at the command line. The options /master
and /minion-name
allow for configuring the master hostname and minion name, respectively. Here’s an example of running a silent installation from the command line:
Salt-Minion-3001-Py3-AMD64-Setup.exe /S /master=yoursaltmaster /minion-name=yourminionname
The installer can be run silently by providing the /quiet
and /norestart
option at the command line. The options MASTER
and MINION_ID
allow for configuring the master hostname and minion name, respectively. Here’s an example of running a silent installation from the command line:
msiexec /i Salt-Minion-3001-Py3-AMD64.msi /quiet /norestart MASTER=yoursaltmaster MINION_ID=yourminionname
Post-installation configuration
OS X Gatekeeper settings might prevent installation of the Salt package. If a warning appears during installation, open System Preferences > Security & Privacy > click Open Anyway
After the installation completes, run the following to configure the Salt minion ID, the Salt master location, and to start the required services.
sudo salt-config -i yourminionname -m yoursaltmaster
On OS X, the Salt minion configuration file is in the standard /etc/salt/minion
location. To stop the Salt minion, run the following:
sudo launchctl stop com.saltstack.salt.minion
To start the Salt minion, run the following:
sudo launchctl start com.saltstack.salt.minion
Post-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
sudo yum install https://repo.saltstack.com/py3/amazon/salt-py3-amzn2-repo-latest.amzn2.noarch.rpm
Run sudo yum clean expire-cache
sudo yum install salt-master
sudo yum install salt-minion
sudo yum install salt-ssh
sudo yum install salt-syndic
sudo yum install salt-cloud
sudo yum install salt-api
sudo service salt-minion restart
Post-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
sudo yum install https://repo.saltstack.com/py3/amazon/salt-py3-amzn2-repo-3001.amzn2.noarch.rpm
Run sudo yum clean expire-cache
sudo yum install salt-master
sudo yum install salt-minion
sudo yum install salt-ssh
sudo yum install salt-syndic
sudo yum install salt-cloud
sudo yum install salt-api
sudo service salt-minion restart
Post-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
Run the following commands to install the SaltStack repository and key:
sudo rpm --import https://repo.saltstack.com/py3/amazon/2/x86_64/archive/3001/SALTSTACK-GPG-KEY.pub
Save the following file to /etc/yum.repos.d/saltstack-amzn.repo
:
[saltstack-amzn-repo]
name=SaltStack repo for Amazon Linux 2
baseurl=https://repo.saltstack.com/py3/amazon/2/$basearch/archive/3001
failovermethod=priority
priority=10
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/py3/amazon/2/$basearch/archive/3001/SALTSTACK-GPG-KEY.pub
Run sudo yum clean expire-cache
sudo yum install salt-master
sudo yum install salt-minion
sudo yum install salt-ssh
sudo yum install salt-syndic
sudo yum install salt-cloud
sudo yum install salt-api
sudo service salt-minion restart
Post-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
wget -O - https://repo.saltstack.com/py3/debian/10/armhf/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/debian/9/armhf/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/debian/10/armhf/latest buster main
deb http://repo.saltstack.com/py3/debian/9/armhf/latest stretch main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
(Upgrade only) Restart all upgraded services, for example:
sudo systemctl restart salt-minion
Post-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
wget -O - https://repo.saltstack.com/py3/debian/10/armhf/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/debian/9/armhf/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/debian/10/armhf/3001 buster main
deb http://repo.saltstack.com/py3/debian/9/armhf/3001 stretch main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
(Upgrade only) Restart all upgraded services, for example:
sudo systemctl restart salt-minion
Post-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
wget -O - https://repo.saltstack.com/py3/debian/10/armhf/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
wget -O - https://repo.saltstack.com/py3/debian/9/armhf/archive/3001/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
/etc/apt/sources.list.d/saltstack.list
:
deb http://repo.saltstack.com/py3/debian/10/armhf/archive/3001 buster main
deb http://repo.saltstack.com/py3/debian/9/armhf/archive/3001 stretch main
Run sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion
sudo apt-get install salt-ssh
sudo apt-get install salt-syndic
sudo apt-get install salt-cloud
sudo apt-get install salt-api
(Upgrade only) Restart all upgraded services, for example:
sudo systemctl restart salt-minion
Post-installation configuration
The SaltStack package repo supports mirroring using an s3
api compatible sync tool such as the aws-cli
, or rclone
. Note that we use a custom endpoint so we can switch buckets easily. Please sync no more than once per day.
rclone
example:
RCLONE_CONFIG_S3_TYPE=s3 RCLONE_CONFIG_S3_PROVIDER=Other RCLONE_CONFIG_S3_ENV_AUTH=false RCLONE_CONFIG_S3_ENDPOINT=https://s3.repo.saltstack.com rclone sync --fast-list --use-server-modtime -v s3:s3/ ./fullrepo/
Please make sure to include the --use-server-modtime
flags as not doing so will drastically increase our costs.
If you can’t use the --use-server-modtime
flag because your version of rclone
is too old, you can use the -c
flag:
RCLONE_CONFIG_S3_TYPE=s3 RCLONE_CONFIG_S3_PROVIDER=Other RCLONE_CONFIG_S3_ENV_AUTH=false RCLONE_CONFIG_S3_ENDPOINT=https://s3.repo.saltstack.com rclone sync --fast-list -c -v s3:s3/ ./fullrepo/
aws-cli
example:
aws --no-sign-request --endpoint-url https://s3.repo.saltstack.com s3 sync --delete --exact-timestamps s3://s3/ ./fullrepo/
For syncing https://archive.repo.saltstack.com, the endpoint url is https://s3.archive.repo.saltstack.com. Everything else is the same.
The SaltStack package repo supports mirroring using rsync
.
Rsync is being deprecated, please considier moving to an s3 sync method as it supports encryption. Support for rsync will be removed no earlier than June 30th 2020.
rsync rsync://rsync.repo.saltstack.com
For example:
rsync -vaH --numeric-ids --delete --delete-after --delay-updates rsync://rsync.repo.saltstack.com/saltstack_pkgrepo_full ./fullrepo
For installation on other platforms and alternative installation methods, see the SaltStack Installation Instructions.