none
Крайне нестабильное подключение к SQL-серверу под Hyper-V RRS feed

  • Вопрос

  • Добрый день.
    Для целей тестирования решил развернуть следующий полигон: установлен хост Windows Server 2008 R2, роли Domain Controller, DNS, DHCP. На физической машинке.
    На нём виртуальный сервера - SQL Server 2008 SP1.
    В этой теме задавал вопрос о невозможности достучаться до сервера вообще. Решил пока отключить брандмауэр (хотя это не выход, и всё таки конфигурировать его придётся, добавление исполняемого файла SQL Server, либо используемых сервером портов проблемы не решило).
    Теперь проблема при коннекте к серверу: после соединения в Management studio на первый взгяд всё в порядке. Гаснет окно ввода пароля, в дереве объектов видим сервер, номер версии и слово "expanding..." Ждать приходится секунд 20-30, затем дерево всё же раскрывается, но вылетает ошибка:

    TITLE: Microsoft SQL Server Management Studio
    ------------------------------

    An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

    ------------------------------
    ADDITIONAL INFORMATION:

    A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - The specified network name is no longer available.) (Microsoft SQL Server, Error: 64)

    For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=64&LinkId=20476

    ------------------------------
    BUTTONS:

    OK
    ------------------------------


    Решил проверить сеть, отправил бесконечный пинг пакетами по 64 килобайт на SQL-сервер. Возвращается 100% без потерь вообще, так что с сетью, похоже, проблем нет. Данная ошибка возникает практически на любом действии с деревом объектов, с нескольких компьютеров, как внутри домена, так и извне, по IP-адресу.
    Кто-то сталкивался с подобным? В какую сторону копать?
    Спасибо!
    12 января 2010 г. 8:07

Ответы

  • Сообщите о результатах -)
    И - попробуйте с драйверами сетевых карт Realtek поэкспериментировать. Не исключено, точнее, больше чем уверен, что дело именно в них.

    • Помечено в качестве ответа Eugene A. Bykov 14 января 2010 г. 5:09
    13 января 2010 г. 8:47
    Модератор

Все ответы

  • Начать хотелось бы с того, что хостовая машина должна нести на себе только роль виртуализации.
    12 января 2010 г. 8:40
    Модератор
  • Заметил следующую особенность. Решил исключить возможные проблемы сетевого оборудования между сервером с виртуальными машинами и клиентом. Соединил напрямую хост и клиентскую WinXP. Заметил дважды всплывающее во время установки связи с сервером уведомление о том, что сетевой кабель не подключен. Поскольку такого сообщения не было при подключении через свитч, делаю вывод, что на сервере просто напросто почему-то отключается сетевая карта.
    Я запустил пинг опять по 64кб на время установки коннекта с сервером. Получил потерю трёх пакетов, затем два пакета вернулись и ещё раз потеря трёх. Как раз два раза во время появления всплывающего сообщения о неподключенном сетевом кабеле. Решил поменять на пакеты по 1 байту. Здесь не было двух серий по три потерянных пакета. Получил иную картину - 6 потерянных пакетов, затем два раза Hardware error, затем ещё один потерянный пакет и пинги восстановились.
    Всё таки действительно проблема сетью. Но что её порождает? Очень странная картина.
    12 января 2010 г. 8:44
  • Денис, спасибо за ответ. Но чем обусловлено данное требование? Техническими условиями? Почему я так сделал - чтобы контроллер домена всегда загружался вперёд всех. Повторюсь, это тестовый полигон для проверки работы и отладки некоторых решений.
    12 января 2010 г. 8:48
  • Скажем так, это не рекомендуемая Майкрософт схема виртуализации. Тем более, учитывая, что у Вас на несущей (хостовой) машине, помимо роли виртуализации, есть еще и AD DS, DNS, DHCP, находится виртуализованный SQL - последствия могут быть самыми непредсказуемыми. И, логично, никакая служба поддержки Вам в этом случае не поможет.

    12 января 2010 г. 9:45
    Модератор
  • Спасибо. Что ж, пошёл ставить вирт контроллер домена и выводить из домена хостовый контроллер. А где можно почитать о предлагаемых схемах виртуализации?
    12 января 2010 г. 10:11
  • Документ по Virtualization best practices.
    12 января 2010 г. 10:20
    Модератор
  • Добрый день!

    Вот ссылочка по схемам виртуализации:

    http://technet.microsoft.com/en-us/solutionaccelerators/cc197910.aspx
    12 января 2010 г. 10:50
    Модератор
  • Спасибо за ссылки.
    Перенес контроллер домена в виртуальную машину, но это не решило проблемы. Тогда для абсолютной чистоты эксперимента оставил следующую конфигурацию:

    1. Хост - единственная роль Hyper-V
    2. Единственная вирт. машина с SQL Server 2008 SP1, член рабочей группы.

    Брандмауэры на хосте и ВМ отключены.

    При коннекте с WinXP на SQL Server продолжает проявляться проблема с сетью. Т.е. соединяюсь с SQL, авторизация проходит, горит expanding... на в дереве объектов, после этого на пару секунд исчезает сетевое подключение, затем оно восстанавливается, сервер выдаёт указанную ошибку.
    Если запустить пинг, то те же самые потери 3-5 пакетов.

    Посмотрел на лампочку на сетевой карте сервера - гаснет дважды после того, как устанавливается соединение с SQL, собственно пинги и теряются, т.к. карта выключается. Проверил настройки энергосбережения в Диспетчере устройств - отключил энергосбережение, это не помогло решить проблему.
    13 января 2010 г. 8:11
  • Что на сетевые адаптеры? Их смена не решает проблему?
    13 января 2010 г. 8:34
    Модератор
  • Интегрированные в MB Asus P7P55D Premium (Realtek RTL8112L и Realtek RTL8110SC) .
    Ставлю внешнюю сетевую карту для экспериментов.
    13 января 2010 г. 8:44
  • Сообщите о результатах -)
    И - попробуйте с драйверами сетевых карт Realtek поэкспериментировать. Не исключено, точнее, больше чем уверен, что дело именно в них.

    • Помечено в качестве ответа Eugene A. Bykov 14 января 2010 г. 5:09
    13 января 2010 г. 8:47
    Модератор
  • Действительно, смена адаптера решила проблему, теперь соединение устанавливается мгновенно. Держится стабильно. Драйверов специально под 2008 Server не нашёл на оф. сайте, может ещё и не появились, в любом случае использование именно этого глючащего адаптера никуда не упирается, вполне устраивает, что работает через другой.
    Спасибо, Денис.
    14 января 2010 г. 5:09