Невозможно установить hyper v процессор не поддерживает преобразование адресов второго уровня slat
В одной из тестовых задач понадобилось установить компонент виртуализации Hyper-V на виртуальной машине с ОС Windows 10 (применимо и к Windows Server 2016), запущенной на гипервизоре VMWare ESXi. Т.е. нужно организовать вложенную виртуализацию Hyper-V на VMWare ESXi.
Сначала пару слов в вложенной виртуализации. Вложенная виртуализация ( Nested Virtualization ) – возможность запускать гипервизор внутри виртуальной машины на другом гипервизоре. В Hyper-V полноценная поддержка вложенной виртуализации появилась Windows Server 2016 / Windows 10 Anniversary Update, в VMWare технология вложенной виртуализации работает уже давно (появилась еще в ESXi 5.0).
Имеем: хост виртуализации VMWare ESXi 6.0, на нем запущена виртуальная машина с Windows 10 1709.
При попытке установить роль гипервизор Hyper-V (компонент называется Низкоуровневая оболочка Hyper-V ) с помощью функции включения/ отключения компонентов в классической панели управления Windows 10, данная опция оказалась недоступна. В качестве причины указывается:
Невозможно установить Hyper-V: у процессора отсутствуют необходимые возможности виртуализации
Hyper-V cannot be installed: The processor does not have the required virtualization capabilities
Примечание . В более старых версиях ESXi, в которых отсутствует данная опция, а также в настольном VMWare Workstation аналогичный эффект вызывается за счет добавления следующих опций в конфигурационный файл виртуальной машины (*.vmx).
hypervisor.cpuid.v0 = “FALSE”
mce.enable = “TRUE”
vhv.enable= "TRUE"
В клиенте vSphere данные опции можно добавить в настройках ВМ. Вкладка Options -> General -> Configure parameters . Добавьте две новые строки с данными параметрами (кнопка Add Row ).
Включаем виртуальную машину с Windows 10 и еще раз пытаемся установить роль Hyper-V. Система теперь перестала определять, что она работает внутри другого гипервизора, но теперь появилась другая ошибка:
Не удается установить Hyper-V: у процессора отсутствуют возможности преобразования адресов второго уровня (SLAT)
Hyper-V cannot be installed: the processor dose not support second level address translation (SLAT).
Т.е. процессор виртуальной машины помимо поддержки виртуализации должен поддерживать технологию SLAT — возможность виртуализации страниц памяти и передачи их под прямой контроль гостевой ОС. В терминологии Intel эта фича называется Еxtended Page Tables ( EPT ), у AMD — Rapid Virtualization Indexing ( RVI ).
Проверим поддержку SLAT процессором с помощью команды:
Команда в разделе «Требования Hyper-V» должна вернуть, что отсутствует поддержка SLAT.
Second Level Address Translation: No
Преобразование адресов второго уровня: Нет
В этом случае нужно изменить параметры процессора виртуальной машины. В веб клиенте в секции CPU/MMU Virtualization нужно выбрать Hardware CPU and MMU .
В «классическом» клиенте аналогичная опция находится на вкладке Options в секции CPU/MMU Virtualization и называется ” Use Intel VT-x/AMD-V for instruction set virtualization and Inet EPT/AMD RVI for MMU virtualization ”.
Запустите виртуальную машину Windows 10 и убедитесь, что ее процессор теперь поддерживает SLAT. Теперь можно установить все компоненты роли Hyper-V и запускать внутри виртуалки Win10 собственные виртуальные машины.
Для успешного запуска роли Hyper-V в новом Windows Server 2016, необходимо убедиться, что ваш процессор поддерживает функцию SLAT (Second Level Address Translation — преобразования адресов второго уровня). В предыдущих версиях Hyper-V на Windows Server 2012/R2 наличие SLAT не являлось обязательном, а лишь рекомендованным требованием.
Поэтому прежде, чем выполнять миграцию старых серверов с Windows Server 2012/R2 на 2016, убедитесь, что они поддерживают SLAT. Сделать этом можно с помощью утилиты CoreInfo (от Sysinternals):
В том случае, если ваш процессор поддерживает, в строке EPT должна стоять звездочка ( * ). Если не поддерживает – минус (– ).
Кроме того, эту же информацию можно получить и с помощью встроенной утилиты systeminfo. Если SLAT поддерживается, в разделе Требования Hyper-V будет указано «Преобразование адресов второго уровня: Да».
Если SLAT не поддерживается (как в случае моего старенького сервера HP DL380 G5), в строке Second Level Address Translation будет указано No.
Соответственно, при попытке установить роль Hyper V на Windows Server 2016 на таком старом оборудовании, появится ошибка:
The validation process found problems on the server from which you want to install features. The selected features are not compatible with the current configuration of your selected server.
Hyper-V cannot be installed. The processor does not support second level address translation (SLAT)
SLAT или преобразование адресов второго уровня — это технология, которая работает с Hyper-V. Он поддерживается процессорами Intel и AMD. Это называется Extended Page Table (EPT) в процессорах Intel и Rapid Virtualization Indexing (RVI) в процессорах AMD. В этом посте мы увидим, что такое SLAT, как проверить, поддерживает ли компьютер SLAT, и как включить преобразование адресов второго уровня в BIOS.
Как это устроено
Процессор имеет трансляционный буфер преобразования (TLB), который поддерживает трансляцию адресов виртуальной памяти в физическую. TLB — это кэш на процессоре, который содержит недавно использованные отображения из таблицы страниц. Когда требуется преобразование виртуального адреса в физический, TLB проверяет свой кэш, чтобы определить, содержит ли он информацию отображения. Если TLB содержит совпадение, адрес физической памяти предоставляется, и данные доступны. Если TLB не содержит записи, возникает ошибка страницы, и Windows проверяет таблицу данных на соответствие информации. Если Windows находит сопоставление, оно записывается в TLB, происходит преобразование адреса, а затем осуществляется доступ к данным. Из-за этого буфера накладные расходы гипервизоров существенно снижаются.
Решение 4. Убедитесь, что вы не используете домашнюю версию
Hyper-V — отличная функция, однако не все версии Windows 10 поддерживают ее. Как вы знаете, существуют разные версии Windows 10, и у каждой версии разные цены и функции.
К сожалению, Hyper-V недоступен в домашних версиях Windows 10, поэтому, если вы используете домашнюю версию, вам не повезло. Единственный способ использовать Hyper-V — перейти на версию Professional, Education или Enterprise.
Решение 3 — Удалить стороннее программное обеспечение
Hyper-V — это встроенное программное обеспечение для виртуализации в Windows 10, но, к сожалению, оно плохо работает со сторонними приложениями. Иногда стороннее программное обеспечение может устанавливать свои собственные драйверы, которые могут мешать работе Hyper-V.
Если Hyper-V не удается установить, обязательно удалите все сторонние программы виртуализации с вашего ПК. У многих пользователей были проблемы с VirtualBox , но после его устранения проблема была решена. В дополнение к VirtualBox пользователи сообщали о проблемах с Check Point Endpoint Security VPN , поэтому, если вы используете это приложение, обязательно удалите его.
Чтобы проблема больше не возникала, важно полностью удалить проблемное приложение. Самый простой способ сделать это — использовать программное обеспечение для удаления, такое как Revo Uninstaller .
Эти типы приложений удаляют все файлы и записи реестра, связанные с приложением, обеспечивая его полное удаление с вашего компьютера.
Решение 2 — Обновите вашу систему
Симптом:
Hyper-V нельзя включить даже после выполнения чистой установки сборок Windows 10 10049 или после обновления со сборки, в которой не был включен Hyper-V.
Причина:
- Оборудование не поддерживается. Старые машины могут не иметь возможности включать Hyper-V, если оборудование несовместимо. Следовательно, одна из причин, по которой вы не можете включить Hyper-V, заключается в том, что оборудование было признано недопустимым. В этом случае вам может потребоваться обновить процесс программного обеспечения или использовать другую систему с совместимым процессором.
- Файл wstorvsp.inf не был правильно добавлен в хранилище драйверов во время онлайн-обслуживания драйверов.
Решение:
Если файл wstorvsp.inf не был правильно добавлен в драйвер, Microsoft предоставляет Центр обновления Windows для решения проблемы. Чтобы обновление работало, вы должны запустить Windows 10 Technical Preview build 10049. Вы также должны перезагрузить компьютер после установки обновления.
- Найдите файл Windows ISO, который вы использовали для установки операционной системы. Щелкните правой кнопкой мыши и выберите «Mount».
- Распакуйте файл Iso и найдите папку Sources sxs. Скопируйте эту папку на любой диск, который не является системным корневым диском, например, диск F :.
- Теперь откройте Windows PowerShell или административную командную строку и введите следующую команду.
- dism / online / enable-feature / namename: Microsoft-hyper-v-all / All / LimitAccess / Source:
- После появления запроса перезагрузите систему. Функция Hyper-V будет готова к использованию после перезагрузки.
Как включить SLAT из BIOS
Чтобы включить функцию SLAT, вам просто нужно включить виртуализацию в BIOS.
Надеюсь, это руководство вам помогло.
.
Windows 8 принесет много новых функций в вычислительную среду Windows, одной из которых будет Hyper-V. Для запуска Hyper-V ваш процессор должен поддерживать трансляцию адресов второго уровня (SLAT). Читайте дальше, чтобы узнать, поддерживает ли ваш процессор SLAT.
Как я узнаю, что у меня есть SLAT?
Чтобы узнать, поддерживает ли ваш процессор SLAT, вам необходимо скачать копию CoreInfo (см. Ссылку в конце). Как только вы загрузили его, вам нужно будет извлечь его. Вы должны извлечь его так, чтобы coreinfo находилась в корне вашего диска C: \.
Вам нужно открыть командную строку с повышенными правами и прочитать «Запуск от имени администратора».
Теперь вам нужно перейти на диск C: вы можете сделать это, набрав «cd c: \»
Чтобы увидеть, поддерживает ли ваш процессор SLAT, вам нужно запустить «coreinfo.exe -v». На Intel, если ваш процессор поддерживает SLAT, в строке EPT будет звездочка. Это видно на скриншоте ниже.
На AMD, если ваш процессор поддерживает SLAT, в строке NPT будет звездочка.
Если ваши процессоры не поддерживают SLAT, вы увидите черту в строках EPT или NPT.
Windows 10 поддерживает клиент Hyper-V ; надежная, высокопроизводительная и гибкая технология виртуализации клиентов, которая позволяет пользователям одновременно запускать несколько операционных систем на своем компьютере Windows. Вы можете включить функцию Hyper-V в разделе «Включение или отключение функции Windows» на рабочем столе. Вы также можете включить его из Windows PowerShell, а также из командной строки. Иногда вы можете столкнуться с проблемами при установке Hyper-V в Windows 10. Важно сначала проверить, поддерживает ли ваш компьютер Hyper-V.
Hyper-V — отличная функция, но иногда вы можете столкнуться с проблемами при ее установке. Что касается проблем, вот некоторые распространенные проблемы, с которыми столкнулись пользователи:
Решение 6 — Изменить ваш реестр
Несколько пользователей сообщили, что система EFI с включенной функцией безопасной загрузки может вызвать проблемы с Hyper-V и помешать его установке. Однако вы можете решить эту проблему, выполнив несколько команд в командной строке.
Имейте в виду, что эти команды изменят ваш реестр, но если вам это неудобно, вы можете пропустить это решение. Чтобы решить эту проблему, вам нужно сделать следующее:
- Запустите командную строку от имени администратора.
- Теперь выполните следующие команды:
- reg delete HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ DeviceGuard / v Включить виртуализациюBasedSecurity
- reg delete HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ DeviceGuard / v RequirePlatformSecurityFeatures
- bcdedit / set loadoptions DISABLE-LSA-ISO, DISABLE-VBS
После выполнения этих команд проверьте, сохраняется ли проблема.
Решение 1. Проверьте требования к оборудованию
Hyper-V — отличная функция, но если вы хотите ее использовать, сначала вы должны соответствовать определенным требованиям к оборудованию. Чтобы использовать Hyper-V, ваш компьютер должен соответствовать следующим требованиям:
- 64-битная Windows
- 4 ГБ ОЗУ
- Трансляция адресов второго уровня (SLAT), также известная как быстрая индексация виртуализации (RVI)
Тем не менее, вы можете легко проверить, соответствует ли ваш компьютер требованиям к оборудованию. Для этого вам нужно будет запустить одну команду в командной строке. Для этого просто выполните следующие действия:
Если во всех записях раздела «Требования Hyper-V» указано «Да», это означает, что ваш ПК может поддерживать и использовать Hyper-V. С другой стороны, если некоторые функции недоступны, вам нужно включить их в BIOS .
Предотвращение выполнения данных и виртуализация, включенная в функции встроенного ПО, могут быть включены в BIOS. С другой стороны, такие функции, как расширения режима VM Monitor и функции трансляции адресов второго уровня , связаны с вашим оборудованием, и, если эти функции недоступны, вам потребуется обновить ваш ЦП.
Преобразование адресов второго уровня (SLAT)
SLAT поддерживается на Nehalem процессоры архитектуры и новее для Intel, а также Барселона процессоры и новее для AMD.
Особенностью этих процессоров является то, что они имеют Трансляция Lookaside Buffer или TLB. Эти процессоры поддерживают преобразование физической памяти. Этот тип кеша содержит все недавно использованные сопоставления из таблицы страниц процессоров. Встроенный кэш используется для определения информации сопоставления с помощью TLB виртуального адреса, который необходимо преобразовать в физический адрес. Если эти данные не найдены, возникает ошибка страницы, и операционная система ищет информацию о сопоставлении в таблице страниц. Если запись относительного сопоставления найдена, она напрямую записывается в TLB, и происходит преобразование адреса.
Такое использование Hyper-V больше полагается на виртуальные ресурсы и виртуальные функции и, следовательно, снижает накладные расходы на преобразование физического гостевого адреса в реальный физический адрес. Таким образом, сохраняется много физических ресурсов, и их можно использовать для других функций.
Решение 7. Установите компоненты Hyper-V отдельно
По словам пользователей, если вы не можете установить Hyper-V на свой ПК, вы можете обойти эту проблему, просто установив компоненты Hyper-V отдельно. Это довольно просто, и вы можете сделать это, выполнив следующие действия:
После перезагрузки компьютера проблема должна быть полностью решена, и Hyper-V будет установлен на ваш компьютер.
Ну и что?
Со всей шумихой вокруг Windows 8 стало известно, что Windows 8 будет поставляться с Hyper-V в качестве платформы для витализации. Хотя это может показаться не всем на первый взгляд, считалось, что это будет единственная форма обратной совместимости, в некоторой степени похожая на XP Mode. SLAT потребуется для Hyper-V в Windows 8.
Решение 5. Используйте командную строку
Если вы не можете установить Hyper-V на ПК с Windows 10, возможно, в вашей системе есть небольшая ошибка, которая мешает вам установить его. Несколько пользователей сообщили, что они исправили этот сбой, просто запустив одну команду в командной строке.
Для этого просто выполните следующие простые шаги:
После выполнения команды перезагрузите компьютер и попробуйте снова установить Hyper-V.
Как проверить, поддерживает ли компьютер SLAT
Есть два способа проверить, поддерживает ли ваш компьютер SLAT:
- Используйте служебную программу CoreInfo из Microsoft TechNet.
- Использовать Включение и выключение функций Windows полезность.
1]Используйте утилиту CoreInfo из Microsoft TechNet
Загрузите архив CoreInfo из Technet. Распакуйте содержимое архива в корень раздела операционной системы.
Откройте командную строку Windows от имени администратора, введите следующую команду, чтобы перейти в соответствующее место:
Затем выполните следующую команду:
Вы увидите результат, подобный этому:
В зависимости от процессора, который вы используете, вы получите возможность EPT или RVI и будет иметь актуальную информацию о его наличии.
2]Включение и выключение функций Windows
Открой Включение и отключение функций Windows на панели Панели управления.
Разверните опцию для Hyper-V.
Если параметр для платформы Hyper-V выделен серым цветом, SLAT не поддерживается.
Решение 8 — Начать все с начала
В Windows 10 есть полезная функция «Свежий запуск», которая позволяет быстро и легко переустановить Windows 10. Перед началом «Свежего запуска» рекомендуется создать резервную копию файлов, чтобы не потерять их. Этот процесс удалит установленные вами приложения, поэтому вам придется установить их заново вручную.
Чтобы начать все сначала, вам нужно сделать следующее:
После завершения процесса у вас будет новая установка Windows 10, и Hyper-V сможет ее установить.
Отсутствие возможности использовать Hyper-V может быть большой проблемой для некоторых пользователей, но мы надеемся, что вам удалось решить эту проблему с помощью одного из наших решений.
Примечание редактора : этот пост был первоначально опубликован в августе 2016 года и с тех пор был полностью переработан и обновлен для обеспечения свежести, точности и полноты.
Что такое SLAT?
Трансляция адресов второго уровня — это технология, представленная в процессорах Intel и AMD. Обе компании называют свои версии технологии разными именами, версия Intel называется EPT (Extended Page Tables), а AMD — RVI (Rapid Virtualization Indexing). Intel представила расширенные таблицы страниц в своих процессорах, построенных на архитектуре Nehalem, в то время как AMD представила RVI только в своем третьем поколении процессоров Opteron под кодовым названием Barcelona. Hyper-V использует это для выполнения большего количества функций управления памятью виртуальной машины и сокращения накладных расходов на преобразование гостевых физических адресов в реальные физические адреса. Благодаря этому время ЦП гипервизора значительно сокращается, и для каждой виртуальной машины сохраняется больше памяти.
Читайте также: