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

Как автоматизировать установку ОС на более чем 500 машинах?

Моя компания должна до конца года оформить большое количество машин. Каждая из машин будет иметь аппаратный RAID 1 и работать под управлением CentOS 6.

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

У HowToForge есть отличная статья, чтобы начать такой процесс Вот

По сути, это общий список действий, которые потребуются:

  1. Установите DHCP-сервер, который может поддерживать количество клиентов (VLAN и т. Д.)
  2. Создайте HTTP-сервер, на котором будет размещена установка
  3. Создайте сценарий кикстарта для установки. Кикстарт может быть основан на файле ks-anaconda.cfg, созданном при первой установке ОС в корневой домашний каталог (обычно находится в / root /).
  4. Интегрируйте сценарий кикстарта и HTTP-сервер с TFTP-сервером для поддержки загрузки PXE.
  5. Перезагрузите целевые машины и ПРИБЫЛЬ!

Сапожник был разработан для этого.

В мастер - отличный интерфейс для управления DNS, DHCP, PXE, Kickstart и Puppet.

Изменить: вам лучше разместить любое программное обеспечение, которое вы выберете для установки, на выделенном сервере. (Возможно, ваш офис сможет сэкономить один из 500+, которые у них есть). Даже если вы делаете это один или два раза в год, эта инфраструктура обеспечения будет принадлежать остальной части вашей «важной» инфраструктуры, а не настольному компьютеру.

Отказ от ответственности: я разработчик Stacki; пользователь Stacki только что задал нам этот вопрос. На момент написания вопроса Stacki еще не был проектом с открытым исходным кодом, но это сейчас, находится в стадии активной разработки с растущим сообществом.

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

Stacki частично пересекается с Foreman / Cobbler / et al. (PXE-загрузка с шаблонными файлами кикстарта и т. Д.), Но есть и некоторые интересные функции. Например, у нас есть одноранговый установщик, похожий на торрент, поэтому вы не забиваете узел подготовки. Он выполняет сложное разбиение на разделы, сеть и настройку контроллера хранения с помощью определяемых вами электронных таблиц, которые контролируются версиями и хранятся в РСУБД. Также есть аспект управления конфигурацией программного обеспечения, который полностью способен настраивать такие сложные вещи, как OpenStack или Hadoop, но также достаточно независим, чтобы просто установить что-то вроде Ansible и запустить свои уже написанные playbooks.

Если вы хотите попробовать, Stacki На главной странице веб-сайта есть загрузочный ISO-образ, а также на GitHub есть инструкции по получению нашего предварительно настроенного блока Vagrant (который - без особой причины - не размещен в Atlas, но, вероятно, должен быть).

Хотя я полностью поддерживаю то, что говорит @NickV, не стоит недооценивать силу упрощенного подхода к созданию полного изображения, например, с USB-накопителем / диском. Особенно, если вы не знакомы с работой DHCP, HTTP-серверов, кикстарта, TFTP и прочего. Я обнаружил, что к тому времени, когда вы все это начнете и начнете, вы, возможно, сможете установить систему и получить полный образ загрузочного диска (с одним из многих программ, которые могут это сделать), скопируйте этот образ на столько USB-устройств, сколько вы хотите, загрузитесь с него на любом количестве систем и сделайте половину.

Теперь, если вы устанавливаете это как постоянное распространение, дополнительная работа, описанная @NickV, безусловно, принесет вам пользу в долгосрочной перспективе.

Возможно, вы не захотите использовать образ USB-накопителя с 500 машинами, НО вы вполне можете пойти с подходом образа с использованием CloneZilla, многоадресная передача по сети с сервера. Видеть

http://clonezilla.org/clonezilla-SE/

для подробностей.

MAAS - действительно хорошее решение для этого. Предназначен для развертывания больших облаков с использованием автоматизации. Это намного больше, чем просто сапожная загрузка pxe ... Он управляет состоянием питания, пользователями, установкой образов и т. Д.