Introduction To SaltStack
Introduction To SaltStack
About Me
Linux/Web engineer
Evolved as a DevOps
Author of SaltStack For
DevOps
Founder of DevOpsLinks
My blog : eon01.com/blog
Follow me : @eon01
With the adoption of agile development methods, the process of development, test and
deployment of a software component has accelerated and therefore the methods of
management have become faster, more automated and more adapted to changes
Automation is important to the success of critical IT processes that are part of the life cycle of a
product, including provision, change management, release management, patch management,
compliance and security.
DevOps
SaltStack
SaltStack fundamentally improves the way system administrators, integrators and DevOps use
to configure and manage all aspects of a modern data center infrastructure.
It is built on a platform running relatively fast while allowing remote control of distributed
infrastructures, code and data.
The infrastructure to manage can be virtual machines, cloud (Amazon EC2 instances,
Rackspace ..etc) or physical machines as well hosted applications and platforms that rely on
configuration files.
You can use Salt installed on an operating system to manage other systems (A Linux to manage
a Solaris or a BSD to manage a Windows ... etc.).
A Brief Summary
One or more salt-master, salt-minion and salt-syndic
A key management system salt-key that allows the authentication of a salt-minion on a
salt-master
A system of states to describe the configurations
A top.sls that calls the states
A system of grain on the minion to manage the configurations data
A system of pillars to store other data on the master (such as confidential data)
A transport and data management system called ZeroMQ
An event management system called reactors returners, outputters ..etc
Installation
If your server has Internet access, this shell script will be convenient to automate the installation
of the stable version:
wget -O - http://bootstrap.saltstack.org | sudo sh
You can also install the latest version on git (development version):
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh git develop
In the jargon used by the editor, a master is salt-master and a minion is a salt-minion. A
syndic called salt-syndic is part of the package and its role consists of connecting masters.
Troubleshooting
Before launching the master and the minion(s), a list of prerequisites should be checked:
All of your salt-master and salt-minon are installed with the with satisfied dependencies
Python version is compatible with the version of Saltstack salt-master and salt-minion should
be running with the root user
Communication and execution ports are well configured and opened
The configuration of any firewall between a master and a minion should be taken into account
(Example : check your iptables).
Troubleshooting salt-master
Troubleshooting salt-minion
Troubleshooting ports
Troubleshooting using salt-call
Basic Concepts
Before using Salt some basic concepts need to be known and understood:
Basic topology
Using salt-syndic
Authentification
Communication
-
Thanks
You can buy SaltStack for DevOps on :
https://leanpub.com/saltstackfordevops
Aymen El Amri
www.eon01.com
@eon01