none
Импорт VM на Hyper-V 2012r2 RRS feed

  • Общие обсуждения

  • Добрый день!

    Имеется кластер на hyper-V 2012r2. При выполнении экспорта виртуальной машины из оснастки все проходит на ура, все работает. При применении скрипта вида:

    ------------------------------------------

    ............................

    Export-VM -Name $name-vm -Path $export-path

    ............................

    ------------------------------------------

    наблюдается перезагрузка виртуальной машины примерно в 8 случаях из 10, если на ВМ работает сервер касперского. Ощущение, что при вызове экспорта из скрипта не отрабатывается какой-то тайм аут, и кластер решает, что роль сбойнула и перегружает ее.

    Кто что может посоветовать?


    9 января 2018 г. 6:28

Все ответы

  • Почему в теме и по тексту сообщения речь идет про импорт, а командлет используется на экспорт (export-vm)? По команде Export-VM -name $name-vm, есть риск, что параметр $name-vm может некорректно обрабатываться из-за попытки отнять из переменной "$name" некую "vm".
    22 января 2018 г. 7:40
  • У вас тема на импорт, а ваш пример на экспорт.

    Если проблема именно в скрипте: выложите его полностью - посмотрим.

    PS KSC довольно капризный продукт. Если проблема именно с сервером Касперского, то могу посоветовать вам создать тикет у них на форуме

    22 января 2018 г. 8:56
  • Прошу прощения, в тексте ошибка. Конечно речь идет об экспорте ВМ. Вот скрипт которым пользуюсь:

    --------------------------------------------------------------------------

    #Скрипт резервного копирования ВМ путем их экспорта
    # в b_path содержится первая неизменная часть пути к сетевой шаре, куда осуществляется экспорт
    # backup_path содержит полный путь к каталогу экспорта. Меняется для каждой ВМ
    echo "Start backup from $env:COMPUTERNAME"
    Get-Date
    $b_path="\\backup.dom1.dom2.ru\vhd\"
    $unbackup_vm=@("name-1","name-2","name-n")
    $num_copies=7
    $host_vm_name=(get-vm -ComputerName "$env:COMPUTERNAME.dom1.dom2.ru" | where-object {$_.State -eq "Running"}).Name
    if ($host_vm_name)
        {
            $host_vm_name=(get-vm -ComputerName "$env:COMPUTERNAME.dom1.dom2.ru" | where-object {$_.State -eq "Running"}).Name.ToUpper()
            foreach ($vm_name in $host_vm_name)
                {
                    if (($unbackup_vm.ToUpper() -notcontains $vm_name) -and ($vm_name -notmatch "TEST") -and ($vm_name -notmatch "PARENT"))
                        {
                            echo "Создаём каталог экспорта для:  $vm_name"
                            $backup_path=$b_path + "\" + $vm_name + "__" + (get-date -Uformat "%Y-%m-%d_%H-%M__") + $env:COMPUTERNAME
                            if (!(Test-Path $backup_path) )
                                {
                                   New-Item -Path $backup_path -ItemType "directory" | Out-Null
                                }
                            echo "Каталог $backup_path"
                            echo "1-Архивируем ВМ: $vm_name"
                            Export-VM -Name $vm_name -Path $backup_path
                            if ($?)
                                {
                                    dir "$b_path\$vm_name*" | ?{$_.lastwritetime -lt (Get-Date).AddDays("-$num_copies")} | del -Force  -Recurse
                                }
                        }
                }
        }
    echo "End backup"
    Get-Date
    exit

    --------------------------------------------------------------------------

    Про KSC: с ВМ с ним, описанная выше перезагрузка происходит чаще. Про остальные могу сказать, что ВМ может быть недоступна по сети в пределах 10-20 секунд. 

    Вопрос, почему когда делаешь из оснастки, этого не происходит. В чем  может быть причина? Где порыться/покопать?

    6 февраля 2018 г. 9:14
  • Прошу прощения, в тексте ошибка. Конечно речь идет об экспорте ВМ. Уже исправил. Скрипт приложен.
    6 февраля 2018 г. 9:15
  • В скрипте нет ничего криминального.

    Посмотрите, пожалуйста, логи кластера. Там должно быть событие, которое вызывает перезагрузку ВМ.

    6 февраля 2018 г. 12:00
  • Вот вырезка из лога. Сразу добавлю 

    службы интеграции 6.3.9600.18692

    обновления стоят включая kb4054519 (это декабрь 2017)

    --------------------------------------------------------------

    Имя журнала:   System
    Источник:      storvsp
    Дата:          06.02.2018 23:39:44
    Код события:   7
    Категория задачи:Отсутствует
    Уровень:       Сведения
    Ключевые слова:Классический
    Пользователь:  Н/Д
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    The storage device in 'avp5' is loaded and the protocol version is negotiated to the most recent version (Virtual machine ID C55C0394-5F75-47B6-9D71-B7BEAFFA5178).
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="storvsp" />
        <EventID Qualifiers="16390">7</EventID>
        <Level>4</Level>
        <Task>0</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:44.052705900Z" />
        <EventRecordID>29399</EventRecordID>
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security />
      </System>
      <EventData>
        <Data>\Device\STORVSP</Data>
        <Data>avp5</Data>
        <Data>C55C0394-5F75-47B6-9D71-B7BEAFFA5178</Data>
        <Binary>00000000030030000000000007000640000000000000000000000000000000000000000000000000</Binary>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-Hyper-V-VmSwitch
    Дата:          06.02.2018 23:39:31
    Код события:   102
    Категория задачи:(1019)
    Уровень:       Сведения
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    Networking driver in avp5 is loaded and the protocol version is negotiated to the most recent version (Virtual machine ID C55C0394-5F75-47B6-9D71-B7BEAFFA5178).
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-Hyper-V-VmSwitch" Guid="{67DC0D66-3695-47C0-9642-33F76F7BD7AD}" />
        <EventID>102</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>1019</Task>
        <Opcode>0</Opcode>
        <Keywords>0x8000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:31.360321300Z" />
        <EventRecordID>29398</EventRecordID>
        <Correlation />
        <Execution ProcessID="4" ThreadID="680" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="VMNameLen">4</Data>
        <Data Name="VMName">avp5</Data>
        <Data Name="VMIdLen">36</Data>
        <Data Name="VMId">C55C0394-5F75-47B6-9D71-B7BEAFFA5178</Data>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-Hyper-V-VmSwitch
    Дата:          06.02.2018 23:39:31
    Код события:   102
    Категория задачи:(1019)
    Уровень:       Сведения
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    Networking driver in avp5 is loaded and the protocol version is negotiated to the most recent version (Virtual machine ID C55C0394-5F75-47B6-9D71-B7BEAFFA5178).
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-Hyper-V-VmSwitch" Guid="{67DC0D66-3695-47C0-9642-33F76F7BD7AD}" />
        <EventID>102</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>1019</Task>
        <Opcode>0</Opcode>
        <Keywords>0x8000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:31.344688000Z" />
        <EventRecordID>29397</EventRecordID>
        <Correlation />
        <Execution ProcessID="4" ThreadID="776" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="VMNameLen">4</Data>
        <Data Name="VMName">avp5</Data>
        <Data Name="VMIdLen">36</Data>
        <Data Name="VMId">C55C0394-5F75-47B6-9D71-B7BEAFFA5178</Data>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-Hyper-V-VmSwitch
    Дата:          06.02.2018 23:39:31
    Код события:   102
    Категория задачи:(1019)
    Уровень:       Сведения
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    Networking driver in avp5 is loaded and the protocol version is negotiated to the most recent version (Virtual machine ID C55C0394-5F75-47B6-9D71-B7BEAFFA5178).
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-Hyper-V-VmSwitch" Guid="{67DC0D66-3695-47C0-9642-33F76F7BD7AD}" />
        <EventID>102</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>1019</Task>
        <Opcode>0</Opcode>
        <Keywords>0x8000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:31.201211600Z" />
        <EventRecordID>29396</EventRecordID>
        <Correlation />
        <Execution ProcessID="4" ThreadID="680" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="VMNameLen">4</Data>
        <Data Name="VMName">avp5</Data>
        <Data Name="VMIdLen">36</Data>
        <Data Name="VMId">C55C0394-5F75-47B6-9D71-B7BEAFFA5178</Data>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      storvsp
    Дата:          06.02.2018 23:39:31
    Код события:   7
    Категория задачи:Отсутствует
    Уровень:       Сведения
    Ключевые слова:Классический
    Пользователь:  Н/Д
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    The storage device in 'avp5' is loaded and the protocol version is negotiated to the most recent version (Virtual machine ID C55C0394-5F75-47B6-9D71-B7BEAFFA5178).
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="storvsp" />
        <EventID Qualifiers="16390">7</EventID>
        <Level>4</Level>
        <Task>0</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:31.108074600Z" />
        <EventRecordID>29395</EventRecordID>
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security />
      </System>
      <EventData>
        <Data>\Device\STORVSP</Data>
        <Data>avp5</Data>
        <Data>C55C0394-5F75-47B6-9D71-B7BEAFFA5178</Data>
        <Binary>00000000030030000000000007000640000000000000000000000000000000000000000000000000</Binary>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-Hyper-V-VmSwitch
    Дата:          06.02.2018 23:39:31
    Код события:   102
    Категория задачи:(1019)
    Уровень:       Сведения
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    Networking driver in avp5 is loaded and the protocol version is negotiated to the most recent version (Virtual machine ID C55C0394-5F75-47B6-9D71-B7BEAFFA5178).
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-Hyper-V-VmSwitch" Guid="{67DC0D66-3695-47C0-9642-33F76F7BD7AD}" />
        <EventID>102</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>1019</Task>
        <Opcode>0</Opcode>
        <Keywords>0x8000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:31.108074600Z" />
        <EventRecordID>29394</EventRecordID>
        <Correlation />
        <Execution ProcessID="4" ThreadID="776" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="VMNameLen">4</Data>
        <Data Name="VMName">avp5</Data>
        <Data Name="VMIdLen">36</Data>
        <Data Name="VMId">C55C0394-5F75-47B6-9D71-B7BEAFFA5178</Data>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-Hyper-V-High-Availability
    Дата:          06.02.2018 23:39:30
    Код события:   21500
    Категория задачи:Отсутствует
    Уровень:       Сведения
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    "Виртуальная машина avp5" успешно запустил виртуальную машину.
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-Hyper-V-High-Availability" Guid="{64E92ABC-910C-4770-BD9C-C3C54699B8F9}" />
        <EventID>21500</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>0</Task>
        <Opcode>0</Opcode>
        <Keywords>0x2000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:30.857420900Z" />
        <EventRecordID>29393</EventRecordID>
        <Correlation />
        <Execution ProcessID="4536" ThreadID="13900" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="ResourceName">Виртуальная машина avp5</Data>
        <Data Name="ResourceGroup">avp5</Data>
        <Data Name="Message">"Виртуальная машина avp5" успешно запустил виртуальную машину.</Data>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-Hyper-V-High-Availability
    Дата:          06.02.2018 23:39:21
    Код события:   21501
    Категория задачи:Отсутствует
    Уровень:       Предупреждение
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    "Виртуальная машина avp5" не удалось завершить работу виртуальной машины во время завершения работы ресурса. Виртуальная машина будет остановлена принудительно.
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-Hyper-V-High-Availability" Guid="{64E92ABC-910C-4770-BD9C-C3C54699B8F9}" />
        <EventID>21501</EventID>
        <Version>0</Version>
        <Level>3</Level>
        <Task>0</Task>
        <Opcode>0</Opcode>
        <Keywords>0x2000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:39:21.849965900Z" />
        <EventRecordID>29392</EventRecordID>
        <Correlation />
        <Execution ProcessID="4536" ThreadID="11840" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="ResourceName">Виртуальная машина avp5</Data>
        <Data Name="ResourceGroup">avp5</Data>
        <Data Name="Message">"Виртуальная машина avp5" не удалось завершить работу виртуальной машины во время завершения работы ресурса. Виртуальная машина будет остановлена принудительно.</Data>
      </EventData>
    </Event>

    Имя журнала:   System
    Источник:      Microsoft-Windows-FailoverClustering
    Дата:          06.02.2018 23:38:21
    Код события:   1069
    Категория задачи:Диспетчер ресурсов
    Уровень:       Ошибка
    Ключевые слова:
    Пользователь:  СИСТЕМА
    Компьютер:     node-52.dom1.dom2.ru
    Описание:
    Сбой ресурса кластера "Виртуальная машина avp5" с типом "Virtual Machine" в кластерной роли "avp5".

    В зависимости от политик на случай сбоя ресурса и роли служба кластеров может попытаться подключить ресурс на этом узле или же переместить группу на другой узел кластера, а затем перезапустить ее. Проверьте состояние ресурса и группы с помощью диспетчера отказоустойчивости кластеров или командлета Get-ClusterResource оболочки Windows PowerShell.
    Xml события:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-FailoverClustering" Guid="{BAF908EA-3421-4CA9-9B84-6689B8C6F85F}" />
        <EventID>1069</EventID>
        <Version>1</Version>
        <Level>2</Level>
        <Task>3</Task>
        <Opcode>0</Opcode>
        <Keywords>0x8000000000000000</Keywords>
        <TimeCreated SystemTime="2018-02-06T19:38:21.821683000Z" />
        <EventRecordID>29391</EventRecordID>
        <Correlation />
        <Execution ProcessID="3332" ThreadID="10628" />
        <Channel>System</Channel>
        <Computer>node-52.dom1.dom2.ru</Computer>
        <Security UserID="S-1-5-18" />
      </System>
      <EventData>
        <Data Name="ResourceName">Виртуальная машина avp5</Data>
        <Data Name="ResourceGroup">avp5</Data>
        <Data Name="ResTypeDll">Virtual Machine</Data>
      </EventData>
    </Event>

    --------------------------------------------------------------

    7 февраля 2018 г. 6:45
  • На сколько я помню, в настройках кластера есть настройка Не перезагружать ВМ если кластер пытается перезагрузить. (по сути это костыль)

    Подобное поведение может быть в случае отказа/недоступности узла при условии, что у вас не HA. Тогда при миграции на другой узел ВМ перезагружается. Поправьте, если я не прав.

    Из чего могу сделать вывод - проблема с вашим кластером. Запустите Мастер проверки конфигурации.

    PS У вас даже есть рекомендации в описании события, что вы скинули выше:ъ

    В зависимости от политик на случай сбоя ресурса и роли служба кластеров может попытаться подключить ресурс на этом узле или же переместить группу на другой узел кластера, а затем перезапустить ее. Проверьте состояние ресурса и группы с помощью диспетчера отказоустойчивости кластеров или командлета Get-ClusterResource оболочки Windows PowerShell.

    • Изменено Sergey Ya 7 февраля 2018 г. 8:07 ps
    7 февраля 2018 г. 8:06
  • Там получается, что при потере сети, он его пытается переместить на другую ноду. Видимо здесь происходит не стыковка и кластер решает его перезапустить. Вопрос мой, как раз в чем отличие процедуры экспорта из оснастки и экспорта скриптом. Это отличие и приводит к выше описанным результатам. 

    Там есть параметр "При разрыве соединения перемещать эту виртуальную машину на другой узел кластера". Что видимо и срабатывает. Но разрыва не должно быть.

    7 февраля 2018 г. 9:24
  • Отличий никаких нет, за исключением того, что у вас скрипт отрабатывает ночью, а руками, как я полагаю, вы экспортируете днем.

    Вполне вероятно, что ночью у вас происходит бекап и другие процедуры. Отсюда осмелюсь предположить, что коммутатор по средствам которого у вас подключены ваши узлы может быть перегружен и поэтому узел А считает, что узел Б упал, что и приводит к миграции виртуалки на ноду А, следовательно к ее перезагрузке.

    Но это все предположения.

    Попробуйте запустить ваш скрипт днем.

    7 февраля 2018 г. 10:06