Автор Тема: alt-server-virtualization: настройка bridge для виртуальных машин QEMU KVM  (Прочитано 15408 раз)

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
Добрый день коллеги и форумчане.

Не получается настроить публичный мост, что бы гостевые машины были видны в физической сети и получали айпишники от шлюза с dhcp сервером.

На сервере (основной хост, сервер виртуализации) развернут alt-server-virtualization-v9 в сети 10.1.0.0/24 через сетевую карту enp2s0f0.
ip этого сервера: 10.1.0.2/24, шлюз: 10.1.0.1, ПК в сети ходят по DHCP: 10.1.0.10 - 10.1.0.100

На своем ноутбуке устанавливаю соединение с QEMU KVM на сервере через Virtual Machine Manager, а так же по ssh. Через консоль запускаю Web интерфейс Alterator (systemctl start ahttpd.service и systemctl start alteratord.service).
Захожу через web в альтератор в раздел "Сеть" - "Ethernet-интерфейсы". Создаю там бридж и выбираю свой адаптер enp2s0f0. Присваиваю новому интерфейсу br0 тот же самый ip адрес что и был 10.1.0.2 шлюз тот же самый. Сохраняю - все вроде ок!

Далее перехожу к QEMU KVM  с помощью Virtual Machine Manager. В свойствах подключения с сервером 3 вкладки "обзор", "виртуальные сети", "пространство данных". На вкладке виртуальные сети удаляю дефолтную настройку (т.к. она по умолчанию предлагает сеть через NAT). Ничего там не создаю. Настраиваю пространство данных и собственно создаю виртуальную машину Ubuntu. В настройках виртуальной машины в сетевом интерфейсе указываю "устройство моста" и руками впечатываю само устройство br0 тот самый физический бридж которые делался на самом хосте ранее (скриншот прилагается).

Запуск гостевой машины и.... - нифига не происходит )))) Виртуальные машины изолированы реальной сети... скрин ip add с хостовой машины прилагаю. Помогите что делаю не так?

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
мои настройки на xfce-sysv
# ls /etc/net/ifaces/
breth0  default  ether0  ether1  lo  unknown
# ls /etc/net/ifaces/breth0/
options
# cat /etc/net/ifaces/breth0/options
TYPE=bri
BOOTPROTO=dhcp
HOST=ether0
DISABLED=no
NM_CONTROLLED=no
CONFIG_WIRELESS=no
CONFIG_IPV4=yes

# ls /etc/net/ifaces/ether0
options
# cat /etc/net/ifaces/ether0/options
TYPE=eth
CONFIG_WIRELESS=no
BOOTPROTO=static
CONFIG_IPV4=yes

Указываю breth0 и все работает.

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
Щас буду пробовать, отпишусь.

____ Попробовал.

Если в опциях br0 (в вашем случае это breth0) я укажу DHCP то хост будет получать каждый раз новый ip от dhcp сервера. В принципе у меня такие же почти настройки, кроме одного: в опциях моего интерфейса enp2s0f0 (у вас это (ether0) в строке CONFIG_IPV4= стоит no. (Так сконфигурировал альтератор). Пробовал приводить настройки руками как у вас, в итоге сервак получил динамический ip от dhcp сервера на шлюзе и виртуальная машина так и не получила ip. собственно ничего не изменилось..

в выводе ip add (скриншот прилагается) меня смущает вывод 16: vnet0: такой кусочек фразы : "state UNKNOWN group default" ...Правильно ли это
« Последнее редактирование: 03.11.2020 09:44:26 от Геннадий К »

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
Указываю breth0 и все работает.

а где указываете?

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
а где указываете?

dhcp на бриджах, лень настраивать. В ручную нужно создать соответствующие файлы. Если в DHCP закрепить адрес, ничего не будет меняться
« Последнее редактирование: 03.11.2020 11:09:29 от rabochyITs »

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
все верно у меня тоже самое по сути на скриншоте в первом посте. но не работает.... он там пишет предупреждение, но по настройкам все вроде тоже самое... 8-| :-\

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
все верно у меня тоже самое по сути на скриншоте в первом посте. но не работает.... он там пишет предупреждение, но по настройкам все вроде тоже самое... 8-| :-\

Я ошибся, интерфейс моста breth0 должен получить IP-адрес, а интерфейс eth.. должен быть без адреса.

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
Я ошибся, интерфейс моста breth0 должен получить IP-адрес, а интерфейс eth.. должен быть без адреса.

Получается что ваш хост виртуализации получает ip по dhcp?. Мост ведь у вас не виртуальный а сделан на базе сетевой карты хоста и смотрит в физическую локальную сеть.. В моем случае, отличие только в том,  что сервак (хост) имеет статический ip. И на 2 скриншете в начале темы, написано рядом с строчкой "Создать на базе" что нет подходящей сети (оранжевым) . т.е. мой бридж qemu kvm получается не видит...  Вы на какой платформе альта разворачивали виртуализацию??

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
Вы на какой платформе альта разворачивали виртуализацию??
sysvinit etcnet
Startkit-ы xfce-sysv-p9 - дистр, также поднимал и на server-sysv-p9
На systemd давненько не пробовал, а утебя NetworkManager выключен?

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
Еще один момент, при запуске под пользователем virt-manager-а,
пользователь должен быть в группе vmusers

# cat /etc/group | grep users
vmusers:x:479:пользователь_virt_менеджера
добавь
# usermod -a -G vmusers пользователь_virt_менеджера
и перелогинься

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
Вот мой скрин подключений

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
все нормально.

cat /etc/group | grep users
users:x:100:k9
vboxusers:x:481:k9
vmusers:x:460:k9
powerusers:x:102:


Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
Вот мой скрин подключений

Все правильно, у вас это подключение просто не активно а я у себя его просто удалил..

Оффлайн Геннадий К

  • Начинающий
  • *
  • Сообщений: 21
может еще какие мысли будут, пишите, спасибо за уделенное время.

Вопрос актуальный!!!  8-|

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 031
  • ITS
поэксперементируй в консоли, вот разные параметры:

## Bus 001 Device 018: ID 0bc2:2300 Seagate RSS LLC Expansion Portable
qemu-system-x86_64 -enable-kvm \
-cpu core2duo \
-accel accel=kvm,thread=multi \
-daemonize \
-net nic -net user \
-m 2048 \
-usb -device usb-host,vendorid=0x0bc2,productid=0x2300 \
-drive format=qcow2,file=/var/lib/libvirt/images/cldx.qcow2

### NET ### ...
# Одинаковые записи
-netdev user,id=n1,ipv6=off -device e1000,netdev=n1,mac=52:54:98:76:54:32
-nic user,ipv6=off,model=e1000,mac=52:54:98:76:54:32
# Видимые из виртуальной машины ip хоста
-netdev user,id=n1,ipv6=off,net=192.168.1.0/24,host=192.168.1.1 -device e1000,netdev=n1,mac=52:54:98:76:54:32
netdev user,id=n1,ipv6=off,net=192.168.1.0/24,restrict=off
# Готовые интерфейсы
-net nic,id=n1,macaddr=00:e0:4c:4f:35:81,model=rtl8139 -net tap,ifname=tap0,script=no

qemu-system-x86_64 -enable-kvm -cpu core2duo -accel accel=kvm,thread=multi -daemonize -net nic -net user -m 2048 \
-drive format=qcow2,file=/mnt/disk/virhdd/serv9.qcow2 -boot d -cdrom /home/evgeny/Загрузки/alt-p9-server-20190626-x86_64.iso


virt-install --connect qemu:///system \
--name vm1 \
--ram 2048 \
--vnc \
--accelerate \
--network=bridge:breth0 \
--disk path=/mnt/image/adm1_bs2.qcow2 \
--noautoconsole