Salt should work properly with all mainstream derivatives of Red Hat Enterprise Linux, including CentOS, Scientific Linux, Oracle Linux, and Amazon Linux. Report any bugs or issues on the issue tracker.
Packages for Redhat, CentOS, and Amazon Linux are available in the SaltStack Repository.
Note
As of 2015.8.0, EPEL repository is no longer required for installing on RHEL systems. SaltStack repository provides all needed dependencies.
Warning
If installing on Red Hat Enterprise Linux 7 with disabled (not subscribed on) 'RHEL Server Releases' or 'RHEL Server Optional Channel' repositories, append CentOS 7 GPG key URL to SaltStack yum repository configuration to install required base packages:
[saltstack-repo]
name=SaltStack repo for Red Hat Enterprise Linux $releasever
baseurl=https://repo.saltstack.com/yum/redhat/$releasever/$basearch/latest
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/yum/redhat/$releasever/$basearch/latest/SALTSTACK-GPG-KEY.pub
https://repo.saltstack.com/yum/redhat/$releasever/$basearch/latest/base/RPM-GPG-KEY-CentOS-7
Note
systemd
and systemd-python
are required by Salt, but are not
installed by the Red Hat 7 @base
installation or by the Salt
installation. These dependencies might need to be installed before Salt.
Beginning with version 0.9.4, Salt has been available in EPEL.
Note
Packages in this repository are built by community, and it can take a little while until the latest stable SaltStack release become available.
Warning
Salt 2015.8 is currently not available in EPEL due to unsatisfied
dependencies: python-crypto
2.6.1 or higher, and python-tornado
version 4.2.1 or higher. These packages are not currently available in EPEL
for Red Hat Enterprise Linux 6 and 7.
If the EPEL repository is not installed on your system, you can download the RPM for RHEL/CentOS 6 or for RHEL/CentOS 7 and install it using the following command:
rpm -Uvh epel-release-X-Y.rpm
Replace epel-release-X-Y.rpm
with the appropriate filename.
Salt is packaged separately for the minion and the master. It is necessary to install only the appropriate package for the role the machine will play. Typically, there will be one master and multiple minions.
yum install salt-master
yum install salt-minion
yum install salt-ssh
yum install salt-syndic
yum install salt-cloud
epel-testing
¶When a new Salt release is packaged, it is first admitted into the
epel-testing
repository, before being moved to the stable EPEL repository.
To install from epel-testing
, use the enablerepo
argument for yum
:
yum --enablerepo=epel-testing install salt-minion
Since Salt is on PyPI, it can be installed using pip, though most users prefer to install using RPM packages (which can be installed from EPEL).
Installing from pip has a few additional requirements:
Install the group 'Development Tools', yum groupinstall 'Development Tools'
Install the 'zeromq-devel' package if it fails on linking against that afterwards as well.
A pip install does not make the init scripts or the /etc/salt directory, and you will need to provide your own systemd service unit.
Installation from pip:
pip install salt
Warning
If installing from pip (or from source using setup.py install
), be
advised that the yum-utils
package is needed for Salt to manage
packages. Also, if the Python dependencies are not already installed, then
you will need additional libraries/tools installed to build some of them.
More information on this can be found here.
We recommend using ZeroMQ 4 where available. SaltStack provides ZeroMQ 4.0.5
and pyzmq
14.5.0 in the SaltStack Repository.
If this repository is added before Salt is installed, then installing either
salt-master
or salt-minion
will automatically pull in ZeroMQ 4.0.5, and
additional steps to upgrade ZeroMQ and pyzmq are unnecessary.
Salt's interface to yum
makes heavy use of the
repoquery utility, from the yum-utils package. This package will be
installed as a dependency if salt is installed via EPEL. However, if salt has
been installed using pip, or a host is being managed using salt-ssh, then as of
version 2014.7.0 yum-utils will be installed automatically to satisfy this
dependency.
To have the Master start automatically at boot time:
RHEL/CentOS 5 and 6
chkconfig salt-master on
RHEL/CentOS 7
systemctl enable salt-master.service
To start the Master:
RHEL/CentOS 5 and 6
service salt-master start
RHEL/CentOS 7
systemctl start salt-master.service
To have the Minion start automatically at boot time:
RHEL/CentOS 5 and 6
chkconfig salt-minion on
RHEL/CentOS 7
systemctl enable salt-minion.service
To start the Minion:
RHEL/CentOS 5 and 6
service salt-minion start
RHEL/CentOS 7
systemctl start salt-minion.service
Now go to the Configuring Salt page.