Почему моя виртуальная машина HyperV случайно теряет связь?

10

У меня странная проблема с подключением, возникающая примерно раз в две недели.

Сначала моя конфигурация: я использую отказоустойчивый кластер HyperV с двумя физическими хостами (node01 и node02). На обоих хостах установлен сервер Windows Server 2008 R2 HyperV (бесплатный) с пакетом обновления 1 (SP1). На этих хостах у меня две виртуальные машины, каждая из которых работает под управлением Windows Server 2008 R2 Web Edition с пакетом обновления 1 (SP1). Мой сервер хранения - Windows Storage Server 2008, подключенный через iSCSI. На обоих хостах, а также на сервере хранения установлены последние сетевые драйверы, загруженные непосредственно с веб-сайта Intel.

Вот проблема: 99,99% времени, все работает отлично. Примерно раз в две-три недели виртуальные машины одновременно теряют сетевое подключение, как входящее, так и исходящее. Когда это произойдет,

  1. Я не могу RDP в любую ВМ.
  2. Я могу RDP в любой хост.
  3. Я могу подключиться к любой виртуальной машине из диспетчера отказоустойчивого кластера, щелкнув правой кнопкой мыши узел и выбрав «Подключиться к виртуальной машине»
  4. После подключения к виртуальной машине, как описано в пункте 3 выше, я не могу получить доступ к веб-сайтам или компьютерам в локальной сети. Отключение и повторное включение подключения к виртуальной сети внутри виртуальной машины не решает проблему.
  5. Если я перенесу виртуальную машину на другой узел, это решит проблему (в течение следующих двух недель).
  6. Если я перезагружаю хост и возвращаю на него виртуальную машину, это решает проблему (в течение следующих двух недель).
  7. Когда это происходит, отказоустойчивый кластер НЕ выполняет аварийное переключение виртуальной машины.
  8. Нет никаких необычных записей в журнале событий ни на одном из хостов или виртуальных машин.

Это происходило примерно 5 раз с такими же симптомами, как описано выше. Я подозреваю, что проблема с сетевым драйвером или сетевым оборудованием, но так как у меня уже установлены последние версии драйверов, я не уверен, что с этим делать.

Это настоящий скребок головы ... есть идеи?

Обновить

Я нашел очень похожий случай: Virutal Machine теряет сетевое соединение в кластере Hyper V

Обновление 29.07.2011

После установки исправлений и обновления сетевых драйверов, я все еще испытываю ту же проблему. В ответ на комментарий с просьбой предоставить подробную информацию об оборудовании сервер представляет собой Intel SR1670HV, корпус которого составляет 1U и содержит две независимые материнские платы S5500HV. Связь осуществляется через встроенные сетевые платы Intel 82574L. Сетевой драйвер версии 16.2.49.0.

Майк
источник
Можете ли вы добавить подробности о вашем оборудовании (количество игр)
Джим Б
Какой бренд / модель сетевых карт у вас есть на сервере?
Крис С
Информация об оборудовании и сетевых картах добавлена ​​выше.
Майк
Через какой бренд / модель вы подключаетесь?
ErnieTheGeek
У меня была проблема с изображениями CentOS на сервере MS HyperV. Есть ли у вас выделенные сетевые карты для каждой машины или общая сетевая карта? Как только мы переключились на специальные nics, эта проблема ушла ... но это не совсем верно ...
n8whnp

Ответы:

7

У нас была такая проблема, когда я нахожусь. Я не помню точных деталей, но окончательное решение было связано с конфликтующим Mac-адресом, динамически назначаемым виртуальному сетевому адаптеру. Закрепление тех, кто не был динамичным, очень помогло. Обычно вы не хотите этого делать, потому что это может усложнить перемещение виртуальной машины на другой хост, но это помогло нам в этом случае.

Другая часть заключается в том, что физические сетевые сообщения были сделаны Broadcom, и у нас также была ошибка конфигурации, когда предыдущий администратор неправильно пытался использовать утилиту Broadcom для объединения двух сетевых адаптеров на хост для улучшения пропускной способности / пропускной способности. Мы удалили эту настройку и настроили одну из сетевых карт, чтобы у нее вообще не было IP на хост-машине, но она все еще могла использоваться для передачи виртуальным гостям. Затем мы устанавливаем для каждой виртуальной машины только один или другой ник, балансируя нагрузку на основе исторического трафика. Конечно, это означает, что отказоустойчивости не происходит, если адаптер или соединение обрывается, и мы не проследили, чтобы трафик оставался сбалансированным с течением времени, но с тех пор он был стабильно стабильным.

