Назад | Перейти на главную страницу

Развертывание приложений в наборах с помощью Chef

Я новичок в chef и планируем внедрить его в нашей производственной среде.

Мы планируем использовать chef для поддержания состояния / конфигурации системы, а также для развертывания приложений. Во время развертывания приложения развертывание не должно происходить параллельно на всех хостах в кластере. Вместо этого развертывание должно происходить в наборы то есть в кластере из 10 хостов первые 2 хоста должны быть выведены из ротации, и релиз должен быть выполнен там, тогда, только если релиз завершится успешно, должен быть развернут следующий набор хостов.

Можно ли это сделать с помощью chef ?

Да, оно может. Однако есть много способов сделать это, поэтому дать вам более подробную информацию будет сложно. Несколько возможностей:

  1. Запустите chef-client вручную по очереди на серверах каждой группы.
  2. Создайте новую среду chef_environment для каждого выпуска, а затем продвигайте узлы в эту среду, если хотите, чтобы они обновлялись.
  3. Установите флаги версии на узлах, чтобы определить, какую версию они должны запускать
  4. Установите флаги версии в роли, а затем назначьте новую роль для каждого нового выпуска. Перемещая узлы в разные роли, вы можете влиять на то, какие из них будут обновляться.

Есть много других вариантов.