Microsoft объявила о планах дальнейшего развития своей облачной программной платформы: корпорация намерена реализовать поддержку технологий контейнерной виртуализации на базе собственного гипервизора Hyper-V, а также выпустить новый вариант Windows Server под названием Nano, специально ориентированный для облачного применения, в том числе с использованием контейнеров. Компания пока сообщила минимальную информацию об анонсированных новшествах, пообещав рассказать о них подробнее на конференции Build 2015, которая откроется в последний день апреля в Сан-Франциско. О графике выхода новых средств тоже пока ничего не говорится, но по неофициальным сведениям они будут доступы на рынке в следующем году, в рамках выпуска Windows Server 2016.

На фоне быстро растущей популярности контейнерных технологий, Microsoft совместно с компанией Docker, ведущим сегодня игроком в этой области, еще в октябре прошлого года объявила о планах поддержки в следующей версии своей серверной ОС механизма виртуализации Docker в виде конфигурации Windows Server Containers. Теперь же в дополнение к этому варианту Microsoft намерена реализовать контейнерную виртуализации на уровне своего гипервизора Hyper-V.

Различия этих двух вариантов заключаются в том, что в случае Windows Server Containers выделенные контейнеры реализуются на уровне специальных виртуальных или физических машин под Docker как гостевой ОС, а для Hyper-V Containers они исполняются в среде Hyper-V на базе хостовой Windows Server. Если первый вариант по сути является эмуляцией режима контейнера (для поддержки совместимости с технологией Docker), то второй — это уже «нативные» контейнеры со всеми их преимуществами по оптимизации использования вычислительных ресурсов. При этом, как уверяют представители Microsoft, приложения для контейнеров могут быть без изменений развернуты как в Windows Server Containers, так и в Hyper-V Container, а управление обеими средами будет выполняться одними и теми же инструментами. Используемый в будущей Windows Server движок Docker разработан самой Microsoft и представлен в виде открытого проекта в репозитории GitHub.

О целевой задаче проекта Nano Server говорит уже само его название: речь идет о создании ОС с минимальным размером образа, ориентированной исключительно на решение вычислительных задач, в первую очередь — именно в облачном варианте с использованием технологий виртуализации. Создание такого варианта ОС возможно за счет использования фактически только ядра операционной системы с минимальным числом компонентов, безусловно необходимых для исполнения приложений.

Такой облегченный вариант серверной ОС в арсенале Microsoft уже давно есть — это Windows Server Core, но сейчас компания решила сделать еще один шаг в этом направлении: как говорят ее представители, Nano Server по размеру на диске на 93% меньше, чем основная ОС, и в несколько раз меньше, чем Windows Server Core. Но снижение объемов памяти на диске — это не главное достоинство такой системы (дисковая память стоит недорого), основная цель — повышение надежности системы. Избавление от «лишнего веса» будет полезно для «здоровья» ОС, по оценкам Microsoft, это позволит сократить на 92% количество критически важных обновлений и на 80% перезагрузки, связанные с обновлениями и сбоями. Эти данные наглядно иллюстрируют, что представляют собой современные ОС, какова в них доля ядра (то, что в начальном понимании и составляло в свое время понятие «операционная система») и какова доля разного рода обслуживающих и вспомогательных компонентов.

Для достижения таких характеристик Microsoft полностью удалила весь стек средств пользовательского интерфейса, поддержку 32-разрядных (WOW64) и MSI-пакетов, а также целый ряд компонентов Server Core, в том числе службы local logon ил Remote Desktop. Управление ОС осуществляется только удаленно через механизмы WMI и PowerShell. Но при этом в нее добавлены средства Windows Server Roles & Features, реализованные на базе механизмов Features on Demand и DISM.

Большое внимание при этом уделяется поддержке разработчиков приложений: ведутся работы по улучшению удаленных средств управления, передачи файлов, запуска скриптов и отладки, в том числе с помощью новых Web-инструментов. В Visual Studio также появятся новые возможности, ориентированные именно на работу с Nano Server.