2012-06-10 16:22:04 +00:00
|
|
|
:orphan:
|
|
|
|
|
2012-02-06 22:45:24 +00:00
|
|
|
.. _contents:
|
|
|
|
|
2014-02-10 22:23:47 +00:00
|
|
|
SaltStack
|
|
|
|
=========
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Salt is a new approach to infrastructure management. Easy enough to get
|
|
|
|
running in minutes, scalable enough to manage tens of thousands of servers,
|
|
|
|
and fast enough to communicate with them in *seconds*.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Salt delivers a dynamic communication bus for infrastructures that can be used
|
|
|
|
for orchestration, remote execution, configuration management and much more.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-11-12 01:09:57 +00:00
|
|
|
.. seealso:: Other Documentation
|
2013-06-19 15:45:37 +00:00
|
|
|
|
2013-11-12 01:14:05 +00:00
|
|
|
Download an offline copy of the latest Salt documentation:
|
2013-06-19 15:45:37 +00:00
|
|
|
|
|
|
|
* `PDF`_
|
|
|
|
* `ePub`_
|
2013-11-05 06:49:35 +00:00
|
|
|
* `Dash Docset`_
|
2013-06-19 15:45:37 +00:00
|
|
|
|
2013-11-12 01:14:05 +00:00
|
|
|
See documentation for past Salt releases at http://salt.readthedocs.org.
|
|
|
|
Download offline copies on the `ReadTheDocs download page`_.
|
2013-11-12 01:09:57 +00:00
|
|
|
|
|
|
|
Watch announcements, demonstrations, and video tutorials on the `SaltStack
|
|
|
|
YouTube channel`_.
|
|
|
|
|
2013-06-19 15:45:37 +00:00
|
|
|
.. _`PDF`: https://media.readthedocs.org/pdf/salt/latest/salt.pdf
|
|
|
|
.. _`ePub`: https://media.readthedocs.org/epub/salt/latest/salt.epub
|
2013-11-05 06:49:35 +00:00
|
|
|
.. _`Dash Docset`: dash-feed://https%3A//media.readthedocs.org/dash/salt/latest/salt.xml
|
2013-11-12 01:14:05 +00:00
|
|
|
.. _`ReadTheDocs download page`: https://readthedocs.org/projects/salt/downloads/
|
2014-02-20 23:16:59 +00:00
|
|
|
.. _`SaltStack YouTube channel`: http://www.youtube.com/saltstack
|
2013-06-19 15:45:37 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Download
|
|
|
|
========
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-03-18 19:59:27 +00:00
|
|
|
Salt source releases are available for download via PyPI:
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
https://pypi.python.org/pypi/salt
|
2012-06-30 21:36:43 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
The installation documents outline where to obtain packages and installation
|
|
|
|
specifics for platforms:
|
2012-06-30 21:36:43 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Installation </topics/installation/index>`
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
The Salt Bootstrap project is a single shell script which aims to automate
|
|
|
|
the install correctly on platforms:
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
https://github.com/saltstack/salt-bootstrap
|
2012-12-13 23:18:06 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Getting Started
|
|
|
|
===============
|
2012-12-13 23:18:06 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
This walkthrough is made to help individuals get started quickly and gain a
|
|
|
|
foundational knowledge of Salt:
|
2012-12-13 23:18:06 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Official Salt Walkthrough</topics/tutorials/walkthrough>`
|
2012-12-13 23:18:06 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Additional tutorials are available when getting started with Salt
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
States - Configuration Management with Salt:
|
|
|
|
- :doc:`Getting Started with States<topics/tutorials/starting_states>`
|
|
|
|
- :doc:`Basic config management <topics/tutorials/states_pt1>`
|
|
|
|
- :doc:`Less basic config management <topics/tutorials/states_pt2>`
|
|
|
|
- :doc:`Advanced techniques <topics/tutorials/states_pt3>`
|
2013-07-26 17:13:51 +00:00
|
|
|
- :doc:`Salt Fileserver Path Inheritance <topics/tutorials/states_pt4>`
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Masterless Quickstart:
|
|
|
|
:doc:`Salt Quickstart </topics/tutorials/quickstart>`
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
A list of all tutorials can be found here:
|
|
|
|
:doc:`All Salt tutorials <topics/tutorials/index>`
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Salt in depth
|
|
|
|
=============
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Setting up and using Salt is a simple task but its capabilities run much, much
|
|
|
|
deeper. These documents will lead to a greater understating of how Salt will
|
|
|
|
empower infrastructure management.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Remote execution
|
|
|
|
----------------
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Remote execution is the core function of Salt. Running pre-defined or
|
|
|
|
arbitrary commands on remote hosts.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
**Modules**
|
|
|
|
Salt modules are the core of remote execution. They provide
|
|
|
|
functionality such as installing packages, restarting a service,
|
|
|
|
running a remote command, transferring files, and infinitely more.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Full list of modules </ref/modules/all/index>`
|
|
|
|
The giant list of core modules that ship with Salt
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Writing modules <ref/modules/index>`
|
|
|
|
A guide on how to write Salt modules.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
**Returners**
|
|
|
|
Salt returners allow saving minion responses in various datastores or
|
|
|
|
to various locations in addition to display at the CLI.
|
2012-02-18 18:35:15 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Full list of returners </ref/returners/all/index>`
|
|
|
|
Store minion responses in Redis, Mongo, Cassandra, SQL or more.
|
2012-02-18 18:35:15 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Writing returners <ref/returners/index>`
|
|
|
|
Extending Salt to communicate with more interfaces is easy, new
|
|
|
|
databases can be supported or custom interfaces can be easily
|
|
|
|
communicated with.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-09-06 00:56:11 +00:00
|
|
|
Targeting
|
|
|
|
---------
|
2012-02-20 06:28:45 +00:00
|
|
|
|
2013-09-06 00:56:11 +00:00
|
|
|
:doc:`Targeting </topics/targeting/index>` is specifying which minions
|
|
|
|
should execute commands or manage server configuration.
|
2012-02-20 06:28:45 +00:00
|
|
|
|
|
|
|
:doc:`Globbing and regex </topics/targeting/globbing>`
|
2012-12-19 22:52:12 +00:00
|
|
|
Match minions using globbing and regular expressions.
|
2012-02-20 06:28:45 +00:00
|
|
|
|
|
|
|
:doc:`Grains </topics/targeting/grains>`
|
|
|
|
Match minions using bits of static information about the minion such as
|
|
|
|
OS, software versions, virtualization, CPU, memory, and much more.
|
|
|
|
|
|
|
|
:doc:`Node groups </topics/targeting/nodegroups>`
|
|
|
|
Statically define groups of minions.
|
|
|
|
|
|
|
|
:doc:`Compound matchers </topics/targeting/compound>`
|
|
|
|
Combine the above matchers as a single target.
|
|
|
|
|
2012-06-10 16:19:22 +00:00
|
|
|
:doc:`Batching execution </topics/targeting/batch>`
|
|
|
|
Loop through all matching minions so that only a subset are executing a
|
|
|
|
command at one time.
|
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
Configuration management
|
|
|
|
------------------------
|
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
Building on the remote execution core is a robust and flexible configuration
|
|
|
|
management framework. Execution happens on the minions allowing effortless,
|
|
|
|
simultaneous configuration of tens of thousands of hosts.
|
2012-02-18 18:33:56 +00:00
|
|
|
|
|
|
|
**States**
|
|
|
|
Express the state of a host using small, easy to read, easy to
|
2013-02-26 07:36:40 +00:00
|
|
|
understand configuration files. *No programming required*.
|
2012-02-18 18:33:56 +00:00
|
|
|
|
|
|
|
:doc:`Full list of states <ref/states/all/index>`
|
|
|
|
Install packages, create users, transfer files, start services, and
|
2012-06-16 00:01:54 +00:00
|
|
|
much more.
|
2012-02-18 18:33:56 +00:00
|
|
|
|
2013-06-18 07:50:54 +00:00
|
|
|
:doc:`Pillar System <topics/pillar/index>`
|
|
|
|
Salt's Pillar system
|
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`States Overview<ref/states/index>`
|
|
|
|
An overview of States and some of the core components.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Highstate data structure <ref/states/highstate>`
|
2012-06-16 00:01:54 +00:00
|
|
|
A dry vocabulary and technical representation of the configuration
|
2012-02-18 18:33:56 +00:00
|
|
|
format that states represent.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-13 18:34:06 +00:00
|
|
|
:doc:`Writing states <ref/states/writing>`
|
2013-02-26 07:36:40 +00:00
|
|
|
A guide on how to write Salt state modules. Extending Salt to directly
|
|
|
|
manage in more software is easy.
|
2013-02-13 18:34:06 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
**Renderers**
|
|
|
|
Write state configuration files in the language, templating engine, or
|
2013-02-26 07:36:40 +00:00
|
|
|
file type of choice. Salt's configuration management system is, under the
|
|
|
|
hood, language agnostic.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Full list of renderers <ref/renderers/all/index>`
|
2013-02-26 07:36:40 +00:00
|
|
|
YAML is not the only choice, many systems are available, from
|
|
|
|
alternative templating engines to the PyDSL language for rendering
|
|
|
|
sls formulas.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Renderers <ref/renderers/index>`
|
|
|
|
Salt states are only concerned with the ultimate highstate data
|
2013-02-26 07:36:40 +00:00
|
|
|
structure. How that data structure is created is not important.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
Miscellaneous topics
|
|
|
|
--------------------
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-05-30 14:40:19 +00:00
|
|
|
Salt is many splendid things.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-11-08 21:35:26 +00:00
|
|
|
:doc:`Salt Cloud <topics/cloud/index>`
|
|
|
|
Salt Cloud is a public cloud provisioning tool that integrates Salt with
|
|
|
|
many cloud providers.
|
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`File Server <ref/file_server/index>`
|
|
|
|
Salt can easily and quickly transfer files (in fact, that's how Salt
|
2013-02-26 07:36:40 +00:00
|
|
|
States work). Even under heavy load, files are chunked and served.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2014-02-26 20:28:13 +00:00
|
|
|
:doc:`Syndic <topics/topology/syndic>`
|
2013-02-26 07:36:40 +00:00
|
|
|
A seamless master of masters. Scale Salt to tens of thousands of hosts or
|
2012-02-18 18:33:56 +00:00
|
|
|
across many different networks.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Peer Communication <ref/peer>`
|
2012-02-18 18:33:56 +00:00
|
|
|
Allow minions to communicate amongst themselves. For example, configure
|
|
|
|
one minion by querying live data from all the others. With great power
|
|
|
|
comes great responsibility.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Reactor System <topics/reactor/index>`
|
|
|
|
The reactor system allows for Salt to create a self aware environment
|
|
|
|
by hooking infrastructure events into actions.
|
2012-07-19 18:21:07 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Firewall Settings and Salt <topics/tutorials/firewall>`
|
2012-07-19 18:21:07 +00:00
|
|
|
A tutorial covering how to properly firewall a Salt Master server.
|
2012-06-10 16:19:22 +00:00
|
|
|
|
2013-02-26 07:36:40 +00:00
|
|
|
:doc:`Scheduling Executions (like states)<topics/jobs/schedule>`
|
2013-02-27 09:16:53 +00:00
|
|
|
The schedule system in Salt allows for executions to be run of all sorts
|
2013-02-26 07:36:40 +00:00
|
|
|
from the master or minion at automatic intervals.
|
2012-11-09 18:35:19 +00:00
|
|
|
|
2014-02-26 20:28:13 +00:00
|
|
|
:doc:`Network topology <topics/topology/index>`
|
2012-02-18 18:33:56 +00:00
|
|
|
At it's core, Salt is a highly scalable communication layer built on
|
|
|
|
top of ZeroMQ that enables remote execution and configuration
|
|
|
|
management. The possibilities are endless and Salt's future looks
|
|
|
|
bright.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2014-02-26 20:28:13 +00:00
|
|
|
:doc:`Testing Salt <topics/development/tests/index>`
|
2012-10-04 21:54:03 +00:00
|
|
|
A howto for writing unit tests and integration tests.
|
|
|
|
|
2014-02-26 20:28:13 +00:00
|
|
|
:doc:`Salt Proxy Minions <topics/topology/proxyminion/index>`
|
2014-01-14 21:29:11 +00:00
|
|
|
Controlling devices and machines unable to run a salt-minion.
|
|
|
|
|
2013-08-15 21:21:18 +00:00
|
|
|
:ref:`Python API interface <python-api>`
|
2013-02-26 07:36:40 +00:00
|
|
|
Use Salt programmatically from scripts and programs easily and
|
2012-02-18 18:33:56 +00:00
|
|
|
simply via ``import salt``.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-10-15 15:18:40 +00:00
|
|
|
:doc:`Automatic Updates and Frozen Binary Deployments <topics/tutorials/esky>`
|
2012-09-12 05:23:31 +00:00
|
|
|
Use a frozen install to make deployments easier (Even on Windows!). Or
|
2013-02-26 07:36:40 +00:00
|
|
|
take advantage of automatic updates to keep minions running the latest
|
|
|
|
builds.
|
2012-09-12 05:23:31 +00:00
|
|
|
|
2014-02-26 20:28:13 +00:00
|
|
|
:doc:`Windows Software Manager / Package Repository <topics/windows/windows-package-manager>`
|
2013-09-17 13:28:25 +00:00
|
|
|
Looking for an easy way to manage software on Windows machines?
|
2013-02-26 07:36:40 +00:00
|
|
|
Search no more! Salt has an integrated software package manager for
|
|
|
|
Windows machines! Install software hosted on the master, somewhere on the
|
2013-03-18 19:59:27 +00:00
|
|
|
network, or any HTTP, HTTPS, or ftp server.
|
2012-12-30 21:42:03 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
Reference
|
|
|
|
---------
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Command-line interface <ref/cli/index>`
|
|
|
|
Read the Salt manpages.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Full list of master settings <ref/configuration/master>`
|
|
|
|
Read through the heavily-commented master configuration file.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Full list of minion settings <ref/configuration/minion>`
|
|
|
|
Read through the heavily-commented minion configuration file.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Full table of contents </contents>`
|
|
|
|
Dense but complete.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-09-05 14:10:47 +00:00
|
|
|
FAQ
|
|
|
|
===
|
|
|
|
|
2013-09-05 18:45:15 +00:00
|
|
|
See :doc:`here <faq>` for a list of Frequently Asked Questions.
|
2013-09-05 14:10:47 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
More information about the project
|
2013-09-05 14:10:47 +00:00
|
|
|
==================================
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2012-02-18 18:33:56 +00:00
|
|
|
:doc:`Release notes </topics/releases/index>`
|
2013-11-07 17:44:01 +00:00
|
|
|
Living history of SaltStack.
|
2012-02-06 22:45:24 +00:00
|
|
|
|
2013-01-10 22:37:27 +00:00
|
|
|
:doc:`Salt Development </topics/development/index>`
|
|
|
|
Information for Hacking on Salt
|
|
|
|
|
2014-02-26 20:28:13 +00:00
|
|
|
:doc:`Translate Documentation </topics/development/translating>`
|
2013-10-12 22:33:05 +00:00
|
|
|
How to help out translating Salt to your language.
|
|
|
|
|
2012-02-06 22:45:24 +00:00
|
|
|
.. _`salt-contrib`: https://github.com/saltstack/salt-contrib
|
|
|
|
.. _`salt-states`: https://github.com/saltstack/salt-states
|