ICL Services
Задать вопрос 8-800-333-98-70
Новости
8 Октября 2018
Новости

Как автоматизировать создание виртуальных машин? Рассказываем подробно

Создание новой виртуальной машины — это рутина, отнимающая много времени. И чем больше инфраструктура и организация, тем больше процедур, связанных с этим процессом. Мы автоматизировали это процесс с помощью PowerShell. 

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

Мы хотели сделать так, чтобы любой инженер или project-менеджер смог создать новую виртуальную машину с минимальными усилиями и за минимальный срок. У нашего заказчика есть ITSM-система, в данном примере это ServiceNow, мы создали соответствующую web-форму в сервисном каталоге. Для «заказа» новой машины менеджеру необходимо заполнить поля и подтвердить «заказ», после этого запускается цепочка процессов, и на выходе получаем готовую к использованию машину.


Итак, давайте рассмотрим, что нужно определить менеджеру, чтобы создать новую виртуальную машину:

1 - Copy.png

VM Description: описание виртуальной машины
Тут нужны некоторые пояснения. В нашем решении активно используется PowerShell 5.1, поэтому пока Windows-only, в будущем мы постараемся добавить поддержку Unix-машин и перейдем на PowerShell Core.

OS, операционная система. Никаких особых препятствий использовать Windows 2008 (R2) нет, но мы используем 2012R2 или 2016.

VM Size, размер виртуальной машины. У каждого это может быть определено по-своему, в данном примере Small 1CPU-4Gb Ram, Medium 2CPU-8Gb, Large 4-16.

VM Storage, Disk 0 (C:\) имеет фиксированный размер, который вы не можете изменить, доступен только селектор Fast/Slow storage. «Fast» — это может быть Storage Tier с SSD, а «Slow» — это storage на «обычных» HDD (конечно — SAN). Disk1 (Disk2 и далее) также имеют селектор выбора типа Storage, а также поля для ввода желаемого размера в гигабайтах, Letter для раздела и размер кластера (что важно для SQL Server).

Trust, определяем, что машина должна быть Domain-joined или нет, с доступом из Public Network или нет.

Type, тип машины. Почти каждую машину можно определить, как front-end или back-end приложения или же other во всех оставшихся случаях. На основе выбранного типа мы сможем в дальнейшем определить наиболее подходящую подсеть для машины.

Environment, в инфраструктуре заказчика есть два дата центра: Primary (Production) и Secondary (Dev/test), DC связаны между собой быстром каналом связи и обеспечивают отказоустойчивость. По договоренности все виртуальные машины в Primary DC имеют IP-адрес, начинающийся на 10.230, а в Secondary DC — на 10.231.

(SLA) Service Level Agreement, этот параметр влияет на качество обслуживания данной машины.

Приложения. Мы добавили возможность установки и настройки SQL Server. Необходимо выбрать издание, instance name и collation. Также возможно настроить и Web Server роль и многое другое.

Теперь нам нужно определить, как хранить выбранные значения. Мы решили, что наиболее удобный формат — JSON-файл. Как я говорил ранее, в среде заказчика используется ITSM ServiceNow; менеджер, после того как выбрал все необходимы значения, нажимает кнопку «order» и после этого ServiceNow передает все параметры нашему PowerShell-скрипту (на back-end ServiceNow), который и создаст JSON-файл. 

Продолжение статьи на корпоративном блоге Хабр.




Поделиться:

Новости по теме

    Свяжитесь с нами

    Контакты Пресс-службы
    Телефон 8 (800) 333-98-70

    pr@icl-services.com

    Будьте в курсе новостей

    Подпишитесь на рассылку и будьте в курсе наших последних новостей

    Подписаться на рассылку
    Адрес подписки успешно добавлен! Ok
    Читайте нас на
    На сайтах icl-services.com используются cookie-файлы. Оставаясь на сайте, вы даете свое согласие на использование нами cookie-файлов. Если, прочитав данное сообщение, вы не согласны, просим вас покинуть сайт.