CFEngine - CFEngine

CFEngine
CFEngine-logo.svg
изначальный выпуск1993
Стабильный выпуск
3.17.0,[1] 3.15.3,[2] 3.12.6[2] / 19 ноября 2020 г.
Репозиторий Отредактируйте это в Викиданных
Операционная системаКроссплатформенность
ПлатформаUnix-подобный, Windows
ТипУправление конфигурацией Системное администрирование Управление сетью
ЛицензияСтандартная общественная лицензия GNU версии 3
Интернет сайтcfengine.com

CFEngine является Открытый исходный код управление конфигурацией система, написанная Марк Берджесс. Его основная функция - обеспечение автоматизированной настройки и обслуживания крупномасштабных компьютерных систем, включая единое управление серверы, настольные компьютеры, бытовые и промышленные устройства, встроенные сетевые устройства, мобильные смартфоны, и планшетные компьютеры.

История

CFEngine 1

Проект CFEngine начался в 1993 году как способ для писателя Марка Берджесса (в то время постдокторант Королевского общества в Осло университет, Норвегия), чтобы выполнить свою работу за счет автоматизации управления небольшой группой рабочих станций в отделе теоретической физики. Как и многие другие аспиранты и аспиранты, Берджесс столкнулся с задачей управления рабочими станциями Unix, написания сценариев и устранения проблем для пользователей вручную. Написание сценариев занимало слишком много времени, разновидности Unix значительно отличались, и сценарии приходилось поддерживать для нескольких платформ, утонув в логике исключений.

Обсудив проблемы с коллегой, Берджесс написал первую версию CFEngine (механизм конфигурации), который был опубликован как внутренний отчет[3] и представлен на компьютерной конференции CERN. Он привлек значительное внимание более широкого сообщества, поскольку смог скрыть различия платформ с помощью предметно-ориентированного языка.

Год спустя Берджесс закончил свою постдокторскую работу, но решил остаться в Осло и устроился читать лекции в Осло университетский колледж. Здесь он понял, что исследования в области управление конфигурацией, и он приступил к применению принципов научного моделирования для понимания компьютерных систем. За короткое время он разработал понятие сходящиеся операторы, который остается ядром CFEngine.

CFEngine 2

В 1998 году Берджесс написал доклад «Компьютерная иммунология» на конференции USENIX / LISA98.[4] В нем изложен манифест по созданию систем самовосстановления, повторенный несколько лет спустя IBM в их форме Автономные вычисления. Это положило начало исследовательской работе, которая привела к серьезному переписыванию, CFEngine 2, в котором добавлены функции для машинного обучения, обнаружения аномалий и безопасной связи.

CFEngine 3

В период с 1998 по 2004 год распространение CFEngine росло вместе с популярностью Linux как вычислительная платформа. За это время Марк Берджесс разработал теория обещаний, модель распределенного сотрудничества для автоматизации самовосстановления.[5]

В 2008 году, после более чем пяти лет исследований, CFEngine 3 была представлена ​​теория обещаний как «способ сделать CFEngine одновременно более простым и мощным», по словам Берджесса. CFEngine 3, наиболее значительная на сегодняшний день переработка проекта, также включает в себя механизмы управления знаниями и обнаружения, что позволяет масштабировать управление конфигурацией для автоматизации инфраструктуры корпоративного класса.

Коммерциализация

В июне 2008 года компания CFEngine AS была образована в результате сотрудничества между автором Марком Берджессом, Университетским колледжем Осло и Инновационным центром Осло с целью поддержки пользователей CFEngine. В апреле 2009 года компания запустила первую коммерческую версию CFEngine - CFEngine Enterprise. Версию Enterprise можно бесплатно скачать до 25 агентов (клиентов). В феврале 2011 года компания получила первый раунд финансирования от FERD Capital.[6] Офисы компании расположены в Осло, Норвегия, и Маунтин-Вью, Калифорния, США.

В 2017 году компания сменила название на Northern.tech, чтобы отразить, что он работает над несколькими программными продуктами, а не только над CFEngine. [7]

Характеристики

Портативность

CFEngine предоставляет независимый от операционной системы интерфейс для Unix-подобный конфигурация хоста. Для работы с особенностями различных операционных систем требуются некоторые экспертные знания, но он может выполнять действия по обслуживанию на нескольких хостах. CFEngine также может использоваться на хостах Windows и широко используется для управления большим количеством хостов Unix, которые работают с разнородными операционные системы, например Солярис, Linux, AIX, Tru64 и HP-UX.

На основе исследований

Вскоре после своего создания CFEngine вдохновил на исследования в области автоматизированного управления конфигурациями. Проект CFEngine претендует на попытку поместить проблему управления конфигурациями в научные рамки. Его автор Марк Берджесс разработал ряд теоретических инструментов и результатов, чтобы рассказать о проблеме, и написал несколько учебников и монографии объясняя их.

Конвергенция

Одна из основных идей CFEngine заключается в том, что изменения в конфигурации компьютера должны выполняться в сходящийся манера.[8][9] Это означает, что каждая операция изменения, выполняемая агентом, должна иметь характер фиксированная точка. Вместо того чтобы описывать шаги, необходимые для внесения изменений, язык CFEngine описывает конечное состояние, в котором человек хочет оказаться. Затем агент гарантирует, что были предприняты необходимые шаги для перехода в это «состояние соответствия политике». Таким образом, CFEngine можно запускать снова и снова, независимо от начального состояния системы, и это приведет к предсказуемому результату. CFEngine поддерживает элемент статистического соответствия политике, что означает, что система никогда не может гарантировать, что она находится точно в идеальном или желаемом состоянии, скорее, она приближается (сходится) к желаемому состоянию изо всех сил, со скоростью, которая определяется отношение частоты изменения окружающей среды к скорости выполнения CFEngine.[10]

База пользователей

CFEngine используется как в крупных, так и в малых компаниях, а также во многих университетах и ​​государственных учреждениях.[нужна цитата ] Самый крупный центр обработки данных под управлением CFEngine насчитывает более миллиона серверов, в то время как публично сообщается о сайтах размером до 40 000 машин (LinkedIn[11]), тогда как сайты с несколькими тысячами хостов, работающие под CFEngine, являются обычными.[нужна цитата ]Согласно статистике CFEngine AS, CFEngine работает, вероятно, на нескольких миллионах компьютеров по всему миру, и зарегистрированы пользователи из более чем 100 стран.

Конкуренты

Смотрите также

Рекомендации

  1. ^ Команда и сообщество CFEngine. "Выпущен CFEngine 3.17.0". Northern.tech AS.
  2. ^ а б Команда и сообщество CFEngine. «Выпущен CFEngine 3.12.6 и 3.15.3». Northern.tech AS.
  3. ^ Берджесс, Марк. «Университет Осло: Cfengine V2.0: инструмент настройки сети» (PDF). Iu.hio.no. Архивировано из оригинал (PDF) в 2013-07-23. Получено 2013-09-08.
  4. ^ Берджесс, Марк (Декабрь 1998 г.). «Компьютерная иммунология» (PDF). Usenix.org. Получено 2013-09-08.
  5. ^ Берджесс, Марк; Диван, Альва (28 ноября 2006 г.). «Автономные вычисления, приближенные к обещаниям фиксированной точки, Труды первого международного семинара IEEE по моделированию сред автономной связи (MACE2006)» (PDF). С. 197–222. Архивировано из оригинал (PDF) на 2012-04-25.
  6. ^ «Cfengine завершает серию инвестиций» (Пресс-релиз). Осло, Норвегия: PRNewswire. 2011-04-04. Получено 2014-08-22.
  7. ^ «Добро пожаловать в Northern.tech». Northern.tech. Получено 2019-09-24.
  8. ^ Берджесс, Марк (Лето 1995 г.). «Cfengine: механизм конфигурации сайта» (PDF). Вычислительные системы USENIX. Беркли, Калифорния, США: USENIX. 8 (3). Получено 2014-08-22.
  9. ^ Берджесс, Марк (2003-11-29). «Настраиваемый иммунитет для развивающихся человеко-компьютерных систем» (PDF). Наука компьютерного программирования. 51 (3): 197–213. Дои:10.1016 / j.scico.2003.12.004. Архивировано из оригинал (PDF) на 03.03.2012.
  10. ^ Берджесс, Марк (2003). «По теории системного администрирования» (PDF). Наука компьютерного программирования. 49: 1–46. Дои:10.1016 / j.scico.2003.08.001. Архивировано из оригинал (PDF) на 24.07.2011.
  11. ^ «Пример использования CFEngine - Автоматизация инфраструктуры и операций LinkedIn в WebScale» (PDF). CFEngine AS. Ноябрь 2014 г.

внешняя ссылка