Если вы поставщик облачных услуг или хотите построить платформу для размещения приложений следующего поколения, Windows Server 2016 - ключ для решения этой задачи. В основе любого программного обеспечения центра обработки данных, лежат три основных компонента - вычисления, хранение и сети. Рассмотрим более подробно первый из них.
В этой статье мы сосредоточимся на вычислениях, с упором на Hyper-V и новинки в Windows Server 2016. Обсудим функции, которые легли в основу программного обеспечения для центров обработки данных.
Содержание:
Hyper-V в Windows Server 2016
Технология виртуализации Microsoft Hyper-V была усовершенствована в Windows Server 2016 несколькими способами, рассмотрим некоторые из этих усовершенствований. Во-первых, появилась новая функция, под названием «Группы виртуальных машин», и новая межплатформенная виртуальная машина (VM), с возможностью мобильности платформы. Во-вторых, новая конфигурационная версия VM, новый формат конфигурационного файла и новая поддержка использования контрольных точек в производственных средах. И наконец, новые возможности добавления и удаления горячих сетевых адаптеров и памяти, которые теперь поддерживаются ролью Hyper-V.
Масштабируемость
Windows Server 2016 предоставляет новую масштабируемость для виртуализации любой, без исключения, рабочей нагрузки. В следующей таблице показано сравнение пути, пройденного от Windows Server 2012 / 2012R2 до настоящего времени:
Описание | Windows Server 2012/2012 R2, Standard и Центр обработки данных | Windows Server 2016 Standard, и Центр обработки данных |
Поддержка физической (основной) памяти | До 4 Тб на физический сервер | До 24 ТБ на физический сервер (6x) |
Поддержка физических (хост) логических процессоров | До 320 LP | До 512 LP |
Поддержка памяти VM | До 1 ТБ на VM | До 16 Тбайт на VM (16x) |
Поддержка виртуальных процессоров VM | До 64 VP (виртуальных точек) на VM | До 240 VP (виртуальных точек) на VM (3.75x) |
Вложенная виртуализация
Вложенная виртуализация позволяет запускать Hyper-Vв Windows Server 2016, в качестве гостевой виртуальной машины, работающей на Hyper-V! Она предоставляет расширения аппаратной виртуализации для ВМ. Для запуска этой технологии есть некоторые требования:
- Windows Server 2016 или Windows 10
- Минимум 4 ГБ ОЗУ для хоста
- Процессоры Intel VT-x (на момент написания статьи)
- Поддержка EPT
- Вложенная VM, на которой выполняется Hyper-V, должна отключать динамическую память
Чтобы включить вложенную виртуализацию, сначала на хосте, для созданной, но ещё не включённой вами виртуальной машины, вы должны запустить следующую команду Windows PowerShell.
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
Если вы хотите предоставить параметры подключения гостевых виртуальных машин, которые будут находиться внутри вашей вложенной машины Hyper-V, у вас есть два варианта. Первый вариант - включить спуфинг MAC для гостевой виртуальной машины. Это позволит гостевым виртуальным машинам отправлять трафик по сети. Чтобы включить спуфинг MAC-адресов на главном коммутаторе Hyper-V, используйте следующую команду:
Get-VMNetworkAdapter -VMName <VMName> | Set-VMNetworkAdapter -MacAddressSpoofing On
Второй вариант - NAT. На вложенных виртуальных машинах Hyper-V, с помощью следующих команд, вам нужно включить NAT:
new-vmswitch -name VmNAT -SwitchType Internal
New-NetNat –Name LocalNAT –InternalIPInterfaceAddressPrefix “192.168.100.0/24”
Когда это сделано, необходимо назначить IP-адрес для нового внутреннего адаптера. По существу, это будет адрес шлюза для виртуальных машин, работающих под вложенным Hyper-V. Для этого используйте такие команды Windows PowerShell:
get-netadapter "vEthernet (VmNat)" | New-NetIPAddress -IPAddress 192.168.100.1 -AddressFamily IPv4 -PrefixLength 24
Каждая вложенная гостевая VM должен иметь настроенный IP-адрес и заданный следующим образом шлюз:
get-netadapter "Ethernet" | New-NetIPAddress -IPAddress 192.168.100.2 -DefaultGateway 192.168.100.1 - AddressFamily IPv4 -PrefixLength 24
Подробнее смотрите по следующим ссылкам https://msdn.microsoft.com/virtualization/hyperv_on_windows/user_guide/.
Безопасные загрузки Linux
Теперь, созданные как VM Generation 2, виртуальные машины Linux, могут использовать безопасной загрузки. Для этого необходимо включить в VM использование Microsoft UEFI Cert Authority, выполнив следующую команду Windows PowerShell:
Set-VMFirmware vmname -SecureBootTemplate MicrosoftUEFICertificateAuthority
А также, безопасный загрузки можно включить через диспетчер Hyper-V или диспетчер виртуальных машин. В настоящее время только некоторые дистрибутивы поддерживают безопасные загрузки:
- Ubuntu 14.04 и позднее
- SUSE Linux Enterprise Server 12 и более поздние версии
- Red Hat Enterprise Linux 7.0 и более поздние версии
- CentOS 7.0 и более поздние версии
Службы интеграции
Обновления служб интеграции для гостевых ОС Windows распространяются через центр обновления Windows. Для поставщиков услуг и частных «облачных» хостов это позволяет контролировать применение владельцами виртуальных машин обновлений. Теперь арендаторы могут обновлять свои виртуальные машины Windows (все обновления, включая службы интеграции), используя один метод.
Усовершенствования в диспетчере Hyper-V
В диспетчере Hyper-V есть некоторые новые усовершенствования. Давайте взглянем на них:
- Поддержка альтернативных учётных данных. Теперь, в диспетчере Hyper-V, при подключении к другому Windows Server 2016 или удалённому хосту Windows 10, можно использовать другой набор учётных данных. А также, чтобы облегчить последующий вход, вы можете сохранить эти учётные данные.
- Управление более ранними версиями. С помощью диспетчера Hyper-V Windows Server 2016 и Windows 10, вы можете управлять компьютерами под управлением Hyper-V Windows Server 2012, Windows 8, Windows Server 2012 R2 и Windows 8.1.
- Обновление протокола управления. Диспетчер Hyper-V был обновлён для коммуникации с удалёнными хостами Hyper-V. Для этого используется, разрешающий проверку подлинности CredSSP, Kerberos или NTLM, протокол веб-служб управления (WS-MAN). Когда вы, для подключения к удалённому хосту Hyper-V, используете CredSSP, вы можете сделать живую миграцию, без включения ограниченного делегирования в Active Directory. А также, инфраструктура на основе WS-MAN упрощает настройку хоста для удалённого управления. WS-MAN подключается через открытый по умолчанию порт 80.
Защита ресурсов хоста
Одной из проблем с виртуализацией, всегда была борьба за то, чтобы ВМ не использовала больше своей доли ресурсов. Это чрезмерное использование ресурсов, может повлиять на производительность основной системы и гостевой ВМ. По умолчанию этот мониторинг и защита выключены. Чтобы включить их, выполните следующее:
Set-VMProcessor -EnableHostResourceProtection $true
Включится процесс мониторинга, который сканирует чрезмерное использование и будет ограничивать ресурсы любой виртуальной машины.
Подключение в режиме ожидания
При инсталляции на компьютер роли Hyper-V, которая использует модель питания Always On/Always Connected (AOAC), теперь доступно состояние питания Connected Standby.
Назначение устройства
Используя эту функцию, вы можете дать VM прямой и эксклюзивный доступ к некоторым PCIe аппаратным устройствам. Использование этого устройства обходит стек виртуализации Hyper-V, что приводит к более быстрому доступу.
Подробнее смотрите по следующей ссылке http://blogs.technet.com/b/virtualization/archive/2015/11/19/ discrete-device-assignment.aspx.
Windows PowerShell Direct
Windows PowerShell Direct даёт вам возможность запускать на виртуальной машине команды Windows PowerShell с хоста. Windows PowerShell работает между хостом и VM. Это означает, она не нуждается в сети или требованиях к брандмауэру, и работает независимо от конфигурации удалённого управления.
Windows PowerShell Direct работает подобно удалённому Windows PowerShell, но не требует подключения к сети.
Для подключения к виртуальной машине с хоста, используйте следующий командлет Enter-PSSession:
Enter-PSSession -VMName <VMName>
У вас запросят учётные данные, а затем, вы в этом сеансе PSSession, сможете управлять виртуальной машиной. Командлет Invoke-Command был обновлён для выполнения подобных задач. Например, вы можете выполнить скрипт из хоста в виртуальную машину, как показано здесь:
Invoke-Command -VMName <vmname> -FilePath C:\Scripts\MyTestScript.ps1
Remote Direct Memory Access
В Windows Server 2016 вы можете включить Remote Direct Memory Access (RDMA) на не объединённых сетевых адаптерах NIC или без Switch Embedded Teaming (SET). Более подробная информация о работе с RDMA на https://technet.microsoft.com/ library/mt403349.aspx.