Рейтинг:0

KVM Libvirt, доступ к общим ресурсам nfs от хоста к клиенту

флаг us
Bon

У меня проблема, и я надеюсь на помощь?

У меня есть сервер с 5 сетевыми интерфейсами. Один использует PPPoE с мостового модема и получает внешний IP-адрес. Я использую firewalld и dnsmasq, чтобы поделиться этим подключением с другими 4 портами и устройствами в моей сети, все работает нормально.

Сейчас я пытаюсь поставить виртуальную машину на хост, используя libvirt/KVM. Это работает, и я создал машину с виртуальным диском на 512 МБ для загрузки и отдельным диском на 5 ГБ для root. Однако моя цель состоит в том, чтобы переместить корень 5 ГБ в корень NFS, чтобы виртуальная машина загружалась со своего / загрузочного диска и поворачивалась к корню NFS на хосте. Однако каждый раз, когда я пытаюсь смонтировать NFS с хоста на клиент, это не удается, доступ запрещен. Однако с любой машины в другом месте сети он монтируется.

Могу ли я не монтировать NFS с хоста на клиент? Я делаю что-то неправильно?

Причина, по которой я это делаю, заключается в том, что мой хост использует root (и пару других дисков) на дисках nvme или SATA SSD с файловой системой f2fs. Я бы предпочел, чтобы клиент мог использовать файловую систему f2fs через NFS непосредственно на хосте, чтобы драйвер f2fs хоста мог сбалансировать износ SSD, а не большой кусок виртуального диска, отформатированного под другую ФС, сидящую на дисках хоста. Для меня имеет смысл, что если корень для клиента размещен непосредственно в файловой системе f2fs, а не в необработанном образе диска, это уменьшит износ SSD? Я приму удар NFS (незначительный), если это означает, что я бережнее отношусь к фишкам и размещаю NFS поверх virtio (быстро?!)

Кто-нибудь сделал это? Какие-нибудь советы? Я сумасшедший?

Все машины, виртуальные или физические, получают уникальные IP-адреса от dnsmasq. Я могу пинговать с виртуального хоста и пинговать гугл с виртуального. Я просто не могу получить доступ к общим ресурсам NFS!

Спасибо,

Ян

Nikita Kipriyanov avatar
флаг za
Пожалуйста, предоставьте ваш файл `/etc/exports` с хоста, а также опишите конфигурацию сети (как вы подключаете виртуальную машину к сети, какие адреса у вас есть на хосте, в виртуальной машине и на машинах, где она работает и т. д. на). // Вы также можете избавиться от загрузочного тома, настроив загрузочную инфраструктуру PXE.
флаг cn
Как происходит аутентификация? Корневой сквош включен? Имеют ли пользователи и группы, обращающиеся к нему, одинаковые UID и GID на сервере и на клиенте?
Bon avatar
флаг us
Bon
@NikitaKipriyanov Экспорт с хоста: /NFSroot/OpenVPN 10.1.0.171/24(rw,sync,fsid=0,no_subtree_check,insecure) 171 i адрес, к которому привязан клиент, и он заблокирован в настройках dnsmasq. Все (физическое и виртуальное) внутри находится в подсети 10.1.0. Я хотел бы, чтобы виртуальная машина загружалась со своего собственного / загрузочного тома и поворачивалась к корню nfs?
Bon avatar
флаг us
Bon
@NasirRiley Думаю, да, но я проверю. Однако все, что монтируется извне, работает, это клиентские машины в KVM работать не будут. У меня есть все из Windows, Ubuntu, SuSE и Android, которые можно монтировать извне. Внутренние вещи не будут соединяться.
Bon avatar
флаг us
Bon
@NikitaKipriyanov У меня есть одна внешняя физическая карта, которая подключена к модему opwnwrt. Эта карта получает внешний IP-адрес. Firewalld и fail2ban плотно блокируют этот внешний сервер. Он находится во «внешнем» домене firewalld. Мои 4 внутренних физических порта являются «внутренними» на firewalld, замаскированными под внешний через мост br0. Сейчас я хочу добавить к этому br0 виртуальный интерфейс для виртуальной машины, чтобы она могла получить доступ к глобальному и локальному Интернету, как это делают все другие физические машины.
флаг cn
@Bon Я понимаю это, но проблема не в том, что он не смонтирован. Проблема заключается в ошибке отказа в разрешении, которая указывает на то, что пользователи и/или группы на клиенте не имеют разрешений, что может быть связано либо с тем, что их просто нет на сервере, либо с тем, что UID и GID не совпадают на обоих.
Nikita Kipriyanov avatar
флаг za
Какую версию NFS вы используете? NFSv3 * сложно * включить в брандмауэре из-за его архитектуры сопоставления портов.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.