Автоматизация конфигурации окон
Это больше вопрос о рабочей станции, чем о самом сервере, но я считаю, что лучше всего подходит на этом сайте:
Я хочу автоматизировать настройки конфигурации рабочей станции Windows 10 Pro. Я хочу иметь возможность автоматизировать установку нескольких инструментов на машины Windows, без необходимости вручную делать это на каждом из них. Я хочу, чтобы процесс оставался без присмотра, который может занять весь день, если мне не нужно присутствовать при его просмотре.
Я хочу иметь возможность устанавливать такие вещи, как:
Pycharm
Visual Studio
Notepad++
Android Studio
Docker
Sublime
Netbeans
Firefox
Chrome
И другие инструменты, связанные с работой.
Я слышал и читал о Ansible
, Puppet
, Chef
, Salt
и они, кажется, именно то, что мне нужно, но я никогда не использовал такие инструменты. я использую docker
ежедневно, но это не то, что я ищу.
Я также видел другие инструменты, такие как Ninite
а также SilentInstall
,
Я ищу что-то предпочтительное с открытым исходным кодом, или, по крайней мере, какой-нибудь бесплатный уровень, который я могу использовать. Было бы хорошо иметь веб-интерфейс для централизованного управления, хотя я бы предпочел что-то бесплатное и иметь это в качестве возможного обновления в будущем по мере роста числа рабочих станций.
Я не использую AD (по крайней мере, в настоящее время), поэтому я бы предпочел что-то, что позволило бы мне подключаться к машинам и запускать их из удаленного места или даже подключать USB-устройство для настройки.
Присутствие на месте не является проблемой, но чем гибче, тем лучше.
Что я должен использовать? Какие-либо предложения или ограничения на вышеупомянутые продукты? Или я смотрю на неправильный набор инструментов и должен использовать что-то еще для этих задач?
1 ответ
У меня недостаточно репутации, чтобы просить разъяснений, поэтому я собираюсь предположить две вещи.
Я не использую AD (по крайней мере, в настоящее время), поэтому я бы предпочел что-то, что позволило бы мне подключаться к машинам и запускать их из удаленного места или даже подключать USB-устройство для настройки.
Я не уверен, что можно квалифицировать как "бегущие вещи". Вы не упоминаете операционную систему для рабочих станций, хотя упоминаете Active Directory. Если мои нижеприведенные предположения неверны, дайте мне знать, и я посмотрю, смогу ли я изменить ответ так, чтобы он подходил.
Успенский 1
Вы бы согласились на решение, которое позволяет подключить USB-устройство к рабочей станции и выполнить файл для развертывания вашей "конфигурации". Если этот же процесс можно выполнить удаленно, это еще лучше.
Предположение 2
Вам необходимо поддерживать несколько разных операционных систем, включая некоторые варианты Windows, MacOS X и Linux.
Изменить: я вижу, что вы упоминаете Windows несколько раз, я не знаю, как я пропустил это. Я упоминаю поддержку Windows в своих сравнениях ниже, поэтому я считаю, что они все еще актуальны.
Вы задаете несколько вопросов, и я не могу ответить на них все, поэтому я разделю их и отвечу на них по отдельности, насколько смогу.
Что я должен использовать?
Это очень субъективный вопрос, на который я не могу ответить.
Или я смотрю на неправильный набор инструментов и должен использовать что-то еще для этих задач?
Я считаю, что вы смотрите на правильные наборы инструментов.
Какие-либо предложения или ограничения на вышеупомянутые продукты? (Ansible, кукольный, повар и соль)
У меня есть только опыт работы с Puppet. Я слышал о других, но не очень хорошо их знаю. Я пройдусь по ним один за другим и, насколько смогу, сравню их с Puppet, используя внешние источники.
Марионетка
Версия Puppet с открытым исходным кодом в значительной степени выполняет то, что вам нужно, после установки на рабочую станцию вы можете удаленно изменять конфигурацию (вы также можете применить один манифест локально, например, с USB-устройства).
Агент Puppet на рабочей станции будет связываться с удаленным сервером через определенные промежутки времени, чтобы загрузить "манифест", который определяет желаемое состояние списка ресурсов, это может включать пакеты программного обеспечения, файлы конфигурации, принтеры и т. Д.
Вместе с Puppet поставляется 'puppetdb', база данных, в которой хранятся "факты" о рабочих станциях. Вы можете написать свои собственные факты, но это такие вещи, как имя хоста, IP-адрес, какой у него процессор и так далее.
Существует множество бесплатных "модулей" высокого качества, доступных для Puppet из так называемой Puppet Forge.
Это в значительной степени то, что делает Puppet, ни меньше, ни больше.
анзибль
Насколько мне известно, Ansible делает почти все, что делает Puppet, предположительно немного проще - в дополнение к этому он также фокусируется на обеспечении и развертывании, о которых я пока не знаю.
Как и Puppet, Ansible также имеет отличный источник модулей, доступных для бесплатной загрузки с Ansible Galaxy. Предположительно, модули не так хороши, как доступные для Puppet, но они все еще великолепны.
Источник: https://www.devopsgroup.com/2018/01/10/puppet-vs-ansible/
Технически он не поддерживает Windows, но в любом случае его легко установить: http://www.oznetnerd.com/installing-ansible-windows/
шеф - повар
Предположительно, Chef сравнивает гораздо больше с Puppet, хотя он более сфокусирован на облаке, чем Puppet. Шеф-повар, предположительно, более "продвинутый" из двух, где Puppet - более простой. Puppet поддерживает более широкий спектр операционных систем, в то время как Chef имеет очень обширный API.
Источник (который также включает в себя хорошую матрицу для сравнения): http://www.cyberphoton.com/questions/question/what-is-the-difference-between-chef-and-puppet-in-configuration-management-software
Поваренная соль
Этот, кажется, наименее используемый из четырех, и мне не удалось найти очень хорошее сравнение с Puppet. Это кажется гораздо более сопоставимым с Ansible, чем Salt. Он предположительно масштабируется лучше, чем остальные три, но хотя он и поддерживает Windows, он не слишком доволен этим.
Другие сравнения из четырех:
https://www.reddit.com/r/linuxadmin/comments/9ljveg/puppet_vs_salt_vs_chef_vs_ansible_which_to_choose/ https://www.intigua.com/blog/puppet-vs.-chef-vs.-ansible-vs.-saltstack