Здравствуйте, в общем расскажу небольшую предысторию, раньше в моей комнате стоял imac, я на нем запускал parallels или vbox, там гонял виртуалочки, когда есть один мощный комп, то легко можно обойтись без дополнительных железок, всё летает, работает идеально, несмотря на то, что подключен комп по wifi (тариф провайдера 60 мегабит, по воздуху в локалке больше сотки жмет).
Сейчас я собрал десктоп со 128 гигами оперативки, 8 ядерным Xeon, поставил купленную раннее вин 10 про, ну и решил воспользоваться виртуализатором, который бесплатно поставляется и умеет в фоне запускать виртуалки, ну в общем идеально для сервисов, развернутых в родном окружении. У меня несколько машинок на линуксах, дополнения все стоят (модули ядра), стоят дебианы последние.
Вирталки мостом прокинуты в мою локалку, дальше я там с роутера пробрасываю порты нужные. Неадекватно работает мост, т.е. виртуалки имеют потери по 20% и больше пакетов, с самого хост-компа на тот же адрес пинги идут обычно около 0% потерь, ну изредка помехи небольшие, т.е. сама сеть годно работает. А вот Hyper-v при создании виртуального коммутатора делает мост, но не между сетевушками, а в мост включает только сетевушку внешнюю и туда свою службу добавляет, а дальше создает свой виртуальный адаптер, на котором тоже опять его служба и через него же инет отдает.
Может быть мне создать коммутатор внутренний и руками мост сделать между ними обычный? Тут или сыроватость десятки или еще что то, но сайты, размещенные на виртуалке то доступны, то опять недоступны, в момент недоступности я по рдп к компу цепляюсь, т.е. до него линк просто суперский и стабильный и по рдп на этом компе я работал два дня подряд, ни единого разрыва, а вот с виртуалками беда ужасная.
Может кто имел опыт, подскажите, посоветуйте, я просто на виндовой виртуализации впервые.
В общем откатил систему назад, накатил обновления, поигрался с включением/выключением очередей, один фиг, какая то жуть, проявляется вот так - включаю комп, нагрузка на нуле, запускаю виртуалку, в ней пинги запускаю до шлюза, ответ приходит только на 5й пинг, дальше снова запускаю - всё прекрасно в течении 30 минут, потом опять секунд на 10 пропадают пинги, потом снова появляются. Это так проявляется неприятно, когда заходишь на тестовый сайт, а он не открывается, а потом всё нормально, а потом опять не открывается и опять ждешь минуту пока он там заработает, у меня нет нагрузок, в wifi сети только мой комп, в общем связь хост-машины с локальной сетью (пинг до роутера) есть, связь его же с виртуалками есть, но связь виртуалок с локальной сетью пропадает. На компе в это время даже браузер не запущен, софт тоже еще не успел поставить, нет нагрузок ни на сеть, ни на процессор. Пинги с хоста идут идеально без потерь с задержками 1-2мс.
vbox даже с гостевыми дополнениями скорость файловой системы меньше раза в 2 выдает, и задержки пингов были, на vmware player скорость дисковой подсистемы гораздо выше, но сеть тоже, вместо 1-2мс доходит до 40 и это просто до роутера пинги по локалке без всяких нагрузок. В общем придется ставить linux, kvm запускать, мост из виртуалки в сеть, а hyper-v как то на низком уровне работу делает с сетью и похоже не дружит с моей сетевушкой wifi
Ребята, всем спасибо за то что пытались помочь, но, как оказалось, у Hyper-v такая беда именно с wifi, нашел статью на сайте майкрософта, там идет объяснение, что все виртуалки в сеть с разными маками прокидываются, в итоге одна сетевушка с кучей mac-адресов, в ethernet-сетях это хорошо работает, а вот в беспроводной сети такие перебои соединения.
В общем для адекватной работы виртуалок по wifi создается коммутатор внутренний, который связывает виртуалки между собой и с самим хостом, в сетевых соединениях появляется виртуальный интерфейс, задаем ему подсеть другую и виртуальной машине айпи из этой подсети даем, дальше расшариваем подключение wifi (вкладка доступ), у нас получается NAT, т.е. виртуалка вылазит в инет, дальше чтоб со внехи подключаться к виртуалке - там же порт пробрасываем, всё работает, пинги 0.8мс до роутера. Еще придется в брандмаудере добавить правила, а то у меня пинги не проходили с виртуалок.
Ответ из разряда пальцем в небо.
Смотрите, какая история с режимом виртуализации на винде:
1 когда вы его включаете, хостовая машина переходит в особый режим - она как бы становиться виртуальной (а управление процессором переходит к VMM).
2 у вас, если я правильно понял, обычная сетевая карта, без режимов SR-IOV, а значит она не умеет грамотно разруливать потоки (т.е. весь трафик вначале идёт в CPU, а лишь после обработки там едет к виртуалке)
3 Хостовая ОС у вас имеет другие задачи с которыми работает, на обработку прерываний и доставку трафика в гостевые ОС у неё не хватает приоритетов (не у ней, а у VMM, но суть таже)
В итоге получается, что работа сети для гостя имеет приоритет ниже, чем задачи хостовой ОС, а хостовая ОС выполняет задачи, на которые забирает проц.
Т.е. возможно у вас просто не хватает процессорного времени для работы сети (увидеть такую нагрузку в диспетчере задач не получится, так как см. п 1) .
Попробуйте следующее:
1. Убрать с хоста всю нагрузку
2. Включать виртуалки постепенно
3. Организуйте для Hyper-V отдельную сеть и посмотрите нормально ли она будет функционировать (без задействования физической карты)
4. Сделайте отдельную машину с маршрутизацией и выставьте только её в реальную карту, а остальные виртуалки будут в отдельном виртуальном свиче с ней.
Ещё проверьте что у вас используется именно Network Adapter (не Legacy)
UPD всё что выше - это для поиска проблемы.
Лекарства же такие:
1. Использовать полноценный Hyper-V (там приоритеты Хост\Гость работают лучше)
2. Использовать серверные сетевые карты
3. Убрать всю нагрузку с хоста
4. Использовать Network Adapter в качестве виртаульного адаптера для гостя, не Legacy
Боюсь ошибиться, но на сколько мне известно полноценный сервер Hyper-V (который бесплатен, но платная панель управления) и роль Hyper-V это разные вещи. Я тоже пробовал использовать "встроенную бесплатную виртуализацию". Но плюнул, заткнувшись на настройке сети. Мне хватает и виртуалбокса. А там где не хватает, я перезагружаюсь в убунту и стартую kvm.
и ошибаетесь и нет. Ядро виртуализации одно и тоже, но "скрострельность" у чистого HV выше, чем у обычной серверной винды того же года и включённой ролью, что с лихвой компенсируется абсолютной непригодностью в использовании его без SCCVM.
А вот CORE установка и H-V сервер - одно и тоже, плюс минус ноль сколько-то процентов.
Клёвый Админ: кароч, что я хотел сказсть, я сомневаюсь, что тс юзает функционал гипер-в на полную катушку. Так какой смысл мучить себе моск? Последние версии виртуалбокса умеют работать в фоне без танцев с бубнами. Спокойно туда пробрасываются хостовые папки. Да, вб не очень умеет работать с фищическими винтами, ч плане постпвить гостя на отдельный винт. Но, возвращаясь к началу, "я сомневаюсь, что тс юзает функционал гипер-в на полную катушку"
sazhyk: но похоже в этом случае (куча виртулок, квадрилион памяти, обычная сетевая карта, много нагрузки) - какой движок не возьми, будут проблемы. Плюс минус.
Клёвый Админ: согласен, хотя из вопроса я понял, что нет таких больших нагрузок. Стандартные два-три линуксовых серва и может быть парочка виндовых (в чем я лично сомневаюсь).
sazhyk: вот непонятно, если нагрузки нет, то чего же сеть колбасить то? ну не должен h-V в такой "детской" ситуации такое исполнять. Что-то тут не так. Толи пчёлы, толи мёд
Клёвый Админ: вот я и говорю, что я забил болт на решение проблемы, схожей с проблемой тс.
А какие были амбиции и надежды: родная виртуализация в родной системе, как небось клево там запускать виртуальные виндовсы. Бла-бла-бла.
Клёвый Админ: так и должно работать. Денег же стоит. Да и по тестам и обзорам уделывает, и неплохо так уделывает, те же xen'ы с kvm'ами. Но вот настройка - в какой-то лютый квест превращается...
В общем, надо сворачивать обсуждение с оффтопом. От греха подальше.
sazhyk: В общем откатил систему назад, накатил обновления, поигрался с включением/выключением очередей, один фиг, какая то жуть, проявляется вот так - включаю комп, нагрузка на нуле, запускаю виртуалку, в ней пинги запускаю до шлюза, ответ приходит только на 5й пинг, дальше снова запускаю - всё прекрасно в течении 30 минут, потом опять секунд на 10 пропадают пинги, потом снова появляются. Это так проявляется неприятно, когда заходишь на тестовый сайт, а он не открывается, а потом всё нормально, а потом опять не открывается и опять ждешь минуту пока он там заработает, у меня нет нагрузок, в wifi сети только мой комп, в общем связь хост-машины с локальной сетью (пинг до роутера) есть, связь его же с виртуалками есть, но связь виртуалок с локальной сетью пропадает. На компе в это время даже браузер не запущен, софт тоже еще не успел поставить, нет нагрузок ни на сеть, ни на процессор. Пинги с хоста идут идеально без потерь с задержками 1-2мс.
Работу виртуализации в десятке не проверял, но учитывая обилие прочих проблем не удивлюсь если она криво работает.
Вообще Hyper-V работает отлично, и стабильно.
Непонятно почему вы используете десятку, используйте нормальную серверную реализацию, а не адаптацию для десктопов.
Ну ладно, серверная ось денег стоит, а ломаную поставить может религия не позволяет, но hyper-v сервер вообще бесплатный и свободно распространяется.