Подобно созданию программного обеспечения, следует использовать инструменты для развертывания обновлений рабочего сервера (будь то база данных, веб-сайт, конфигурации маршрутизатора и т. Д.). Использование инструментов снижает количество человеческих ошибок определенного типа (например, пропущенные шаги).
пожалуйста
Не добавляйте инструмент, который уже существует - добавьте комментарии, если у вас есть что сказать по поводу данного ответа.
-Адам
Кукольный это недавно написанный инструмент, написанный на Ruby, который набирает обороты против cfengine.
Мне очень нравится cfengine 3
Он может в основном позаботиться о каждой части процесса развертывания при правильной конфигурации: копировать файлы из местоположения, автоматически использовать систему упаковки (например, apt, yum) для установки / обновления пакета, запускать / останавливать службы, проверять файлы / страницы содержание.
Я использую его для установки (или проверки наличия) пакетов, и, поскольку я больше занимаюсь Java, когда мне нужно что-то развернуть, я загружаю архив из центральной точки, останавливаю службу Tomcat, копирую архив в Tomcat каталог, запустите службу и убедитесь, что правильное значение можно найти на определенной обслуживаемой странице. Да, cfengine все это делает практически сама.
Преимущества:
Недостатки:
cfengine является каноническим примером в мире unix.
Хотя в основном это инструмент разработчика, Capistrano тоже хороший выбор.
Я не уверен, насколько хорошо он поддерживается для платформ Windows, кроме того, что он работает. Linux / OSX полностью поддерживаются.
Вы можете использовать его для выполнения практически любых операций на серверах развертывания, от обновления файлов до резервного копирования базы данных и управления пользователями.
В сочетании с репозиторием git вы получаете управление изменениями, а также быстрое и легкое развертывание.
Инструмент: Повар это новый инструмент, выпущенный в январе компанией Код операции. Он написан на Ruby, а его язык конфигурации - чистый Ruby DSL. Это молодой инструмент, который находится в стадии активной разработки, но в производстве его уже используют несколько компаний.
Chef может управлять всей вашей инфраструктурой, от настройки служб загрузки и кикстарта PXE до развертывания приложений и управления пользователями. Он очень гибкий, расширяемый и мощный.
Особые преимущества чистый Ruby DSL, RESTful API, доступные для поиска данные узла, и множество поваренные книги готов к использованию. Благодаря Ruby DSL в рецептах можно использовать сложные структуры данных и логику, а вместе с RESTful API делает Chef мощным инструментом для программирования инфраструктуры.
Мы играли с Ткань на данный момент он довольно прост, но похож на Capistrano используя питон.
Мы используем Заводская установка
Для миграции MS SQL Server, sp_help_revlogin бесценен для миграции пользователей, чтобы перенести пользователей / SID / pwds в новый ящик.
Для окон: SCCM
Мы используем Шавлик набор инструментов для обработки исправлений, настройки и аудита.
Я не могу придумать каких-либо конкретных плюсов или минусов - он работает достаточно хорошо, и у нас не было никаких серьезных проблем, насколько я могу припомнить. (Это лучшее, что я могу сказать об этом - он работает достаточно хорошо, и мне не нужно об этом думать :)
Я хотел бы дать большой +1 и Capistrano, и Chef. Оба очень хороши в написании конкретных задач развертывания и управления через ssh. Марионетка тоже интересна, но старая пословица обычно верна: «Мастер на все руки, мастер на все руки». Лучше всего найти самый минимальный инструмент для задач, которые вы хотите выполнить, и работать с ним.