2014-08-21 3 views
0

Я использую отличную библиотеку JClouds-Chef для загрузки и настройки виртуальных машин с шеф-поваром.Есть ли у JClouds-Chef функция возврата?

Мне нужно учитывать прецедент, когда что-то пошло не так после JClouds-Chef был выполнен на виртуальной машине, что позволяет мне в основном откатить и удалить его. Цель здесь состоит в том, чтобы оставить систему в том же состоянии, в котором она была первоначально (до того, как JClouds-Chef включился), если что-то пойдет не так.

  1. Одним из решений может быть, чтобы удалить клиент Chef полностью
  2. Другим решением может быть чистого листа или обратной начальной загрузки до точки, где есть простой /tmp/chef-bootstrap.sh файл на ВМ
  3. идеальным решение, учитывая мой сценарий, было бы для него «ОК», если бы этот chef-bootstrap.sh мог запускаться снова и снова, и каждый раз, когда он запускается, просто перенастраивайте клиента шеф-повара, чтобы использовать любые последние рецепты/роли/среды, которые VM должна иметь.

Итак, мой первый вопрос: № 3 над корпусом? Если нет, то как я могу реализовать решения # 1 или # 2, или есть лучший способ реализовать эту функцию отмены/возврата/отката?

ответ

1

Насколько я знаю, шеф-повар не предоставляет этот откат из коробки.

Что касается ваших вопросов:

  1. Удаление клиента шеф не будет удалять то, что может быть установлен запустить Chef, ни откатить изменения в конфигурационных файлах и т.д.
  2. Этот сценарий должен быть создан вручную ,
  3. Способ вернуть вещи в шеф-повар (или удалить что-то) - это создать рецепт, который удаляет то, что нужно удалить (например, для отката установки Apache вы создали бы рецепт, который удаляет его).

последняя является рекомендуемым и вы могли бы сделать это:

  • Добавление «шеф-клиент» поваренную книгу в список запуска ваших узлов, так что периодически запускается. Таким образом, он будет следить за изменениями в списке запуска и применять их.
  • Если что-то не удается, вы можете обновить список запуска узла и оставить там «рецепты отката». В следующем запуске клиента Chef состояние будет отменено.

При использовании клиента шеф-повара периодически чрезвычайно важно, чтобы все используемые вами рецепты были идемпотентны, поэтому их можно запускать много раз без сбоев (по определению они должны быть!).

Смежные вопросы