Мы пытаемся сократить время развертывания и ищем предложения и способы быстрого доступа, которые вы или ваша команда используете, чтобы вернуться в терминал и выйти из центра обработки данных. Смотрим на весь процесс от заказа снаряжения до конца срока службы.
Если вы достаточно велики, чтобы беспокоиться о больших развертываниях, вы достаточно велики, чтобы использовать какую-то базу данных для машинной информации. Он должен содержать информацию об IP-адресах, MAC-адресах, именах и ролях компьютеров, а также информацию о стандартной модели и производителе. Используйте это для заполнения инструментов настройки и установки.
Если это всего несколько машин, системные администраторы могут быть лучшим выбором для стойки и стека. Если развертывание составляет более 5-10 машин, наймите подрядчика для распаковки, стеллажа и прокладки кабелей. Они делают это достаточно часто, чтобы выполнить задачу быстрее и за меньшие деньги, чем 1-2 системных администратора и несколько волонтеров (читайте стажеров).
Настройте автоматическую установку. Для Linux это означает что-то вроде FAI (Debian и Ubuntu) или кикстарт (RHEL и CentOS). Solaris использует толчок и Windows использует WDS. Оборудование x86 / x86_64 почти всегда поддерживает dhcp и PXE. Возможно, вам потребуется использовать bootp для других серверов. Используйте упомянутую выше базу данных для загрузки конфигурации. Убедитесь, что сценарии конфигурации установки делают то, что вы ожидаете. Затем включите свои машины на последнем этапе установки оборудования.
Иметь систему управления конфигурацией, в которой есть определения типов компьютеров и служб, которые вы используете. Кукольный и cfengine популярны, но есть и многие другие. Получите роли сервера из базы данных, упомянутой выше. Это жизненно важно по мере вашего роста. Инструменты управления конфигурацией гарантируют, что на всех серверах установлена правильная версия программного обеспечения и вся необходимая конфигурация для предоставляемых ими услуг. Вызовите это при начальной загрузке после установки. Выполните несколько итераций с новой установкой, чтобы убедиться, что все в порядке.
Если возможно, как только все будет установлено, дайте всему несколько дней обкатки, прежде чем вы начнете забрасывать его пользовательским трафиком. Настройте мониторинг на отправку вам электронной почты, если есть проблема, но не на отправку никому во время записи. Если ожог невозможен, будьте готовы к большему количеству проблем, чем обычно, до тех пор, пока вы не разобрались с первыми проблемами.
После каждого развертывания есть ретроспектива. Определите, что прошло хорошо, а что нет. Определите, что нужно улучшить, и внесите улучшения. Это может быть как формальное, так и неформальное мероприятие. Ретроспектива так же важна, как и другие шаги. Это то, как вы улучшаете процесс.
Я не могу не подчеркнуть, что вам нужно будет протестировать процесс до и во время любого развертывания. Тесты должны быть максимально автоматизированными. По мере того, как вы ближе познакомитесь с подводными камнями развертывания, вам следует улучшить свое тестирование.
Таким образом небольшая команда (2 человека) может добавить 50 или более машин менее чем за 12 человеко-часов, не считая времени, затрачиваемого на распаковку, укладку, прокладку кабелей и т. Д.
У Генри Форда есть чему поучиться, если вы хотите развернуть множество идентичных (или почти идентичных) предметов из чего угодно.
Если у вас есть, скажем, 100 совершенно новых серверов, которые все сидят на своих упаковочных ящиках и просто умоляют о настройке, имеет смысл создать производственную линию. Очевидно, что до того, как ваша производственная линия начнет работу, вам нужно будет настроить одну из них, чтобы вы точно знали, что нужно делать (и часто для создания вашего главного образа, который будет развернут на других 99). Но я отвлекся.
Генри Форд доказал, что если вы хотите ускорить производство чего-либо, попросите одного человека выполнять только одну работу, но чтобы множество людей выполняли разные работы. Например.
Очевидно, что для этого потребуется больше, чем один человек, но даже с двумя людьми это может быть очень эффективным. Как только кто-то заканчивает свою работу, он принимает следующую доступную работу. s также полезен только в том случае, если у вас много одинаковых предметов, и все они в значительной степени идентичны.
К тому времени, когда они достигнут сотой итерации своей работы, они будут очень эффективны в этом.
На заметку: не заставляйте одного человека выполнять одну и ту же работу слишком долго. В линии по производству автомобилей мы говорим о 3 днях подряд, но при развертывании сервера это могло бы быть больше, как 3 часа.
Кроме того, многие из этих задач являются довольно неквалифицированными (распаковка, завинчивание болтов и т. Д.), Что означает, что если вы можете схватить ребенка с опытом работы или новенького стажера, это может спасти вашу команду для выполнения более квалифицированных задач ( кабели, ОС и т. д.).
Это действительно зависит от того, что вы пытаетесь предоставить. Ранее я использовал настройку, при которой у нас есть стандартные корпоративные конфигурации для серверов, доступные в Dell Premier. Таким образом, мы можем просто войти в систему и заказать 1 новый веб-сервер, и конфигурация будет уже предварительно указана.
Как только оборудование прибыло, мы подключаем его, загружаемся с USB-накопителя. Среда предварительной загрузки спрашивает, какую роль будет выполнять новый сервер. После того, как выбор сделан, сервер создан, настроен, запущен и готов к работе.
Это работает хорошо, но потребовало разумных усилий для настройки. Это также работает, потому что вся среда настроена на горизонтальное масштабирование, при этом серверам назначены очень определенные роли.