ADG Оставить заявку
Блог Инфраструктура 5 мин чтения

Windows Server 2016 RC в лабе: Windows Containers, Nano Server в Hyper-V и Storage Spaces Direct

Разворачиваем Windows Server 2016 RC: тестируем Windows Containers с IIS, Nano Server в Hyper-V и S2D. Собираем матрицу совместимости для клиентов на Server 2008 R2.

Контекст момента

Windows Server 2016 Release Candidate вышел в июне 2016 - финальная тестовая версия перед GA в октябре

Microsoft выпустили Release Candidate Windows Server 2016 - это уже не Technical Preview с явной пометкой «не для серьёзного». RC означает feature freeze: то, что есть сейчас, в GA принципиально не изменится. Мы поставили в лабу и прошлись по трём вещам, которые интересуют нас с точки зрения клиентских инсталляций: Windows Containers с IIS, Nano Server в роли Hyper-V-хоста и Storage Spaces Direct.

Заодно начали собирать матрицу совместимости для клиентов, у которых в production до сих пор Windows Server 2008 R2. Их хватает.

Windows Containers: что изменилось с TP4

В январе мы смотрели на Windows Containers в TP4 и там было «технически работает, практически - вопросы». В RC картина чуть другая.

Docker Engine для Windows теперь ставится через официальный пакет, а не через форк с патчами. Образ microsoft/iis скачивается и поднимается предсказуемо:

Install-PackageProvider -Name NuGet -Force
Install-Module -Name DockerMsftProvider -Force
Install-Package -Name docker -ProviderName DockerMsftProvider -Force

docker pull microsoft/iis
docker run -d -p 80:80 --name iis_test microsoft/iis

IIS стартует, порт 80 на хосте отвечает. Время запуска контейнера - десятки секунд, это никуда не делось. Образ windowsservercore по-прежнему около 9 ГБ. Если вы ждали, что RC станет резко легче - нет, не стало.

Что реально улучшилось: логи IIS внутри контейнера теперь ведут себя предсказуемо, volume mount через -v на хост работает нормально, и сети контейнеров стали чуть менее экзотическими. Docker Compose под Windows Containers всё ещё не в полном объёме, но базовые сценарии поднимаются.

Hyper-V Containers - изолированные контейнеры с отдельным ядром - работают, но требуют вложенной виртуализации, если лаба сама в VM. На железе всё чище.

Nano Server в роли Hyper-V-хоста

В TP4 Nano Server тестировали в основном как платформу для IIS-пакета. В RC попробовали другое: Nano Server как хост для Hyper-V.

Сборка образа через New-NanoServerImage с пакетом Hyper-V:

New-NanoServerImage `
    -Edition Datacenter `
    -DeploymentType Host `
    -MediaPath D:\ `
    -BasePath C:\NanoBase `
    -TargetPath C:\NanoImages\nano-hv01.vhd `
    -ComputerName NANO-HV01 `
    -Compute `
    -OEMDrivers

Загрузился. Hyper-V Manager с удалённой машины подцепился через WinRM без проблем. Виртуальные машины создаются и запускаются нормально. Footprint хоста - примерно 400 МБ оперативки на саму ОС против полутора-двух гигабайт у Server Core с той же ролью.

Где неудобно: диагностировать проблемы на самом хосте - только через Enter-PSSession и PowerShell. Привычных утилит нет. Если что-то пошло не так с сетью или дисками - надо знать, какими командлетами это проверять. Для инженера, который работает с Windows через GUI, это будет стресс. Для тех, кто привык к Server Core или Linux - вполне терпимо.

Storage Spaces Direct: первый взгляд

S2D - это новое в 2016. Концепция: берём несколько серверов с локальными дисками, объединяем в кластер, получаем программно-определяемое хранилище без внешнего SAN. Microsoft позиционирует это как замену дорогим общим массивам в сценариях hyper-converged.

В RC мы подняли двухузловой стенд (минимум для S2D - 2 ноды, рекомендуется 4+). Настройка через PowerShell:

Enable-ClusterStorageSpacesDirect
New-Volume -StoragePoolFriendlyName S2D* -FriendlyName VMData -FileSystem CSVFS_ReFS -Size 500GB

Сам факт, что это поднялось за час на виртуальном железе - уже интересно. ReFS как файловая система для CSV (Cluster Shared Volumes) - новинка, которую Microsoft явно продвигают для Hyper-V.

Производительность на виртуальных дисках в лабе не мерили - там нет смысла. Архитектурно это выглядит как конкурент vSAN от VMware: те же идеи, другая реализация. Насколько это надёжно в production на реальном железе - вопрос открытый, RC есть RC.

Матрица совместимости для 2008 R2

У нас несколько клиентов на сопровождении, где в production Windows Server 2008 R2. Расширенная поддержка 2008 R2 заканчивается в январе 2020 - ещё почти четыре года, но миграционные проекты такого масштаба занимают время, и думать об этом надо сейчас.

Начали собирать матрицу: какие роли и компоненты из 2008 R2 поддерживают прямое обновление до 2016, где нужна промежуточная ступень, где - только перенос с нуля.

Несколько наблюдений из текущего исследования:

  • In-place upgrade с 2008 R2 на 2016 не поддерживается. Только через 2012 R2 как промежуточную ступень - или clean install. Microsoft об этом пишут явно.
  • Active Directory. Контроллеры домена с 2008 R2 в лесу уживаются с 2016-контроллерами нормально - понижение функционального уровня не требуется. Поднять новый DC на 2016 и выводить старые - рабочая стратегия.
  • IIS 7.5 на 2008 R2 vs IIS 10 на 2016. Большинство конфигураций переносятся через appcmd export/import или вручную по applicationHost.config. Проблемы обычно там, где использовались нестандартные модули с нативным кодом.
  • SQL Server. 2008 R2 с SQL Server 2008 - отдельная история, там свои сроки поддержки и своя логика миграции. Это в матрицу идёт отдельной строкой.

Матрица пока в работе - это промежуточный срез, не финальный документ. Будем дополнять по мере тестирования реальных конфигураций из клиентских инвентарей.

Что думаем про RC в целом

RC - это не TP5. Это уже финальная форма продукта. Nano Server стал чуть удобнее в управлении, Windows Containers - чуть стабильнее, Storage Spaces Direct появился как полноценная фича, а не набросок.

При этом Windows Containers всё ещё не для тех, кто хочет запустить docker-compose up и получить привычный результат как на Linux. Экосистема образов маленькая, базовые образы тяжёлые, время запуска другое. Это нормально для RC - но иллюзий питать не стоит.

GA обещан в октябре. До тех пор - тестовая лаба и матрица совместимости.

Контакт

Нужна такая же инженерная работа?

Опишите задачу и контекст. Ответим в течение рабочего дня, при необходимости подпишем NDA.