Подтвердить что ты не робот

Бродяга в производстве

Я читал о Vagrant, и я считаю, что это очень полезно для моего развития. В настоящее время я управляю серией сервисов (почта, сеть, LDAP, совместное использование файлов и т.д.), И часто один из них падает и требует быстрого резервного копирования. Возможно ли (и рекомендуется) использовать Vagrant для этих целей?

До сих пор я устанавливал виртуальные машины как настоящие машины.

Я также хотел бы узнать об альтернативе Vagrant, которая позволила бы мне настроить простой файл конфигурации и поставить виртуальную машину, например, с Zimbra, и быстро иметь альтернативный почтовый сервер, включить RabbitMQ и т.д.

4b9b3361

Ответ 1

Vagrant следует использовать скорее как промежуточную среду для тестирования изменений вашей инфраструктуры. Это должен быть ваш тестовый стенд для автоматических изменений инфраструктуры.

Как мы используем его в моей компании, это так:

  • Создайте виртуальные машины для наших управляемых серверов в Vagrant.
  • Создайте кукольные определения для каждого сервера.
  • Создайте тесты огурца для каждого сервера.
  • Сделать изменения инфраструктуры через марионетку и добавить тесты огурца.
  • Запустите наши серверы для проверки сбоев.
  • Исправить ошибки, отпустить и/или вернуться к шагу 4.

В основном, когда мы довольны нашими изменениями, мы потянем наши марионеточные изменения в производство, чтобы это произошло.

Я бы не рекомендовал использовать бродягу для управления виртуальными машинами для реального производства. Я бы использовал что-то еще, например, бритву, virsh, OpenStack или одну из многих других систем управления vm.

Ответ 2

На этой странице показано, что команда push-команды Vagrant предназначена для развертывания на производстве:

https://www.hashicorp.com/blog/vagrant-push-one-command-to-deploy-any-application/

"Кроме того, несколько объявлений config.push.define могут быть в Vagrantfile для определения нескольких нажатий, возможно, одного для постановки и одного для производства, например.

Ответ 3

Хашикорп только что опубликовал Otto, который должен быть преемником бродяг. Он предназначен для поддержки сред развертывания.

Из страницы Github:

Ключевыми особенностями Otto являются:

  • Автоматические среды разработки: Отто определяет ваше приложение типа и создает среду разработки, специально предназначенную для этого приложения с нулевой или минимальной конфигурацией. Если ваше приложение зависит на другие службы (например, базу данных), он автоматически настроит и запустите эти службы в своей среде разработки для вас.

  • Построен для микросервисов. Отто понимает зависимости и управление версиями и может автоматически развертывать и настраивать приложение и все его зависимостей для любой среды. Приложение должно только расскажите Отто о его непосредственных зависимостях; зависимости зависимостей автоматически обнаруживается и настраивается.

  • Развертывание. Отто знает, как развернуть приложения, а также разработать их. Является ли ваше приложение современным микросервисом, наследием монолит или что-то среднее между ними, Отто может развернуть ваше приложение на любой окружающая среда.

  • Docker. Отто может использовать Docker для загрузки и запуска зависимостей для развития, чтобы упростить микросервисы. Приложения могут быть контейнеризированы автоматически упростить развертывание без изменения разработчика рабочий процесс.

  • Инструмент, упрочняющий закачку: Отто использует закалочную оснастку для производства строить среды разработки (Vagrant), запускать серверы (Terraform), настроить услуги (Consul) и многое другое. Отто основывается на инструменты, которые влияют на крупнейшие мировые сайты. Otto автоматически устанавливает и управляет всем этим инструментом, поэтому вы не должны.

Ответ 4

У меня был тот же вопрос, и я исследовал использование Vagrant push, который, согласно их документации, начиная с версии 1.7, Vagrant способен развертывать или "проталкивать" код приложения в тот же каталог, что и ваш Vagrantfile, в удаленный, такой как FTP-сервер.

Я подумываю о том, чтобы у разработчиков появилось бешеное ускорение в виртуальной машине, а также возможность развертывания кода на работающем сервере для рабочих сред.

Ответ 5

  • По моему опыту, Vagrant в основном используется в среде разработки.
  • Варианты конфигурации и предоставления Vagrant ограничены по сравнению с Terraform, например.
  • Если вы работаете в облачной среде, вы можете использовать Terraform для обеспечения инфраструктуры.
  • Если ваша среда является локальной или ваши виртуальные машины будут размещены в центре обработки данных, вы можете использовать Ansible, chef или puppet для управления конфигурацией и автоматизации.

Ответ 6

Как упоминал @andrerpena, Отто является преемником Вагранта.

Из www.ottoproject.io:

Отто может развернуть ваше приложение. Пользователи Vagrant в течение многих лет хотели развернуть свои бродячие среды для производства. К сожалению, Vagrantfile не содержит достаточной информации для создания надлежащей производственной среды с лучшими отраслевыми практиками. Создается приложение для кодирования этих знаний, а развертывание - одна команда.