This is an old revision of the document!
infrastructure management, configuration management, orchestration & remote execution
Here are some tricks, because the documentation is a bit …dense, structured strange and incomplete..
Use the latest versions from salt repo, because various things like finger-key-exchange have been modified in 2016 and you get authentication errors with older versions debian:
wget -4 -O - https://repo.saltstack.com/apt/debian/8/amd64/latest/SALTSTACK-GPG-KEY.pub | apt-key add -
add to sources.list:
deb http://repo.saltstack.com/apt/debian/8/amd64/latest jessie main
install
apt-get install salt-minion
if you get python-systemd not installable, maybe you have pinned all *systemd* packages in /etc/apt/preferences.d/systemd to avoid systemd installation?
set ID in /etc/salt/minion_id
xxxx.yyyy
config in /etc/salt/minion :
master: 138.201.57.19 master_finger: 'xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:.....' mine_functions: test.ping: [] grains.items: [] network.ip_addrs: interface: eth0
You can use a local repository to store states, but it must be a *bare* repository.
Salt refreshes the cache by default every 60 seconds!
# create bare repository: mkdir -p /srv/repos/salt/states git init --bare
# clone it somewhere and add your states: git clone file:///srv/repos/salt/states # ... git add . git commit git push
Salt master configuration:
fileserver_backend: - git
gitfs_remotes: - file:///root/salt/states