Могу ли я отключить функцию Hyper-V, если у меня установлен Docker

#docker #hyper-v #hypervisor

#докер #hyper-v #гипервизор

Вопрос:

Я установил Docker в Windows10 для работы с одноузловым кластером Hadoop и включил для него функцию Hyper-V. Теперь мне это не нужно, но я не хочу сбрасывать контейнеры docker. Могу ли я отключить функцию Hyper-V на некоторое время и включить ее, когда мне снова понадобится работать с docker? Или это может как-то повлиять на существующие контейнеры?

Ответ №1:

Docker в значительной степени основан на глубоких функциях ядра Linux, которые Windows не поддерживает (таких как группы и пространства имен), поэтому Docker в Windows 10 может использовать один из 2 бэкэндов: Hyper-V или WSL2, который, в свою очередь, также основан на Hyper-V.

Возможно, хотя и не рекомендуется настраивать контейнер Windows на хосте Windows без использования Hyper-V на основе изоляции процессов Windows. Это, по-видимому, не имеет отношения к вашему случаю, поскольку вы спрашиваете о кластере Hadoop, который, по-видимому, поддерживается только в Linux. Таким образом, похоже, что даже если вам удастся настроить docker для работы без Hyper-V, настройка кластера Hadoop будет невозможна.

Что вас беспокоит? Речь идет о производительности? Почему вы хотели бы отключить Hyper-V?

Комментарии:

1. Я беспокоюсь о производительности. В docker у меня есть контейнер Linux, в котором установлен Hadoop. Я не уверен, что он мне понадобится в ближайшем будущем, но я не хочу его удалять, я просто хочу отключить Hyper-V, чтобы не перегружать систему. Я не использую контейнер все время, запускаю его только при необходимости и не планирую запускать его, когда Hyper-V отключен.

2. Нет причин беспокоиться о производительности, на компьютерах Windows с Windows 11 по умолчанию включен Hyper-V (в основном по соображениям безопасности). До тех пор, пока у вас есть процессор Intel 8-го поколения и выше или его эквивалент, включение Hyper-V имеет очень низкие накладные расходы. Еще одна причина, по которой не следует выключать и включать Hyper-V, заключается в том, что для этого требуется перезагрузка. В любом случае, из эксперимента, который я провел, мой контейнер не был удален после выключения и повторного включения Hyper-V, но я бы не рекомендовал пробовать это самостоятельно, так как не знаю, гарантирует ли такое поведение Docker.