У меня есть несколько виртуальных машин Ubuntu 10.04, работающих в качестве гостевых систем Hyper-V на Windows Server 2008 R2 SP1, и все они работают отлично.
Сегодня я установил свою первую виртуальную машину Ubuntu 11.10 и вижу нелепые пинги:
Все эти серверы подключены через гигабитное соединение к локальной сети, практически без сетевого трафика1 , с использованием устаревшего сетевого адаптера в Hyper-V.
Я немного нуб в Ubuntu, поэтому не знаю, что делать дальше. Есть идеи?
free -m
отчеты:
общее количество использованных свободных общих буферов кэшировано Мем: 485 470 15 0 63 299 -/+ буферы/кэш: 107 378 Обмен: 507 20 487
Это всего на несколько МБ больше, чем у других наших серверов Ubuntu, работающих на версии 10.04.
Я удалил устаревшую сетевую карту и установил синтетическую в Hyper-V, и этоделалулучшить показатели, сейчас они составляют около 10–30 мс, но я бы все равно ожидал времени отклика <1 мс.
1 Для сравнения, у меня есть еще одна гостевая система Ubuntu 10.04 на Hyper-V, расположенная почти в 1000 км от меня, пинг которой составляет 33 мс.
решение1
Так как это новая система, возможно, ей пришлось загрузить и установить довольно много обновленных пакетов. Если замедление все еще присутствует, попробуйте сделать что-то вроде
ps -ef|grep apt
на виртуальной машине, чтобы проверить, запущен ли процесс, связанный с apt. Если замедление внезапно исчезло само собой, стоит проверить, /var/log/dpkg.log
не установлено ли несколько пакетов, вызывающих замедление.
решение2
Эта проблема исчезла сама собой. Извините, у меня нет лучшего ответа, чем этот.
Я понимаю, что это похоже нанажав зеленую кнопкуно поскольку это не критически важная производственная машина, я собираюсь порадоваться за себя и двигаться дальше.
Как бы то ни было, переход на синтетическую сетевую карту вместо устаревшей имел огромное значение, но не решил проблему полностью.
решение3
Старая тема, но все еще есть ответ; убедитесь, что после установки вы удалили сетевой адаптер, а затем добавьте «синтетический сетевой адаптер» в Hyper-V. В Ubuntu есть правильные драйверы для него, и, насколько я знаю, он будет использовать паравиртуализацию таким образом. Также в гостевых ОС Windows вам действительно понадобится синтетический сетевой адаптер.
решение4
Загружены ли модули ядра hv_netvsc
, hv_blkvsc
, hv_storvsc
и hv_vmbus
на гостевой системе? Я запускаю Ubuntu 10.04 под Hyper-V, и пинг составляет менее 1 мс. Вы можете проверить модули с помощью sudo lsmod | grep hv
команды.