123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- =========================
- Salt 0.11.0 Release Notes
- =========================
- :release: 2012-12-14
- Salt 0.11.0 is here, with some highly sought after and exciting features.
- These features include the new overstate system, the reactor system, a new
- state run scope component called __context__, the beginning of the search
- system (still needs a great deal of work), multiple package states, the MySQL
- returner and a better system to arbitrarily reference outputters.
- It is also noteworthy that we are changing how we mark release numbers. For the
- life of the project we have been pushing every release with features and fixes
- as point releases. We will now be releasing point releases for only bug fixes
- on a more regular basis and major feature releases on a slightly less regular
- basis. This means that the next release will be a bugfix only release with a
- version number of 0.11.1. The next feature release will be named 0.12.0 and
- will mark the end of life for the 0.11 series.
- Major Features
- ==============
- OverState
- ---------
- The overstate system is a simple way to manage rolling state executions across
- many minions. The overstate allows for a state to depend on the successful
- completion of another state.
- Reactor System
- --------------
- The new reactor system allows for a reactive logic engine to be created which
- can respond to events within a salted environment. The reactor system uses sls
- files to match events fired on the master with actions, enabling Salt
- to react to problems in an infrastructure.
- Your load-balanced group of webservers is under extra load? Spin up a new VM
- and add it to the group. Your fileserver is filling up? Send a notification to
- your sysadmin on call. The possibilities are endless!
- Module Context
- --------------
- A new component has been added to the module loader system. The module context
- is a data structure that can hold objects for a given scope within the module.
- This allows for components that are initialized to be stored in a persistent
- context which can greatly speed up ongoing connections. Right now the best
- example can be found in the `cp` execution module.
- Multiple Package Management
- ---------------------------
- A long desired feature has been added to package management. By definition Salt
- States have always installed packages one at a time. On most platforms this is
- not the fastest way to install packages. Erik Johnson, aka terminalmage, has
- modified the package modules for many providers and added new capabilities to
- install groups of packages. These package groups can be defined as a list of
- packages available in repository servers:
- .. code-block:: yaml
- python_pkgs:
- pkg.installed:
- - pkgs:
- - python-mako
- - whoosh
- - python-git
- or specify based on the location of specific packages:
- .. code-block:: yaml
- python_pkgs:
- pkg.installed:
- - sources:
- - python-mako: http://some-rpms.org/python-mako.rpm
- - whoosh: salt://whoosh/whoosh.rpm
- - python-git: ftp://companyserver.net/python-git.rpm
- Search System
- -------------
- The bones to the search system have been added. This is a very basic interface
- that allows for search backends to be added as search modules. The first
- supported search module is the whoosh search backend. Right now only the basic
- paths for the search system are in place, making this very experimental.
- Further development will involve improving the search routines and index
- routines for whoosh and other search backends.
- The search system has been made to allow for searching through all of the state
- and pillar files, configuration files and all return data from minion
- executions.
- Notable Changes
- ===============
- All previous versions of Salt have shared many directories between the master
- and minion. The default locations for keys, cached data and sockets has been
- shared by master and minion. This has created serious problems with running a
- master and a minion on the same systems. 0.11.0 changes the defaults to be
- separate directories. Salt will also attempt to migrate all of the old key data
- into the correct new directories, but if it is not successful it may need to be
- done manually. If your keys exhibit issues after updating make sure that they
- have been moved from ``/etc/salt/pki`` to ``/etc/salt/pki/{master,minion}``.
- The old setup will look like this:
- .. code-block:: raw
- /etc/salt/pki
- |-- master.pem
- |-- master.pub
- |-- minions
- | `-- ragnarok.saltstack.net
- |-- minions_pre
- |-- minion.pem
- |-- minion.pub
- |-- minion_master.pub
- |-- minions_pre
- `-- minions_rejected
- With the accepted minion keys in ``/etc/salt/pki/minions``, the new setup
- places the accepted minion keys in ``/etc/salt/pki/master/minions``.
- .. code-block:: raw
- /etc/salt/pki
- |-- master
- | |-- master.pem
- | |-- master.pub
- | |-- minions
- | | `-- ragnarok.saltstack.net
- | |-- minions_pre
- | `-- minions_rejected
- |-- minion
- | |-- minion.pem
- | |-- minion.pub
- | `-- minion_master.pub
|