0.11.0.rst 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. =========================
  2. Salt 0.11.0 Release Notes
  3. =========================
  4. :release: 2012-12-14
  5. Salt 0.11.0 is here, with some highly sought after and exciting features.
  6. These features include the new overstate system, the reactor system, a new
  7. state run scope component called __context__, the beginning of the search
  8. system (still needs a great deal of work), multiple package states, the MySQL
  9. returner and a better system to arbitrarily reference outputters.
  10. It is also noteworthy that we are changing how we mark release numbers. For the
  11. life of the project we have been pushing every release with features and fixes
  12. as point releases. We will now be releasing point releases for only bug fixes
  13. on a more regular basis and major feature releases on a slightly less regular
  14. basis. This means that the next release will be a bugfix only release with a
  15. version number of 0.11.1. The next feature release will be named 0.12.0 and
  16. will mark the end of life for the 0.11 series.
  17. Major Features
  18. ==============
  19. OverState
  20. ---------
  21. The overstate system is a simple way to manage rolling state executions across
  22. many minions. The overstate allows for a state to depend on the successful
  23. completion of another state.
  24. Reactor System
  25. --------------
  26. The new reactor system allows for a reactive logic engine to be created which
  27. can respond to events within a salted environment. The reactor system uses sls
  28. files to match events fired on the master with actions, enabling Salt
  29. to react to problems in an infrastructure.
  30. Your load-balanced group of webservers is under extra load? Spin up a new VM
  31. and add it to the group. Your fileserver is filling up? Send a notification to
  32. your sysadmin on call. The possibilities are endless!
  33. Module Context
  34. --------------
  35. A new component has been added to the module loader system. The module context
  36. is a data structure that can hold objects for a given scope within the module.
  37. This allows for components that are initialized to be stored in a persistent
  38. context which can greatly speed up ongoing connections. Right now the best
  39. example can be found in the `cp` execution module.
  40. Multiple Package Management
  41. ---------------------------
  42. A long desired feature has been added to package management. By definition Salt
  43. States have always installed packages one at a time. On most platforms this is
  44. not the fastest way to install packages. Erik Johnson, aka terminalmage, has
  45. modified the package modules for many providers and added new capabilities to
  46. install groups of packages. These package groups can be defined as a list of
  47. packages available in repository servers:
  48. .. code-block:: yaml
  49. python_pkgs:
  50. pkg.installed:
  51. - pkgs:
  52. - python-mako
  53. - whoosh
  54. - python-git
  55. or specify based on the location of specific packages:
  56. .. code-block:: yaml
  57. python_pkgs:
  58. pkg.installed:
  59. - sources:
  60. - python-mako: http://some-rpms.org/python-mako.rpm
  61. - whoosh: salt://whoosh/whoosh.rpm
  62. - python-git: ftp://companyserver.net/python-git.rpm
  63. Search System
  64. -------------
  65. The bones to the search system have been added. This is a very basic interface
  66. that allows for search backends to be added as search modules. The first
  67. supported search module is the whoosh search backend. Right now only the basic
  68. paths for the search system are in place, making this very experimental.
  69. Further development will involve improving the search routines and index
  70. routines for whoosh and other search backends.
  71. The search system has been made to allow for searching through all of the state
  72. and pillar files, configuration files and all return data from minion
  73. executions.
  74. Notable Changes
  75. ===============
  76. All previous versions of Salt have shared many directories between the master
  77. and minion. The default locations for keys, cached data and sockets has been
  78. shared by master and minion. This has created serious problems with running a
  79. master and a minion on the same systems. 0.11.0 changes the defaults to be
  80. separate directories. Salt will also attempt to migrate all of the old key data
  81. into the correct new directories, but if it is not successful it may need to be
  82. done manually. If your keys exhibit issues after updating make sure that they
  83. have been moved from ``/etc/salt/pki`` to ``/etc/salt/pki/{master,minion}``.
  84. The old setup will look like this:
  85. .. code-block:: raw
  86. /etc/salt/pki
  87. |-- master.pem
  88. |-- master.pub
  89. |-- minions
  90. | `-- ragnarok.saltstack.net
  91. |-- minions_pre
  92. |-- minion.pem
  93. |-- minion.pub
  94. |-- minion_master.pub
  95. |-- minions_pre
  96. `-- minions_rejected
  97. With the accepted minion keys in ``/etc/salt/pki/minions``, the new setup
  98. places the accepted minion keys in ``/etc/salt/pki/master/minions``.
  99. .. code-block:: raw
  100. /etc/salt/pki
  101. |-- master
  102. | |-- master.pem
  103. | |-- master.pub
  104. | |-- minions
  105. | | `-- ragnarok.saltstack.net
  106. | |-- minions_pre
  107. | `-- minions_rejected
  108. |-- minion
  109. | |-- minion.pem
  110. | |-- minion.pub
  111. | `-- minion_master.pub