Я установил opennebula и следил за этот руководство. К сожалению, я не могу подключиться по ssh к виртуальным машинам, которые находятся в рабочем состоянии и уже имеют IP-адрес. Проблема может заключаться в том, что у меня одна сетевая карта, и хотя я читал, что мне следует использовать мост, я не уверен, возможно ли это и как.
Вывод команды brctl show
bridge name bridge id STP enabled interfaces
br0 8000.50e549b5e2aa no eth0
vnet0
virbr0 8000.000000000000 yes
vnet0 - это интерфейс виртуальной машины. Если я построю виртуальную машину для использования виртуального моста virbr0, у меня будет та же проблема.
мой файл интерфейсов
iface br0 inet static
address X.X.X.172
netmask 255.255.255.0
gateway X.X.X.200
pre-up ifconfig eth0 down
pre-up brctl addbr br0
pre-up brctl addif br0 eth0
pre-up ifconfig eth0 up
post-down ifconfig eth0 down
post-down brctl delif br0 eth0
iface eth0 inet manual
В ifconfig br0 назначен IP-адрес, определенный в интерфейсах (который является общедоступным), в то время как vnet0, похоже, отправляет данные (байты TX> 0), но никогда не получает (байты RX = 0). Я что-то упускаю? Можно ли использовать ssh для виртуальной машины с одним сетевым адаптером или мне нужен второй?
Что OpenNebula предполагает в своей документации Вот заключается в том, что хосты используют два физических интерфейса: один для частной сети, а другой - для подключения к Интернету. Конечно, если у хоста только один интерфейс, он может подключаться только к одной из сетей. Решение, которое я пробовал, чтобы не терять подключение к Интернету, заключалось в изменении файла интерфейсов, чтобы интерфейсу br0 автоматически назначался IP-адрес DHCP.
iface br0 inet dhcp
Я также изменил файл определения сети, чтобы он содержал аренду общедоступных IP-адресов, которые не были назначены dhcp. Созданной мной виртуальной машине был успешно назначен общедоступный IP-адрес. Хотя я смог подключиться к этой виртуальной машине по ssh, то это может сделать любой в Интернете, поэтому я не собираюсь сохранять эту конфигурацию.