Пару лет назад я писал про запуск FreeBSD 6.3 и 7.0 под Hyper-V версии 1. FreeBSD развивается, да и Hyper-V не стоит на месте. Проблемы, которые я описывал ранее, исчезли и теперь FreeBSD гораздо лучше работает в нашей системе виртуализации.
Сегодня мы будем устанавливать FreeBSD 8.1 и 7.3, потому что именно они являются официально рекомендуемыми на данный момент. Так же проверим, как система работает в многопроцессорной конфигурации, и какие скорости устройства показывают во время тестов.
В связи с тем, что компонентов интеграции для FreeBSD не существует, нам будут доступны только эмулируемые устройства. Поэтому перед установкой ОС удаляем из виртуальной машины синтетический сетевой адаптер и добавляем сетевой адаптер Legacy.
После этого можно запускать установку. Здесь все банально и происходит, так же как и на реальном оборудовании. После окончания установки видим, что ОС загрузилась нормально и проблем с управлением питанием, которые были 2 года назад нет. Поэтому накладывать патчи на ядро нет необходимости.
После перезагрузки добавляем в /etc/rc.conf описание сетевого интерфейса de0 чтобы он мог работать с DHCP:
ifconfig_de0=”DHCP media 100baseTX mediaopt full-duplex”
Выполняем команды:
# ifconfig de0 down
# ifconfig de0 up
# dhclient de0
И наслаждаемся работающей сетью.
Скорость работы сети в среднем 95.57 Мбит/с хотя иногда получаются пики до 103 Мбит/c. Результат десяти тестов можно видеть на снимке экрана.
Если скорость в 100 Мбит/c недостаточна для ваших задач, то можно дать виртуальной машине 4 сетевых адаптера по 100 Мбит/c и связать их в один скоростной интерфейс с помощью механизма агрегации соединений.
Скорость работы жестких дисков можно увидеть на следующем экране.
Hyper-V позволяет дать каждой гостевой машине до 4-х виртуальных процессоров. FreeBSD отлично работает в такой конфигурации.
С работой видеоадаптера тоже нет проблем. Xorg запустился с первой попытки, распознал все нужные устройства и работал без каких либо проблем.
Вопреки распространенному мему патчить KDE под FreeBSD не пришлось. KDE заработала так же с первой попытки.
Как видите FreeBSD запущенная под Hyper-V работает стабильно и может использоваться для реализации инфраструктурных сервисов, обучения, разработки или тестирования.
Синтетического драйвера мыши для FreeBSD нет. Так что если вы присоединяетесь к Hyper-V через RDP а затем через консоль Hyper-V открываете окно в виртуальную машину то мышь в ней работать не будет.
Для решения проблемы удаленного управления с помощью мышьи обычно в гостевую ставят пакет VNC.
Бывает время скачет вперед и назад. Судя по тому что можно найти поисковиком эта проблема встречается при запуске FreeBSD и под другими системами виртуализации.
Вот тут предлагают решение средствами самой ОС, но оно не у всех срабатывает
lists.freebsd.org/…/106338.html
Компонентов интеграции для FreeBSD нет поэтому приходится ставить ПО которое будет синхронизироваться с внешним источником времени.
Без компонентов интеграции внутри гостевой ОС нет возможности выполнить правильно Shutdown из Hyper-V.
> Если скорость в 100 Мбит/c недостаточна для ваших задач,
>то можно дать виртуальной машине 4 сетевых адаптера по 100 Мбит/c
>и связать их в один скоростной интерфейс с помощью механизма агрегации соединений.
На данный момент все заметно упростилось:
На 2012-10-01 в FreeBSD-10.0 уже есть Syntetic LANCard ( 10Gb Ethernet)
vvm.blog.tut.by/…/freebsd-10-on-hyper-v
==
Convert to .VHD FreeBSD-10.0-ALPHA5-amd64-memstick.img
Attach as disk to secondary ATA channel, boot and install:
– syntetic LANCard work ( may be need run “dhclient hn0″ )
==
Объясните пожалуйста подробнее как вы умудрились установить FreeBSD как роль Windows Server.
Aleksey2004 Я не сталкивался с проблемой потери ping. У меня все ОС работают под Hyper-V стабильно.
У вас пинг теряется между физической машиной и виртуальной или двумя виртуальными?
Например добавить нужные команды в скрипты запуска сети. Такие как
/etc/rc.d/netif
Андрей, а время не убегает вперёд (назад)?
Бывает вот такое:
calcru: runtime went backwards from 54 usec to 43 usec for pid 758 (devd)
calcru: runtime went backwards from 136 usec to 109 usec for pid 349 (dhclient)
calcru: runtime went backwards from 504 usec to 401 usec for pid 333 (dhclient)
calcru: runtime went backwards from 11672 usec to 9293 usec for pid 333 (dhclient)
calcru: runtime went backwards from 196 usec to 156 usec for pid 179 (adjkerntz)
calcru: runtime went backwards from 755 usec to 601 usec for pid 21 (swi6: task queue)
calcru: runtime went backwards from 102 usec to 81 usec for pid 9 (thread taskq)
calcru: runtime went backwards from 1621 usec to 1291 usec for pid 19 (swi5: +)
calcru: runtime went backwards from 17 usec to 14 usec for pid 17 (swi1: net)
calcru: runtime went backwards from 16892 usec to 13878 usec for pid 0 (swapper)
Лечится:
sysctl kern.timecounter.hardware=TSC
or
sysctl kern.timecounter.hardware=i8254
Проблема с DHCP.
Сделал, как сказано в статье. ifconfig_de0=”DHCP media 100baseTX mediaopt full-duplex” в rc.conf не работает. Сеть "живет" только до перезагрузки. После перезагрузки надо явно сделать "ifconfig de0", чтоб сеть появилась. Как пофиксить? У меня Hyper-V под MS Server 2008 R2 64bit, FreeBSD 8.1 64 bit.
А мышка в гостевой Free BSD то-же работает или нет?
Понял. Спасибо.
> Синтетического драйвера мыши для FreeBSD нет.
Не критично
==
если вы присоединяетесь к Hyper-V через RDP а затем через консоль Hyper-V открываете окно в виртуальную машину то мышь в ней работать не будет.
==
Это на практике надо понимать так:
установите на рабочую станцию MMC-оснастку Hyper-V и _напрямую_ подключайтесь к Guest-компьютерам
vvm.blog.tut.by/…/hype-v_mouse_in_linux
А кто подскажет, есть вообще на данный момент возможность корректно делать shutdown гостевой ОС гипервизором? Или без интеграционного пакета это не возможно? Turn Off не вариант.
Кто нибудь сталкивался с проблемами установки FreeBSD 8.2 в Hyper-V (как роль Serv2008 R2 SP1). Установка проходит нормально а вот загрузка уже ни в какую.
Имелось ввиду что Hyper-V роль сервера 2008R2. В чистом Hyper-V server R2 SP1 так же FreeBSD не работает .
Нужно чтобы .vhd файл жесткого дика внутри был не более 30ГБ.
Тогда все ставится и работает.
Подскажите, почему может временно отваливаться пинг (5-10 проц. потерь) когда пингую шлюз freebsd, который поднят на hyper-v Win Server 2008 r2, он настроен для раздачи инета офису из 10 ПК