Windows Server 2019 GA: строим roadmap миграции для клиентов на WS2012R2
Microsoft объявила дату GA для WS2019. Разбираем Storage Migration Service, WSL и контейнеры с точки зрения реальной миграции с WS2012R2 - что обещано и что проверим.
Microsoft объявила дату GA для Windows Server 2019 на октябрь 2018 года
Microsoft на этой неделе объявила дату GA для Windows Server 2019: октябрь 2018. После нескольких месяцев с Insider Preview и первого знакомства с бетой у нас накопился список вопросов от клиентов, которые сидят на WS2012R2 и не торопятся никуда переезжать. Дата GA - это уже повод садиться и составлять roadmap.
Ситуация с WS2012R2 у клиентов
WS2012R2 живёт в продакшне у заметной части наших managed-клиентов. Причины стандартные: поставили давно, работает, лицензии куплены, приложения не протестированы на новой ОС. Миграция откладывалась, потому что боль не острая - Microsoft продолжает патчить, поддержка идёт до 2023 года.
Но у WS2012R2 есть конкретный предел: он не умеет нормально работать с контейнерами, WSL там нет в принципе, и Storage Spaces Direct либо отсутствует, либо в виде, на который без слёз не посмотришь. Если у клиента есть хоть какой-то вектор на контейнеризацию или новые рабочие нагрузки - разговор о миграции становится предметным.
Поэтому после анонса даты GA мы сели и собрали roadmap: что проверяем, что тестируем, что говорим клиентам.
Storage Migration Service - главный аргумент
До WS2019 перенос файлового сервера - это либо robocopy с простоем, либо DFS с постепенным переездом, либо что-нибудь третье, что каждый раз изобреталось заново. Storage Migration Service - попытка Microsoft автоматизировать именно этот процесс.
Схема работы, как её описывает Microsoft:
- Инвентаризация - SMS сканирует источник: файловая структура, разрешения, конфигурация shares.
- Перенос данных - копирует данные на новый сервер-назначение в фоне, пока источник работает.
- Cutover - финальная синхронизация и переброска identity: имя, IP-адрес, shares - новый сервер «становится» старым для клиентов без изменения UNC-путей.
Последний пункт - ключевой. Если cutover работает как обещано, клиенты вообще не замечают миграции: путь \\FILESERVER\docs продолжает работать, потому что новый сервер взял имя и адрес старого.
Проверять будем в октябре на реальном тесте. На Preview SMS уже было видно, но работало с оговорками - несколько share-конфигураций инвентаризировались некорректно. Надеемся что GA-версия это подтянула.
WSL на сервере: уже не бета
WSL в Server Core Preview мы смотрели в июле - работало, но не без сюрпризов. После обновлений Ubuntu внутри WSL иногда отваливалась, документация расходилась с реальностью.
В GA-версии хочется увидеть:
- Стабильность WSL после Windows Update - это была конкретная боль в Preview.
- Предсказуемое поведение файловой системы через
/mnt/c/- для Ansible-скриптов, которые работают с Windows-конфигами, производительность важна. - Нормальную документацию по установке дистрибутивов в Server Core без Microsoft Store.
В managed-инфраструктуре основной сценарий для WSL - это запуск Linux-утилит и Ansible на Windows-нодах без отдельной jump-VM. Не замена Linux, но конкретно экономит время при управлении гибридными средами.
Контейнеры: проверим совместимость с K8s
WS2019 заявляет улучшенную поддержку CNI-плагинов для Windows-контейнеров в Kubernetes. В Preview Flannel в l2bridge-режиме поднялся без специфических манцевров - уже лучше чем в WS2016. Проверим в GA с реальной нагрузкой.
Размер базовых образов в 2019 ощутимо меньше чем в 2016 - это практически важно: деплой Windows-контейнеров в 2016 был медленным именно из-за объёма образов. Посмотрим насколько это улучшение выдерживает реальные пайплайны.
Что входит в roadmap для клиентов на WS2012R2
После анонса даты GA составили примерный порядок действий:
- Октябрь - дождаться GA, поднять тестовую среду с WS2019, прогнать SMS на тестовый файловый сервер.
- Ноябрь - составить матрицу совместимости приложений для каждого клиента. WS2012R2 -> WS2019 - два поколения, там могут быть сюрпризы с .NET-зависимостями.
- Декабрь - первые пилоты миграции с нетребовательными клиентами. Файловые серверы - первые кандидаты, там меньше всего переменных.
Спешить некуда - WS2012R2 поддерживается ещё несколько лет. Но начать тестирование лучше сейчас, пока есть время разобраться с нюансами без давления дедлайна.
Что реально неизвестно
SMS на Preview вёл себя предсказуемо только на простых конфигурациях. Большой файловый сервер с DFS Replication, тонкими NTFS-разрешениями и нестандартными share-конфигурациями - пока открытый вопрос. Будем тестировать на октябрьской GA и фиксировать где инструмент справляется сам, а где нужна ручная доработка.
WSL в серверном варианте тоже ещё не получал настоящей нагрузки - только Preview с тестовым стендом. Насколько он выдерживает продакшн-использование для автоматизации - посмотрим.
В общем, GA в октябре - это точка старта для реальных тестов, а не финишная черта. Разворачивать клиентам в ноябре-декабре будем только то, что прошло наш стенд.