Создание VM Templates в System Center VMM 2016

В этой статье мы рассмотрим создание шаблона на базе ОС Windows Server 2016 Standart для System Center Virtual Machine Manager

Подготовка

Прежде всего необходимо подготовить VM (Виртуальную машину) из которой будет создан в дальнейшей шаблон.
Наши действия будут состоять из несколько этапов:

  • Установка Windows Server 2016 на виртуальную машину, настройка
  • Установка обновлений для системы
  • Удаление старых обновлений
  • Оптимизация

В этой статье мы не будем рассматривать создание виртуальной машины и установку системы а перейдем ко второму шагу.

Установка обновлений

Следуя рекомендации Microsoft, первым делом нам необходимо установить последние обновление обслуживания стека SSU (Servicing stack update) для операционной системы перед тем как мы будем устанавливать последнее версии накопительных обновления LCU (Latest Cumulative Update).
Установка SSU повышает надежность процесса обновления для устранения потенциальных проблем при установке LCU и применение исправления для системы безопасности Microsoft.

Для этого запускаем штатную утилиту sconfig для быстрой начальной настройки Windows Server. Фактически это набор скриптов.
Для этого в командной строке выполняем:

sconfig
Выбираем 6 пункт — установка обновлений

Указываем найти все обновления и выбираем установку SSU.

Выбираем установку SSU

Далее устанавливаем остальные обновления.

Установка всех доступных обновлений

Удаление скаченных обновлений

Следующим шагом мы удаляем скаченные обновления Windows и пакетов обновлений из папки WinSxS, это позволит нам уменьшить размер системы для экономии места на HDD .
Делать это или нет каждый решает сам, так как очистка папки приведет к тому, что вы не сможете удалить (откатить) какие-либо текущие обновления служб или пакеты обновлений после выполнения очистки. Поэтому я рекомендую это делать с уже протестированными обновлениями.

Для очистки мы в командной строке выполняем:

Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase

StartComponentCleanup — удаляет все предыдущие версии обновлений в хранилище обновлений.
ResetBase — удаляет скаченные обновления, убирает возможность «откатиться назад».

Ожидаем выполнения процесса

Оптимизация

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

Отключаем протокол SMB1.
Запускаем PowerShell с правами Администратора и выполняем:

Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol

Включаем защиту от уязвимостей Meltdown и Spectre, которые затрагивают большое количество чипсетов CPU.

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "FeatureSettingsOverride" -Value 8 -PropertyType DWord -ErrorAction SilentlyContinue

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "FeatureSettingsOverrideMask" -Value 3 -PropertyType DWord -ErrorAction SilentlyContinue

Очищаем журналы логов. Из командной строки от имени Администратора выполняем:

for /F "tokens=*" %1 in ('wevtutil.exe el') DO wevtutil.exe cl "%1"

Включаем RDP

Выключаем VM и делаем compact (Дефрагментацию) итоговому vhdx.
Compact удаляет обнуленные блоки динамически расширяемых VHD / VHDX, чтобы они занимали меньше места на физическом диске.