Я новичок в Openstack и очень мало разбираюсь в расширенных сетевых концепциях. Я пытаюсь настроить простую установку Openstack Mitaka для работы, следуя официальным руководствам по установке. Я думал, что добился неплохих успехов, пока не добрался до сети.
У меня такая конфигурация:
Я развернул компоненты Keystone, Nova, Glance и Neutron на контроллере. Сервис Nova-compute и linuxbridge-agent на вычислительном узле. Попытка настроить сеть с помощью подключаемого модуля ML2, рекомендованного в руководстве по установке.
После выполнения всех перечисленных инструкций я не могу проверить связь ни с одним из экземпляров виртуальной машины, запущенных ни с моего компьютера, ни с моего узла контроллера. Это также может быть причиной того, что я не могу получить консольное соединение VNC с экземплярами. Я ясно вижу, что моя сетевая настройка неверна, так как мой экземпляр Ubuntu застревает при загрузке, ожидая появления сетевых интерфейсов.
Я воссоздавал сетевую настройку в Openstack несколько раз, но безуспешно. Прямо сейчас я все очистил и у меня нет провайдера или каких-либо других сетей, определенных в Neutron. Я был бы очень признателен, если бы кто-нибудь мог провести меня через этот процесс.
Я сомневаюсь, можно ли располагать контроллеры и вычислительные узлы в разных сегментах LAN. Не удалось найти решения для этого.
Судя по этому выводу, настройка пока что хороша:
neutron agent-list
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
| id | agent_type | host | availability_zone | alive | admin_state_up | binary |
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
| 11ff8610-8eb2-45d5-91e8-d7905beb668c | Linux bridge agent | controller | | :-) | True | neutron-linuxbridge-agent |
| 370794ac-0091-4908-8293-00d007f7f8be | Linux bridge agent | compute1 | | :-) | True | neutron-linuxbridge-agent |
| 444eca8d-3a34-4018-97ab-f23925e65713 | DHCP agent | controller | nova | :-) | True | neutron-dhcp-agent |
| 90f70ca7-afd2-4127-97f1-f623fac26e29 | Metadata agent | controller | | :-) | True | neutron-metadata-agent |
| ad2a6012-a348-47c7-8ee9-f41401fb048f | L3 agent | controller | nova | :-) | True | neutron-l3-agent |
+--------------------------------------+--------------------+------------+-------------------+-------+----------------+---------------------------+
Ниже я добавил конфигурации, которые могут помочь с этой проблемой.
/ и т.д. / сеть / интерфейсы
# The loopback network interface
auto lo
iface lo inet loopback
# The provider network interface
auto ens192
iface ens192 inet manual
up ip link set dev $IFACE up
down ip link set dev $IFACE down
# primary network interface
auto ens160
iface ens160 inet dhcp
Вывод ifconfig:
ens160 Link encap:Ethernet HWaddr 00:50:56:99:c5:74
inet addr:10.105.166.87 Bcast:10.105.166.255 Mask:255.255.255.0
inet6 addr: fe80::250:56ff:fe99:c574/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:995476 errors:0 dropped:0 overruns:0 frame:0
TX packets:639007 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:578268831 (578.2 MB) TX bytes:522577815 (522.5 MB)
ens192 Link encap:Ethernet HWaddr 00:50:56:99:14:d4
inet6 addr: fe80::250:56ff:fe99:14d4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:23276 errors:0 dropped:292 overruns:0 frame:0
TX packets:28 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1697881 (1.6 MB) TX bytes:1988 (1.9 KB)
Interrupt:19 Memory:fd3a0000-fd3c0000
маршрут -n:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.105.166.251 0.0.0.0 UG 0 0 0 ens160
10.105.166.0 0.0.0.0 255.255.255.0 U 0 0 0 ens160
/etc/neutron/plugins/ml2/linuxbridge_agent.ini: [linux_bridge]
#
# From neutron.ml2.linuxbridge.agent
#
# Comma-separated list of <physical_network>:<physical_interface> tuples
# mapping physical network names to the agent's node-specific physical network
# interfaces to be used for flat and VLAN networks. All physical networks
# listed in network_vlan_ranges on the server should have mappings to
# appropriate interfaces on each agent. (list value)
physical_interface_mappings = provider:ens192
# List of <physical_network>:<physical_bridge> (list value)
#bridge_mappings =
[vxlan]
#
# From neutron.ml2.linuxbridge.agent
#
# Enable VXLAN on the agent. Can be enabled when agent is managed by ml2 plugin
# using linuxbridge mechanism driver (boolean value)
enable_vxlan = True
local_ip = 10.105.166.87
l2_population = True
/ и т.д. / сеть / интерфейсы:
# The provider network interface
auto eno1
iface eno1 inet manual
up ip link set dev $IFACE up
down ip link set dev $IFACE down
# main network
auto enp4s0f3
iface enp4s0f3 inet dhcp
ifconfig:
eno1 Link encap:Ethernet HWaddr 00:1e:67:d8:ae:36
inet6 addr: fe80::21e:67ff:fed8:ae36/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:62075 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:10075695 (10.0 MB) TX bytes:648 (648.0 B)
Memory:91920000-9193ffff
enp4s0f3 Link encap:Ethernet HWaddr 00:1e:67:d8:ae:37
inet addr:10.105.167.134 Bcast:10.105.167.255 Mask:255.255.255.0
inet6 addr: fe80::21e:67ff:fed8:ae37/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:358572 errors:0 dropped:0 overruns:0 frame:0
TX packets:243401 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:203461227 (203.4 MB) TX bytes:75659105 (75.6 MB)
Memory:91900000-9191ffff
маршрут -a:
root@compute1:~# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.105.167.251 0.0.0.0 UG 0 0 0 enp4s0f3
10.105.167.0 0.0.0.0 255.255.255.0 U 0 0 0 enp4s0f3
/etc/neutron/plugins/ml2/linuxbridge_agent.ini:
[linux_bridge]
#
# From neutron.ml2.linuxbridge.agent
#
# Comma-separated list of <physical_network>:<physical_interface> tuples
# mapping physical network names to the agent's node-specific physical network
# interfaces to be used for flat and VLAN networks. All physical networks
# listed in network_vlan_ranges on the server should have mappings to
# appropriate interfaces on each agent. (list value)
physical_interface_mappings = provider:eno1
# List of <physical_network>:<physical_bridge> (list value)
#bridge_mappings =
[securitygroup]
#
# From neutron.ml2.linuxbridge.agent
#
# Driver for security groups firewall in the L2 agent (string value)
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
Что касается настройки сети, то это мои цели:
1) Я не хочу больше использовать IP-адреса в физической сети 2) Экземплярам виртуальных машин будут выделены IP-адреса в виртуализированном сегменте сети 3) Какая-то наложенная сеть, позволяющая им подключаться друг к другу 4) Сетевое подключение к Интернет требуется
Я читал об OpenVSwitch и о том, как его можно здесь использовать, однако он кажется довольно сложным, и я не уверен, действительно ли мне нужно прилагать усилия для получения этой настройки. Я был бы признателен за некоторые советы о том, как это можно настроить.
Очень признателен за помощь. Спасибо!