Сетевой компонент Openstack Neutron
Содержание
От виртуализации к облачным вычислениям
Коммутация Раньше
Коммутация Одна сеть Один узел
Коммутация Одна сеть Разные узлы
Маршрутизация Раньше
Маршрутизация Сейчас - DVR
Маршрутизация Разные сети Один узел
Маршрутизация Разные сети Разные узлы
Маршрутизация Внешние сети Floating IP
Маршрутизация Внешние сети Без Floating IP
Типы устройств
Спасибо
2.33M
Category: internetinternet

Сетевой компонент Openstack Neutron

1. Сетевой компонент Openstack Neutron

Марат Сибгатулин
[email protected]
linkmeup
19.05.2017

2. Содержание

• Виртуализация vs Облачные вычисления
• История Openstack
• Архитектура Openstack
• Сетевой компонент Neutron
• Жизнь
акета
• Коммутация
• Маршрутизация
linkmeup
Openstack. Neutron. 2

3. От виртуализации к облачным вычислениям

Облачные вычисления
Виртуализация
- Разделение ПО и аппаратной платформы.
- Позволяет запускать различные ОС и
приложении на одной физической
инфраструктуре
- ПО управляет аппаратным обеспечением.
Виртуализация
Облачные вычисления
Услуги, которые рождаются из виртуализации
- Гибкость
- Скорость
- Масштабируемость
- Автоматизированное управление
- Возможность самообслуживания
linkmeup
Openstack. Neutron. 3

4.

Тренды облачных вычислений
Гибкость
Ресурсы можно добавлять и снижать по
мере необходимости
Отказоустойчивость
http://www.tadviser.ru/
20 VMs
70 VMs
20 VMs
http://eekpek-kenyalkenyal.rhcloud.com/
linkmeup
От
отказоустойчивой
инфраструктуры
К
отказоустойчивым
приложения
Openstack. Neutron. 4

5.

Openstack community
32000
600+
20 M
linkmeup
contributors
companies members
rows of code
Openstack. Neutron. 5

6.

Openstack components
Nova — контроллер вычислительных ресурсов;
Glance — библиотека образов виртуальных
машин, обычно с бэкендом в Swift;
Swift — облачное файловое хранилище;
Cinder — служба работы с блочными
устройствами хранения данных (выведена из
Nova в отдельный проект);
Keystone — сервис идентификации;
Neutron — сервис NaaS между интерфейсами
устройств (vNIC), которые управляются другими
сервисами OpenStack.
Horizon — графический интерфейс
администрирования.
Heat — оркестратор
linkmeup
Openstack. Neutron. 6

7.

Openstack Neutron
Quantum. Folsom. Сентябрь 2012.
Neutron. Havana. Октябрь 2013.
Функции:
Базовая коммутация и маршрутизация
LBaaS
FWaaS
VPNaaSS
linkmeup
Openstack. Neutron. 7

8.

Neutron. The Modular Layer 2
• Framework, позволяющий Openstack
одновременно использовать различные
сетевые технологии второго уровня.
• Нет необходимости писать новый
плагин с нуля.
• Отсутствие избыточного кода.
• Лёгкость добавления новых L2
технологий.
type driver / mech
driver
Open vSwitch
Linux bridge
SRIOV
MacVTap
L2 population
Flat
VLAN
VXLAN
GRE
yes
yes
yes
yes
no
yes
yes
yes
yes
no
yes
yes
no
no
yes
yes
yes
no
no
yes
linkmeup
Openstack. Neutron. 8

9. Коммутация Раньше

linkmeup
Openstack. Neutron. 9

10.

Compute Node 1
Instance
Instance
Linux Bridge
Compute Node 2
Instance
Instance
Linux Bridge
linkmeup
Compute Node 3
Instance
Instance
Linux Bridge
Openstack. Neutron. 10

11. Коммутация Одна сеть Один узел

linkmeup
Openstack. Neutron. 11

12.

Compute Node 1
Stan
Kyle
10.1.1.11
eth0
10.1.1.12
eth0
tap
tap
QBR
QBR
Linux Bridge
qvb
Linux Bridge
qvb
qvo
qvo
Linux Bridge Security groups via iptables
qvb + qvo = veth pair
VLAN1
BR-INT
OpenVSwitch
OpenVSwitch
Коммутация по MAC-адресам
Сегментация сетей посредством VLAN
VLAN2
qvo
qvb + qvo = veth pair
qvb
QBR
Linux Bridge Security groups via iptables
Linux Bridge
tap
eth0
10.2.2.10
Bender
linkmeup
Openstack. Neutron. 12

13. Коммутация Одна сеть Разные узлы

linkmeup
Openstack. Neutron. 13

14.

