Раскрытие информации: Я являюсь одним из разработчиков, занятых в Puppet Labs.
Зачем использовать шеф-повара, когда есть API-интерфейсы для конкретного поставщика, а также такие фреймворки, как JCloud, которые абстрактны даже для тех API?
Есть две причины. Во-первых, Шеф-повар, Кукольный и подобные инструменты похожи на JCloud - они предлагают абстракцию над конкретными облачными API. Таким образом, вы используете их по той же причине.
Другое, что большинство облачных API действительно создают машины, а шеф-повар, кукольный и подобные инструменты действительно касаются конфигурации после машина создана. Абстракция над облачным API более удобна, чем основной фокус.
Есть ли стоимость исполнения для использования этих инструментов настройки, или же узлы/машины работают как любая другая (не управляемая) машина в облаке?
Соотношение затрат на использование knife
для создания машины? Нет, это похоже на любой неуправляемый узел. Если вы создадите машину без установленного Chef, она будет похожа на машину без установленного Chef. То же самое верно и на Кукольной стороне и т. Д.
(Имейте в виду, что у шеф-повара, кукольного и подобных инструментов нет API, которого нет в API общедоступного облака. ;)
Может ли Шеф-повар использоваться для настройки любой имеющейся там технологии или он предоставляет список поддерживаемых поставщиков/систем? Смысл, давайте просто скажем, что у меня есть куча серверов PostgreSQL, настроенных Chef. Затем на следующий день появляется какая-то сумасшедшая новая RDBMS, и я хочу переключиться на нее. Нужно ли ждать, пока шеф-повар «поддержит» эту новую систему или станет агностиком шеф-повара?
Шеф-повар и кукольный, оба имеют расширяемость в своем сердце. У обоих есть набор вещей, которыми они могут управлять из коробки, и сообщество, которое способствует поддержке целой кучи других вещей.
Итак, если придет новая услуга, у вас могут быть некоторые, но не все функции, с которыми вы могли бы справиться.(Оба управляют, например, пакетами, файлами, службами и запускают произвольные команды из коробки. Это будет делать многое из того, что требует случайный новый сервис, даже без более подробной модели для управления им.)
вам нужно больше - для управления, например, контроль доступа внутри базы данных является частью первого класса модели, вам, возможно, придется подождать , кто-то, чтобы написать поддержку для него в вашем продукте. (Чтобы кто-то мог, очевидно, быть вами. :)
Итак, вы получаете базовую поддержку из коробки, и ее намеренно легко построить поверх нее.
Ни один из продуктов не является «специфичным для поставщика» в каком-либо значимом смысле, хотя они более эффективны в Unix, чем другие платформы, и имеют более ограниченную, но по-прежнему ценную поддержку для Windows.
Практически все здесь применимо и к другим продуктам в пространстве.
Абсолютно фантастический ответ - спасибо Даниэлю! Итак, если мое понимание «виртуальных устройств» правильное (что они просто предварительно настроенные виртуальные машины), можно ли сказать, что JCloud + {Puppet | Chef | и т. Д.} = Виртуальное устройство? JCloud, чтобы создать экземпляр виртуальной машины и куклу настроить ее? – IAmYourFaja
«виртуальное устройство» - это просто термин «виртуальная машина, у которой уже установлено программное обеспечение и готово к работе». Я не знаю много о JCloud, кроме того, что я читал в их маркетинге, но ... да, в том, что вы могли бы построить один, и да, в этом здании виртуальное устройство с шеф-поваром или марионеткой, испеченным в нем, имеет свои преимущества, но это не нужно делать так. –