Джоэл Коэль
источник
5

Я знаю, что это старый вопрос, но я столкнулся с той же проблемой и потратил столько времени на ее решение, что подумал, что поделюсь решением, которое сработало для меня. Я нашел решение моей проблемы здесь:

http://invendows.wordpress.com/2008/03/06/network-issue-with-hyper-v/

Решением в моей ситуации было отключение TCP Offloading на виртуальных машинах. Я процитирую соответствующий раздел по ссылке:

Чтобы отключить TCP Offloading, мне пришлось создать и установить новое значение реестра в каждой виртуальной машине, подключенной к NIC Broadcom 8507 Nextreme II.

Я использовал следующее изменение реестра, чтобы отключить разгрузку TCP:

Ключ: HKLM \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters

Значение (DWORD): DisableTaskOffload = 1

После отключения разгрузки TCP на каждой виртуальной машине все проблемы закончились, и я смог подключить несколько виртуальных машин к одному порту сетевого адаптера Broadcom 5708 Nextreme II NIC.

На моем сервере есть Broadcom NetExtremeсетевые карты, поэтому мне кажется, что причина этой проблемы была определенно связана с драйвером, но установка DisableTaskOffload= 1 полностью решила проблему для меня. Надеюсь, что эта информация сэкономит кому-то еще часы поиска!

BruceHill
источник
1
+1, спасибо за этот совет, я бегал пару дней без проблем.
m0dest0
1
Нет проблем, m0dest0. Рад слышать, что это помогло тебе. :)
BruceHill
3

Я столкнулся с чем-то похожим в гораздо более простой среде Hyper-V и наткнулся на эту статью в Microsoft. Кажется, вписывается в вашу ситуацию, если веб-серверы интенсивно используются.

http://support.microsoft.com/kb/974909 - Сетевое подключение работающей виртуальной машины Hyper-V теряется при интенсивном исходящем сетевом трафике на компьютере под управлением Windows Server 2008 R2

Кристофер
источник
Ссылка на статью, на которую вы ссылаетесь, была до SP1, но я сделал похожую статью после SP1, которая выглядит многообещающе: support.microsoft.com/kb/2263829
Майк
1
Я удалил это как ответ, потому что я установил исправление, но проблема все еще происходит. Поэтому этот вопрос остается без ответа ...
Майк
2

У нас была такая же проблема, хотя в нашем случае это было каждые 24-48 часов. Я бы дважды проверил, что ваш антивирус / брандмауэр spcefical поддерживает Server 2008 с Hyper-V, если нет, попробуйте другой (или временно удалите, если это возможно) ваш антивирус / брандмауэр в качестве теста, чтобы увидеть, если проблема исчезнет ,

После звонка в Microsoft и нескольких загрузок файла дампа / журнала позже они определили, что TrendMicro OfficeScan был виновником в нашем случае. Мы использовали версию, которая явно не поддерживалась в Hyper-V, после обновления до последней версии проблема исчезла.

Джесси
источник
2

Это оказалось аппаратной проблемой - я изолировал проблему с управляемым коммутатором Netgear GSM7224v2, заменил его на D-Link DGS-1024D, и с тех пор все работало нормально.

Как «извлеченный урок», в этом случае я, вероятно, потратил 99% своих диагностических усилий на поиск и устранение неисправностей в настройках программного обеспечения для решения проблемы с оборудованием. Я даже заплатил Microsoft Support $ 259 (и провел с ними много времени по телефону), чтобы помочь мне разобраться в этом, изучая настройки программного обеспечения. Я предполагаю, что мораль этой истории состоит в том, чтобы подозревать ваше оборудование так же, как и ваше программное обеспечение.

Майк
источник
1

В свойствах сетевого адаптера для гостевой виртуальной машины отключены ли Jumbo Packets и Large Send Offload? Исходя из моего опыта работы с этими настройками, я бы обязательно попробовал.

Грег Аскью
источник