Salt Engines

New in version 2015.8.0.

Salt Engines are long-running, external system processes that leverage Salt.

  • Engines have access to Salt configuration, execution modules, and runners (__opts__, __salt__, and __runners__).
  • Engines are executed in a separate process that is monitored by Salt. If a Salt engine stops, it is restarted automatically.
  • Engines can run on the Salt master and on Salt minions.

Salt engines enhance and replace the external processes functionality.

Configuration

Salt engines are configured under an engines top-level section in your Salt master or Salt minion configuration. Provide a list of engines and parameters under this section.

engines:
  - logstash:
      host: log.my_network.com
      port: 5959

Salt engines must be in the Salt path, or you can add the engines_dir option in your Salt master configuration with a list of directories under which Salt attempts to find Salt engines.

Writing an Engine

An example Salt engine, https://github.com/saltstack/salt/blob/develop/salt/engines/test.py, is available in the Salt source. To develop an engine, the only requirement is that your module implement the start() function.

Docs for previous releases are available on readthedocs.org.

Latest Salt release: 2015.8.1

Table Of Contents

Previous topic

Beacons

Next topic

Running Custom Master Processes