Compute Node 2
Compute Node 1
Физическая сеть
BR-TUN
VNI 7
OpenVSwitch VXLAN-Tunnel
VXLAN-Tunnel
BR-TUN
OpenVSwitch
patch-int
patch-int
patch-tun
patch-tun
BR-INT
BR-INT
OpenVSwitch
OpenVSwitch
VLAN2
VLAN4
QBR
QBR
tap
eth0
10.2.2.10
10.2.2.14
Bender
Leela
linkmeup
Openstack. Neutron. 14

15. Маршрутизация Раньше

linkmeup
Openstack. Neutron. 15

16.

Compute Node 1
Instance
Instance
Linux Bridge
Compute Node 2
Instance
Instance
Network Node
Linux Bridge
Compute Node 3
Instance
QROUTER
Instance
Linux Bridge
linkmeup
Openstack. Neutron. 16

17. Маршрутизация Сейчас - DVR

linkmeup
Openstack. Neutron. 17

18.

Compute Node 1
Instance
Instance
Linux Bridge
Compute Node 2
Instance
Instance
Network Node
Linux Bridge
Compute Node 3
Instance
QROUTER
Instance
Linux Bridge
linkmeup
Openstack. Neutron. 18

19. Маршрутизация Разные сети Один узел

linkmeup
Openstack. Neutron. 19

20.

Compute Node 1
Stan
BMW-1
10.1.1.11
QBR
VLAN1
BR-INT
VLAN2
10.1.1.1
QROUTER
Network
Namespaces
10.2.2.1
QBR
10.2.2.10
Bender
linkmeup
Openstack. Neutron. 20

21. Маршрутизация Разные сети Разные узлы

linkmeup
Openstack. Neutron. 21

22.

Compute Node 2
Compute Node 1
Физическая сеть
QROUTER
BR-TUN
VNI 7
VNI 17
BR-TUN
10.1.1.1 10.2.2.1
QROUTER
10.1.1.1 10.2.2.1
VLAN2
VLAN2
BR-INT
BR-INT
VLAN4
VLAN1
Linux
Bridge
Linux
Bridge
10.1.1.13
10.2.2.14
Eric
Leela
linkmeup
Openstack. Neutron. 22

23.

Compute Node 2
Compute Node 1
Физическая сеть
QROUTER
BR-TUN
VNI 7
VNI 17
BR-TUN
10.1.1.1 10.2.2.1
QROUTER
10.1.1.1 10.2.2.1
VLAN2
VLAN2
BR-INT
BR-INT
VLAN4
VLAN1
Linux
Bridge
Linux
Bridge
10.1.1.13
10.2.2.14
Eric
Leela
linkmeup
Openstack. Neutron. 23

24. Маршрутизация Внешние сети Floating IP

linkmeup
Openstack. Neutron. 24

25.

Compute Node 1
Stan
BMW-1
10.1.1.11
QBR
VLAN1
Интернет
QROUTER
10.1.1.1
Network
Namespaces
BR-INT
VLAN3
198.51.100.5
FIP
Network
Namespaces
198.51.100.1
BR-EX
OpenVSwitch
linkmeup
Openstack. Neutron. 25

26. Маршрутизация Внешние сети Без Floating IP

linkmeup
Openstack. Neutron. 26

27.

Compute Node 1
Stan
BMW-1
198.51.100.1
10.1.1.11
Интернет
QBR
Network Node
BR-INT
BR-EX
OpenVSwitch
VLAN1
SNAT
Network
Namespaces
198.51.100.2 10.1.1.2
10.1.1.1
QROUTER
BR-TUN
VNI 17
linkmeup
BR-TUN
VLAN1
VLAN1
BR-INT
Openstack. Neutron. 27

28.

Compute Node 1
Stan
BMW-1
198.51.100.1
10.1.1.11
Интернет
QBR
Network Node
BR-INT
BR-EX
OpenVSwitch
VLAN1
SNAT
Network
Namespaces
198.51.100.2 10.1.1.2
10.1.1.1
QROUTER
BR-TUN
VNI 17
linkmeup
BR-TUN
VLAN1
VLAN1
BR-INT
Openstack. Neutron. 28

29. Типы устройств

linkmeup
Openstack. Neutron. 29

30.

Compute Node 1
Stan
BMW-1
10.1.1.11
QBR
Virtual Instance
198.51.100.1
Интернет
Linux Bridge
Network Node
OpenVSwitch
OpenVSwitch
BR-INT
BR-EX
SNAT
Network Namespace
10.1.1.1
QROUTER
BR-TUN
BR-TUN
BR-INT
OpenVSwitch
OpenVSwitch
VNI
Network Namespace
OpenVSwitch
linkmeup
Openstack. Neutron. 30

31. Спасибо

linkmeup
Марат Сибгатулин
[email protected]
English     Русский Rules