index.rst 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. .. _highavailability:
  2. ==================================
  3. High Availability Features in Salt
  4. ==================================
  5. Salt supports several features for high availability and fault tolerance.
  6. Brief documentation for these features is listed alongside their configuration
  7. parameters in :ref:`Configuration file examples <configuration-file-examples>`.
  8. Multimaster
  9. ===========
  10. Salt minions can connect to multiple masters at one time by configuring the
  11. `master` configuration parameter as a YAML list of all the available masters. By
  12. default, all masters are "hot", meaning that any master can direct commands to
  13. the Salt infrastructure.
  14. In a multimaster configuration, each master must have the same cryptographic
  15. keys, and minion keys must be accepted on all masters separately. The contents
  16. of file_roots and pillar_roots need to be kept in sync with processes external
  17. to Salt as well
  18. A tutorial on setting up multimaster with "hot" masters is here:
  19. :ref:`Multimaster Tutorial <tutorial-multi-master>`
  20. Multimaster with Failover
  21. =========================
  22. Changing the ``master_type`` parameter from ``str`` to ``failover`` will cause
  23. minions to connect to the first responding master in the list of masters. Every
  24. :conf_minion:`master_alive_interval` seconds the minions will check to make
  25. sure the current master is still responding. If the master does not respond,
  26. the minion will attempt to connect to the next master in the list. If the
  27. minion runs out of masters, the list will be recycled in case dead masters have
  28. been restored. Note that :conf_minion:`master_alive_interval` must be present
  29. in the minion configuration, or else the recurring job to check master status
  30. will not get scheduled.
  31. Failover can be combined with PKI-style encrypted keys, but PKI is NOT
  32. REQUIRED to use failover.
  33. Multimaster with PKI and Failover is discussed in
  34. :ref:`this tutorial <tutorial-multi-master-pki>`
  35. ``master_type: failover`` can be combined with ``master_shuffle: True``
  36. to spread minion connections across all masters (one master per
  37. minion, not each minion connecting to all masters). Adding Salt Syndics
  38. into the mix makes it possible to create a load-balanced Salt infrastructure.
  39. If a master fails, minions will notice and select another master from the
  40. available list.
  41. Syndic
  42. ======
  43. Salt's Syndic feature is a way to create differing infrastructure
  44. topologies. It is not strictly an HA feature, but can be treated as such.
  45. With the syndic, a Salt infrastructure can be partitioned in such a way that
  46. certain masters control certain segments of the infrastructure, and "Master
  47. of Masters" nodes can control multiple segments underneath them.
  48. Syndics are covered in depth in :ref:`Salt Syndic <syndic>`.
  49. Syndic with Multimaster
  50. =======================
  51. .. versionadded:: 2015.5.0
  52. Syndic with Multimaster lets you connect a syndic to multiple masters to provide
  53. an additional layer of redundancy in a syndic configuration.
  54. Syndics are covered in depth in :ref:`Salt Syndic <syndic>`.