Управление средствами интеграции Hyper-V
Службы Integration Services Hyper-V повышают производительность виртуальных машин и предоставляют удобные функции, используя двустороннее взаимодействие с узлом Hyper-V. Многие из этих служб являются удобствами, такими как копирование гостевых файлов, а другие важны для функциональных возможностей виртуальной машины, таких как драйверы искусственных устройств. Этот набор служб и драйверов иногда называются компонентами интеграции. Вы можете контролировать, работают ли отдельные службы удобства для любой виртуальной машины. Компоненты драйвера не предназначены для обслуживания вручную.
Дополнительные сведения о каждой службе интеграции см. в разделе "Службы Интеграции Hyper-V".
Внимание
Каждая служба, которую вы хотите использовать, должна быть активирована как в хосте, так и в гостевой системе, чтобы функционировать. При включении службы на узле он автоматически запускается в гостевом компьютере. Все службы интеграции, кроме гостевого интерфейса службы Hyper-V, по умолчанию находятся в гостевых операционных системах Windows. Службы можно включить и отключить по отдельности. В следующих разделах показано, как это сделать.
Включение или отключение службы интеграции с помощью диспетчера Hyper-V
В центральной области щелкните правой кнопкой мыши виртуальную машину и выберите "Параметры".
В области окна «Параметры» с левой стороны, в разделе «Управление», выберите «Integration Services».
На панели служб Integration Services перечислены все службы интеграции, доступные на узле Hyper-V, и доступ к которым разрешен для виртуальной машины.
Включение или отключение службы интеграции с помощью PowerShell
Для этого в PowerShell используйте Enable-VMIntegrationService и Disable-VMIntegrationService.
В следующих примерах показано, как включить и отключить службу интеграции копирования гостевых файлов для виртуальной машины с именем DemoVM.
Получите список запущенных служб интеграции:
Get-VMIntegrationService -VMName "DemoVM"
Выходные данные должны выглядеть так:
VMName Name Enabled PrimaryStatusDescription SecondaryStatusDescription ------ ---- ------- ------------------------ -------------------------- DemoVM Guest Service Interface False OK DemoVM Heartbeat True OK OK DemoVM Key-Value Pair Exchange True OK DemoVM Shutdown True OK DemoVM Time Synchronization True OK DemoVM VSS True OK
Включите интерфейс гостевой службы:
Enable-VMIntegrationService -VMName "DemoVM" -Name "Guest Service Interface"
Убедитесь, что интерфейс гостевой службы включен:
Get-VMIntegrationService -VMName "DemoVM"
Отключите интерфейс гостевой службы:
Disable-VMIntegrationService -VMName "DemoVM" -Name "Guest Service Interface"
Проверка версии интеграционных служб гостевой операционной системы
Некоторые функции могут работать неправильно или вообще не работать, если службы интеграции гостя не обновлены. Чтобы получить сведения о версии Для Windows, войдите в гостевую операционную систему, откройте командную строку и выполните следующую команду:
REG QUERY "HKLM\Software\Microsoft\Virtual Machine\Auto" /v IntegrationServicesVersion
Запуск и остановка службы интеграции с гостя Windows
Чтобы служба интеграции была полностью функциональной, соответствующая служба должна выполняться в гостевой среде, а также быть активирована на узле. В гостевых системах Windows каждая служба интеграции указана как стандартная служба Windows. Для остановки и запуска этих служб можно использовать applet служб в панель управления или PowerShell.
Внимание
Остановка службы интеграции может серьезно повлиять на возможность узла управления виртуальной машиной. Чтобы каждая служба интеграции работала правильно, её необходимо включить как на хост-системе, так и на гостевой системе. Рекомендуется управлять службами интеграции только из Hyper-V, используя инструкции, описанные в этой статье. Соответствующая служба в гостевой операционной системе останавливается или запускается автоматически при изменении его состояния в Hyper-V. Если вы запускаете службу в гостевой операционной системе, но она отключена в Hyper-V, служба останавливается. Если вы остановите службу в гостевой операционной системе, которая включена в Hyper-V, Hyper-V снова запустит ее. Если вы отключите службу в гостевой операционной системе, Hyper-V не сможет запустить её.
Использование служб Windows для запуска или остановки службы интеграции в гостевой системе Windows
Откройте диспетчер служб, выполнив
services.msc
от имени администратора или дважды щелкнув значок служб в Панели управления.Найдите службы, начинающиеся с Hyper-V.
Щелкните правой кнопкой мыши службу, которую вы хотите запустить или остановить. Выберите нужное действие.
Запуск или остановка службы интеграции в гостевой среде Windows с помощью PowerShell
Чтобы получить список служб интеграции, выполните следующую команду:
Get-Service -Name vmic* | FT -AutoSize
Результат должен выглядеть следующим образом:
Status Name DisplayName ------ ---- ----------- Running vmicguestinterface Hyper-V Guest Service Interface Running vmicheartbeat Hyper-V Heartbeat Service Running vmickvpexchange Hyper-V Data Exchange Service Running vmicrdv Hyper-V Remote Desktop Virtualization Service Running vmicshutdown Hyper-V Guest Shutdown Service Running vmictimesync Hyper-V Time Synchronization Service Stopped vmicvmsession Hyper-V PowerShell Direct Service Running vmicvss Hyper-V Volume Shadow Copy Requestor
Выполните Start-Service или Stop-Service. Например, чтобы отключить Windows PowerShell Direct, выполните следующую команду:
Stop-Service -Name vmicvmsession
Запуск и остановка службы интеграции из операционной системы Linux гостя
Службы интеграции Linux обычно предоставляются через ядро Linux. Драйвер служб интеграции Linux называется hv_utils.
Чтобы узнать, загружается ли hv_utils , используйте следующую команду:
lsmod | grep hv_utils
Результат должен выглядеть следующим образом:
Module Size Used by hv_utils 20480 0 hv_vmbus 61440 8 hv_balloon,hyperv_keyboard,hv_netvsc,hid_hyperv,hv_utils,hyperv_fb,hv_storvsc
Чтобы узнать, выполняются ли необходимые демоны, используйте эту команду.
ps -ef | grep hv
Результат должен выглядеть следующим образом:
root 236 2 0 Jul11 ? 00:00:00 [hv_vmbus_con] root 237 2 0 Jul11 ? 00:00:00 [hv_vmbus_ctl] ... root 252 2 0 Jul11 ? 00:00:00 [hv_vmbus_ctl] root 1286 1 0 Jul11 ? 00:01:11 /usr/lib/linux-tools/3.13.0-32-generic/hv_kvp_daemon root 9333 1 0 Oct12 ? 00:00:00 /usr/lib/linux-tools/3.13.0-32-generic/hv_kvp_daemon root 9365 1 0 Oct12 ? 00:00:00 /usr/lib/linux-tools/3.13.0-32-generic/hv_vss_daemon user 43774 43755 0 21:20 pts/0 00:00:00 grep --color=auto hv
Чтобы увидеть, какие демоны доступны, выполните следующую команду:
compgen -c hv_
Результат должен выглядеть следующим образом:
hv_vss_daemon hv_get_dhcp_info hv_get_dns_info hv_set_ifconfig hv_kvp_daemon hv_fcopy_daemon
Службы интеграции, которые могут быть перечислены, включают следующие демоны. Если отсутствуют, они могут не поддерживаться в вашей системе или они могут быть не установлены. Дополнительные сведения см. в статье Поддерживаемые виртуальные машины Linux и FreeBSD для Hyper-V в Windows.
- hv_vss_daemon. Эта управляющая программа необходима для создания динамических резервных копий виртуальных машин Linux.
- hv_kvp_daemon. Эта управляющая программа позволяет задавать и запрашивать встроенные и внешние пары значений ключей.
- hv_fcopy_daemon. Эта управляющая программа реализует службу копирования файлов между узлом и гостем.
Примеры
В этих примерах демонстрируется остановка и запуск управляющей программы KVP с именем hv_kvp_daemon
.
Используйте идентификатор процесса (PID), чтобы остановить процесс управляющей программы. Чтобы найти piD, просмотрите второй столбец выходных данных или используйте
pidof
. Демоны Hyper-V выполняются от имени root, поэтому вам потребуются права суперпользователя.sudo kill -15 `pidof hv_kvp_daemon`
Чтобы убедиться, что все
hv_kvp_daemon
процессы удалены, выполните следующую команду:ps -ef | hv
Чтобы запустить демон еще раз, запустите его от имени пользователя root:
sudo hv_kvp_daemon
Чтобы убедиться, что
hv_kvp_daemon
процесс указан с помощью нового идентификатора процесса, выполните следующую команду:ps -ef | hv
Поддерживайте актуальность служб интеграции.
Мы рекомендуем поддерживать службы интеграции в актуальном состоянии для получения оптимальной производительности и самых новых функций для виртуальных машин. Это происходит для гостей Windows по умолчанию, если они настроены получать важные обновления из Центра обновления Windows. Гости Linux, использующие текущие ядра, содержат встроенные службы интеграции, но могут быть доступны опциональные обновления. При обновлении ядра вы получите последние компоненты интеграции. Дополнительные сведения о гостях Linux см. в статье Поддерживаемые виртуальные машины Linux и FreeBSD для Hyper-V в Windows.
Установка или обновление служб интеграции для узлов Hyper-V до Windows Server 2016 и Windows 10
Для узлов Hyper-V до Windows Server 2016 и Windows 10 необходимо вручную установить или обновить службы интеграции в гостевых операционных системах.
Чтобы вручную установить или обновить службы интеграции, выполните следующие действия.
Откройте диспетчер Hyper-V.
Подключитесь к виртуальной машине. Щелкните правой кнопкой мыши виртуальную машину и выберите "Подключить".
В меню "Действие" в меню подключения к виртуальной машине выберите "Вставить диск установки служб интеграции". Это действие загружает установочный диск в виртуальный DVD-дисковод. В зависимости от гостевой операционной системы может потребоваться запустить эту установку вручную из Проводника.
После завершения установки службы интеграции доступны для использования.