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