WikiSort.ru - Компьютерные программы

ПОИСК ПО САЙТУ | о проекте
SaltStack
Тип Управление конфигурацией, системное администрирование
Написана на Python[1]
Операционная система кроссплатформенное программное обеспечение
Последняя версия
Лицензия лицензия Apache
Сайт saltstack.com

SaltStack — система управления конфигурациями и удалённого выполнения операций. Является программным обеспечением с открытым исходным кодом, написанным на Python. Проект начат в 2011 году Томасом Хатчем (Thomas Hatch)[3]. Поддерживает подход IaaS для развёртывания и управления облачными вычислениями[4].

Аналог Puppet, Chef и Ansible.

Архитектура

Двумя главными компонентами SaltStack являются Salt Master («мастер») и Salt Minion («ставленник», «приближённый», «миньон»). Мастер является центральной службой, к которой подключаются «ставленники» для получения конфигурации. Две основных идеи SaltStack: удалённое выполнение операций (remote execution) и управление конфигурациями. Удалённое выполнение функций Python является основой для построения повторяемой и управляемой конфигурации машин, с установленными на них «ставленниками»[5].

Мастер и «ставленники» общаются через промежуточное программное обеспечение, ориентированное на обработку сообщений: мастер запускает сообщения в очередь, из которой их получают «ставленники». Для обратной связи используется другая очередь. Первоначально для обмена сообщениями использовался ZeroMQ, но кластеры обслуживаемых серверов подчас имеют более десяти тысяч машин, поэтому на смену ZeroMQ был задуман основанный на UDP RAET (англ. Reliable Asynchronous Event Transport — «надёжный асинхронный протокол для транспорта событий»)[6].

В 2014 году в состав Salt был включён Salt Cloud, добавляющий в SaltStack уровень абстракции для работы с различными поставщиками облачных платформ[7].

Команды

Команда salt для запуска удалённого выполнения принимает следующие основные параметры[8]:

Состояния

SaltStack использует модули состояния (States) для описания требуемых состояний хостов-«ставленников». Состояния системы записываются в виде файлов с расширением .sls в синтаксисе YAML, например:[9]

 openssh-client:
   pkg.installed

Модули состояния отличаются от исполняемых модулей тем, что описывают требуемые состояния и их работа заключается в достижении описанного состояния. Исполняемые же модули выполняют заложенные в них действия каждый раз[9].

Описания состояний могут быть расширены использованием языка шаблонов Jinja2, а конфиденциальные данные конкретных «ставленников» могут быть защищены (от других «ставленников») подсистемой Pillar[10].

Примечания

  1. The salt Open Source Project on Open Hub: Languages Page — 2006.
  2. saltstack/salt
  3. Learning SaltStack, 2015, Preface.
  4. Review: Puppet vs. Chef vs. Ansible vs. Salt (21 ноября 2013).
  5. Learning SaltStack, 2015, Introducing Salt.
  6. Hall, 2015, Chapter 7. Understanding the RAET Protocol.
  7. Learning SaltStack, 2015, Chapter 7. Using Salt Cloud to Manage Virtual Minions.
  8. Learning SaltStack, 2015, The structure of a remote execution command.
  9. 1 2 Learning SaltStack, 2015, Chapter 4. Defining the State of Your Infrastructure.
  10. Learning SaltStack, 2015, Chapter 5. Expanding Our States with Jinja2 and Pillar.

Литература

  • Colton Myers. Learning SaltStack. — Packt Publishing, 2015. — 174 p. ISBN 978-1-78439-901-6.
  • Craig Sebenik, Thomas Hatch. Salt Essentials. — O'Reilly Media, Inc., 2015. — 250 с. ISBN 978-1-4919-0063-5.
  • Joseph Hall. Mastering SaltStack. — Packt Publishing, 2015. — 306 с. ISBN 978-1-78528-838-8.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии