devstack - разрешить ssh от гостевой виртуальной машины к devstack

может ли гостевой экземпляр в стеке разработки со следующими интерфейсами и маршрутом (см. ниже) получить доступ к экземпляру стека разработки таким образом: ssh [email protected] (ключи установлены правильно)?

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc pfifo_fast state UP group default qlen 1000
    link/ether fa:16:3e:68:3d:7c brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.4/26 brd 10.0.0.63 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:fe68:3d7c/64 scope link 
       valid_lft forever preferred_lft forever


Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.192 U     0      0        0 eth0
169.254.169.254 10.0.0.1        255.255.255.255 UGH   0      0        0 eth0

это таблица маршрутизации экземпляра devstack Таблица IP-маршрутизации ядра

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
10.0.0.0        192.168.1.228   255.255.252.0   UG    0      0        0 br-ex
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.1.224   0.0.0.0         255.255.255.224 U     0      0        0 br-ex
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

6: br-ex: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default 
    link/ether 12:14:51:c6:b2:49 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.225/27 scope global br-ex
       valid_lft forever preferred_lft forever
    inet6 fe80::1014:51ff:fec6:b249/64 scope link 
       valid_lft forever preferred_lft forever

Какое правило я должен добавить, чтобы разрешить экземплярам с ip 10.0.0.0/24 использовать ssh на машине devstack? Следует ли мне изменить некоторые правила брандмауэра (безуспешно) или изменить правила маршрутизации? это localrc

[[local|localrc]]
FLOATING_RANGE=192.168.1.224/27
FIXED_RANGE=10.0.0.0/24
FIXED_NETWORK_SIZE=256
FLAT_INTERFACE=eth0

person chi    schedule 22.03.2017    source источник


Ответы (3)


Попробуйте добавить IP-адрес хоста на свой local.conf. Например:

HOST_IP=10.0.0.1
person Geronaso    schedule 06.04.2017

Я даже попробовал HOST_IP = 10.0.0.1 в файле конфигурации devstack, но devstack не смог запуститься.

Поскольку моя проблема заключалась в том, что гостевые экземпляры не могли выполнить rsync с экземпляром devstack, я просто изменил сценарий rsync в изображениях на rsync на другом IP-адресе экземпляра devstack, который был легко доступен.

Я подозреваю, что если нужно делать то, что я просил, в первую очередь следует искать в пространствах имен нейтронов. Но так как я нашел обходной путь, я не пробовал.

person chi    schedule 07.04.2017

Нет, не может. И 10.0.0.1 не смотрит ваш IP-адрес экземпляра devstack. Я думаю, что ваш local.conf (старый localrc) не подходит. Попробуйте использовать только:

[[local|localrc]]
...
IP_VERSION=4
HOST_IP=192.168.1.104
FLOATING_RANGE="192.168.1.224/27"
Q_FLOATING_ALLOCATION_POOL=start=192.168.1.226,end=192.168.1.254

Остальное установит Devstack. Только после этого ваш гостевой экземпляр должен получить доступ к хосту Devstack.

Но я думаю, вам нужно больше, чем просто это. Попробуй это:

  1. В группах безопасности добавьте правила входа для ICMP, SSH, а также HTTP и HTTPS;
  2. В частной сети отредактируйте частную подсеть, чтобы добавить DNS-серверы имен (8.8.8.8, 1.1.1.1 и т. Д.);
  3. Выделены несколько плавающих IP-адресов;
  4. Запустить несколько экземпляров;
  5. Свяжите плавающий IP-адрес с каждым экземпляром;
  6. Установите proxy_arp и iptables (в хосте Devstack).

Как открыть плавающий стек разработчика ip во внешний мир?

person marcio    schedule 04.12.2019