1
Dmitry Yuferov
Technical Sales Lead
2
ФАКТЫ
• Основана в 2004
• Первый продукт в 2008
• IPO в июне 2014
• Капитализация > 5 Млрд $
• Поставщик 5 из 6 глобальных «облачных»
операторов
• В России и СНГ с конца 2011 (несколько ЦОД
полностью построены на Arista)
2015 GARTNER MAGIC QUADRANT DATA CENTER NETWORKING
2015 2016
ОТКУДА ПОЯВИЛАСЬ ARISTA
Облачные
сервисы
Корпоративный
бизнес
Среднийималый
бизнес
5 из 6 глобальный
облачных операторов
ЦОД Медиа Финансы
HPC СХД Мониторинг
Серверный сегмент
ARISTA EXTENSIBLE OPERATING SYSTEM (EOS)
 Используются стандартные
чипы
 ОС использует стандартное
ядро Linux (Fedora)
 Простая архитектура сети
 Все процессы общаются через
центральную БД (SysDB)
Важно:
• API для доступа к SysDB
• Система самовосстановления
следит за выживаемостью ОС
Система
самовосстановления
LINUX, КАК ОН ЕСТЬ
6
s7281#
s7281#sh ver
Arista DCS-7280SE-64-F
Hardware version: 00.02
Serial number: JAS14140003
System MAC address: 001c.7374.327f
Software image version: 4.17.0F
Architecture: i386
Internal build version: 4.17.0F
Internal build ID: 4bb383cc-58fe-4d6e-a790-39eeeecc720f
Uptime: 2 weeks, 1 day, 21 hours and 55 minutes
Total memory: 3538144 kB
Free memory: 1555664 kB
s7281#
s7281#bash
Arista Networks EOS shell
[admin@s7281 ~]$ uname -a
Linux s7281 3.4.43.Ar-3214573.ijdmzmplsGre #1 SMP PREEMPT Tue May 24 19:09:53 PDT 2016 x86_64
x86_64 x86_64 GNU/Linux
[admin@s7281 ~]$
[admin@s7281 ~]$ ps -e
PID TTY TIME CMD
1 ? 00:01:29 systemd
2 ? 00:00:00 kthreadd
3 ? 00:00:00 ksoftirqd/0
6 ? 00:00:03 migration/0
8 ? 00:00:03 migration/1
10 ? 00:00:00 ksoftirqd/1
13 ? 00:00:03 migration/2
Привычный CLI
Выход в bash
Чистый Linux
ЧТО ЭТО ДАЕТ?
7
Использование tcpdump на коммутаторе
Можно создавать свои собственные команды:
switch#bash sudo tcpdump –I e1
tcpdump: WARNING: fabric: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on fabric, link-type EN10MB (Ethernet), capture size 65535 bytes
12:57:30.222171 00:1c:73:0f:80:a6 (oui Unknown) > 01:00:5e:00:00:05 (oui Unknown
), ethertype 802.1Q (0x8100), length 82: vlan 1, p 0, ethertype IPv4, 10.10.50.1
> OSPF-ALL.MCAST.NET: OSPFv2, Hello, length 44
12:57:40.222687 00:1c:73:0f:80:a6 (oui Unknown) > 01:00:5e:00:00:05 (oui Unknown
), ethertype 802.1Q (0x8100), length 82: vlan 1, p 0, ethertype IPv4, 10.10.50.1
> OSPF-ALL.MCAST.NET: OSPFv2, Hello, length 44
localhost# cat -n HelloCli.py
1 import BasicCli, CliParser
2 tokenHello = CliParser.KeywordRule( 'hello', helpdesc='Says hello' )
3 def doHello( mode ):
4 print "World.n"
5 BasicCli.UnprivMode.addCommand( ( tokenHello, doHello ) )
localhost>show ?
...
hello Show your hello
....
localhost>show hello ?
| Output modifiers
<cr>
localhost>show hello
Hello World.
Localhost>
Выход в среду Linux по команде ‘bash’:
Arista7124SX#bash
Arista Networks EOS shell
[admin@switch ~]$
Команды EOS написаны на Python.
Скрипт ‘Cli.py’:
[admin@switch site-packages]$ pwd
/usr/lib/python2.7/site-packages
[admin@switch site-packages]$ ls Cli*.py
Cli.py CliExtensions.py CliParser.py
CliAuth.py CliInputWrapper.py CliSave.py
The request:
{
"jsonrpc": "2.0”,
"method": "runCli”,
"params": {
"cmds": [
"configure",
"vlan Ethernet1,Ethernet4",
"switchport access vlan 3",
"show vlan 3”,
],
"format": "json”
},
"id": 1
}
Удаленный JSON call на коммутатор
EOS - ПРОГРАММНО-АППАРАТНАЯ ПЛАТФОРМА
ПРИНЦИПЫ EOS В МАСШТАБАХ СЕТИ
Open &
Programmable
Merchant Silicon
SysDB
CLI
SNMP
VXLAN
VM
Tracer
OSPFSTP
ASIC
Driver
SDN
APIs
LAG
BGP
Modular &
Resilient
Universal Cloud
Network
Customer Driven
Flexibility
Cloud Scale
Economics
EOS
vEOS
ПринципыEOS
Эволюция к NetDB
Платформа автоматизации всей сети
ARISTA CLOUD VISION
Агрегированная сетевая
‘Sysdb’
Абстракция физической
сети
Единая точка
интеграции
Масштабируемая
интеграция с
контроллерами
Система управления и
мониторинга
State-sync
State-sync
ТОЧКА ИНТЕГРАЦИИ
Сетевой
уровень
Точка
управления
сетью
OVSDB
JSON
Точки
интеграции
Интеграция с контроллерами Best of Breed
Облака
Оверлей
контроллеры
Сторонние
решения
Сетевые
сервисы
Web-based GUI
CLI
ИНТЕГРАЦИЯ С OPENSTACK = ML2
12
 Controller agnostic
 Интеграция с Neutron
 Интеграция через CloudVision
 Neutron позволяет иметь только
один ML2 плагин
 ML2 Plugin
• Позволяет иметь несколько L2
• Type Driver (vlan, vxlan, etc..)
• Mechanism Driver (ovs, arista, etc..)
 Принимает вызовы от других
сервисов (Horizon, Nova)
РЕАЛИЗАЦИЯ L2 С VXLAN
13
Инкапсуляция VXLAN в железе!
L2 ПОДНЯЛИ. ЧТО С L3?
 Arista L3 плагин provisions SVI через eAPI (JSON). В ответ тенанты
создают логические роутеры
 Маршрутизация происходит на определенных сетевых нодах
– Пара коммутаторов (MLAG = Active/Active)
– Производят маршрутизацию кластера OpenStack
 Маршрутизация в железе!
…
MLAG Spine
OVS
Rack N-1
OVS
Rack N-2
OVS
Rack N
OVS Arista
Neutron
ML2
L2 Fabric
Infra / GW Rack
Arista L3 node
Arista
L3 Plugin
ПОРТФОЛИО
Volume Value
SplineTM/SpineLeaf
7300 Series
7150 Series
7500 Series
7280 Series
7050 Series
Единый образ EOS на всех платформах
7060 Series
А ТЕПЕРЬ: ДВЕ НОВОСТИ
16
НОВОСТЬ 1: 25G, 50G, 100G
17
• Flexible Port Configurations
• Scalable Throughput
• Scalable Packet Processing
• Low Latency
• Rich EOS Automation
7260QX-64
64 QSFP+ 40GbE ports *
7060CX-32
32 QSFP100 ports
450ns Latency
VXLAN Routing and Bridging
136K MAC Addresses
128K IPv4 and 84K IPv6 Routes
104K Host Routes
7260CX-64
64 QSFP100 ports
* 40GbE Only
1RU and 2RU systems for 40G and 100G scale-out Applications
НОВОСТЬ 2: МЫ ДЕЛАЕМ МАРШРУТИЗАТОРЫ!
18
Full internet table
MPLS
BGP, IS-IS, OSPF
Все хранится в железе! (технология FlexRoute)
Сходимость в 4,5 быстрее, чем у ближайшего
конкурента
УНИВЕРСАЛЬНЫЙ ЯДРОВОЙ КОММУТАТОР
– 7500R
• 115Tbps
• 432 x 100GbE
• 1,000,000 маршрутов
• 100,000 туннелей
• 288 GB буферная память
• FlexRoute Engine
• 400G ready
ОСОЗНАНИЕ БОЛЬШИХ ВЕЛИЧИН
Средний размер твита 200B
Source –
Twitter.com
Джастин Бибер имеет 78 миллионов фолловеров
Source –
Twitter.com
www.flickr.com - user
iloveJB123
Это124,800,000,000 бит на каждый твит Бибера
Один 7500R может обработать 460 BTPS для всех
78M фолловеров
7280R – КОММУТАТОРЫ 10/40/100G С ГЛУБОКИМИ
БУФЕРАМИ
• До 48 портов 100GbE (wire speed)
• До 10.24 Tbps и 5.76 Bpps
• FlexRoute™ - 1M маршрутов IPv4 и IPv6
• Глубокие динамические буферы
• Архитектура VOQ (без потерь)
• EOS NetDB
• Маршрутизация VXLAN
• EVPN, MPLS, Segment Routing
• Задержка менее 4 мкс
• Wire speed L2 и L3
• Аплинки 10/40G и 25/100G (HPC & CDN)
• Базируется на открытых стандартах
• Использует только открытые протоколы
• Никаких фабрик!
• Отсутствия vendor lock-in
• Облачая система управления CloudVision
• Коммутаторы работают по традиционным протоколам
(LACP, BGP, IS-IS, OSPF…)
• Централизованное управление состояниями там, где это нужно
(например, VXLAN)
• Интеграция с OpenStack через CloudVision
• Обработка трафика в железе (производительность!)
• Поддержка ML2
• Возможность маршрутизации трафика OpenStack в железе

Arista интеллектуальная сеть и облако

  • 1.
  • 2.
    2 ФАКТЫ • Основана в2004 • Первый продукт в 2008 • IPO в июне 2014 • Капитализация > 5 Млрд $ • Поставщик 5 из 6 глобальных «облачных» операторов • В России и СНГ с конца 2011 (несколько ЦОД полностью построены на Arista)
  • 3.
    2015 GARTNER MAGICQUADRANT DATA CENTER NETWORKING 2015 2016
  • 4.
    ОТКУДА ПОЯВИЛАСЬ ARISTA Облачные сервисы Корпоративный бизнес Среднийималый бизнес 5из 6 глобальный облачных операторов ЦОД Медиа Финансы HPC СХД Мониторинг Серверный сегмент
  • 5.
    ARISTA EXTENSIBLE OPERATINGSYSTEM (EOS)  Используются стандартные чипы  ОС использует стандартное ядро Linux (Fedora)  Простая архитектура сети  Все процессы общаются через центральную БД (SysDB) Важно: • API для доступа к SysDB • Система самовосстановления следит за выживаемостью ОС Система самовосстановления
  • 6.
    LINUX, КАК ОНЕСТЬ 6 s7281# s7281#sh ver Arista DCS-7280SE-64-F Hardware version: 00.02 Serial number: JAS14140003 System MAC address: 001c.7374.327f Software image version: 4.17.0F Architecture: i386 Internal build version: 4.17.0F Internal build ID: 4bb383cc-58fe-4d6e-a790-39eeeecc720f Uptime: 2 weeks, 1 day, 21 hours and 55 minutes Total memory: 3538144 kB Free memory: 1555664 kB s7281# s7281#bash Arista Networks EOS shell [admin@s7281 ~]$ uname -a Linux s7281 3.4.43.Ar-3214573.ijdmzmplsGre #1 SMP PREEMPT Tue May 24 19:09:53 PDT 2016 x86_64 x86_64 x86_64 GNU/Linux [admin@s7281 ~]$ [admin@s7281 ~]$ ps -e PID TTY TIME CMD 1 ? 00:01:29 systemd 2 ? 00:00:00 kthreadd 3 ? 00:00:00 ksoftirqd/0 6 ? 00:00:03 migration/0 8 ? 00:00:03 migration/1 10 ? 00:00:00 ksoftirqd/1 13 ? 00:00:03 migration/2 Привычный CLI Выход в bash Чистый Linux
  • 7.
    ЧТО ЭТО ДАЕТ? 7 Использованиеtcpdump на коммутаторе Можно создавать свои собственные команды: switch#bash sudo tcpdump –I e1 tcpdump: WARNING: fabric: no IPv4 address assigned tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on fabric, link-type EN10MB (Ethernet), capture size 65535 bytes 12:57:30.222171 00:1c:73:0f:80:a6 (oui Unknown) > 01:00:5e:00:00:05 (oui Unknown ), ethertype 802.1Q (0x8100), length 82: vlan 1, p 0, ethertype IPv4, 10.10.50.1 > OSPF-ALL.MCAST.NET: OSPFv2, Hello, length 44 12:57:40.222687 00:1c:73:0f:80:a6 (oui Unknown) > 01:00:5e:00:00:05 (oui Unknown ), ethertype 802.1Q (0x8100), length 82: vlan 1, p 0, ethertype IPv4, 10.10.50.1 > OSPF-ALL.MCAST.NET: OSPFv2, Hello, length 44 localhost# cat -n HelloCli.py 1 import BasicCli, CliParser 2 tokenHello = CliParser.KeywordRule( 'hello', helpdesc='Says hello' ) 3 def doHello( mode ): 4 print "World.n" 5 BasicCli.UnprivMode.addCommand( ( tokenHello, doHello ) ) localhost>show ? ... hello Show your hello .... localhost>show hello ? | Output modifiers <cr> localhost>show hello Hello World. Localhost> Выход в среду Linux по команде ‘bash’: Arista7124SX#bash Arista Networks EOS shell [admin@switch ~]$ Команды EOS написаны на Python. Скрипт ‘Cli.py’: [admin@switch site-packages]$ pwd /usr/lib/python2.7/site-packages [admin@switch site-packages]$ ls Cli*.py Cli.py CliExtensions.py CliParser.py CliAuth.py CliInputWrapper.py CliSave.py The request: { "jsonrpc": "2.0”, "method": "runCli”, "params": { "cmds": [ "configure", "vlan Ethernet1,Ethernet4", "switchport access vlan 3", "show vlan 3”, ], "format": "json” }, "id": 1 } Удаленный JSON call на коммутатор
  • 8.
  • 9.
    ПРИНЦИПЫ EOS ВМАСШТАБАХ СЕТИ Open & Programmable Merchant Silicon SysDB CLI SNMP VXLAN VM Tracer OSPFSTP ASIC Driver SDN APIs LAG BGP Modular & Resilient Universal Cloud Network Customer Driven Flexibility Cloud Scale Economics EOS vEOS ПринципыEOS Эволюция к NetDB
  • 10.
    Платформа автоматизации всейсети ARISTA CLOUD VISION Агрегированная сетевая ‘Sysdb’ Абстракция физической сети Единая точка интеграции Масштабируемая интеграция с контроллерами Система управления и мониторинга State-sync
  • 11.
    State-sync ТОЧКА ИНТЕГРАЦИИ Сетевой уровень Точка управления сетью OVSDB JSON Точки интеграции Интеграция сконтроллерами Best of Breed Облака Оверлей контроллеры Сторонние решения Сетевые сервисы Web-based GUI CLI
  • 12.
    ИНТЕГРАЦИЯ С OPENSTACK= ML2 12  Controller agnostic  Интеграция с Neutron  Интеграция через CloudVision  Neutron позволяет иметь только один ML2 плагин  ML2 Plugin • Позволяет иметь несколько L2 • Type Driver (vlan, vxlan, etc..) • Mechanism Driver (ovs, arista, etc..)  Принимает вызовы от других сервисов (Horizon, Nova)
  • 13.
    РЕАЛИЗАЦИЯ L2 СVXLAN 13 Инкапсуляция VXLAN в железе!
  • 14.
    L2 ПОДНЯЛИ. ЧТОС L3?  Arista L3 плагин provisions SVI через eAPI (JSON). В ответ тенанты создают логические роутеры  Маршрутизация происходит на определенных сетевых нодах – Пара коммутаторов (MLAG = Active/Active) – Производят маршрутизацию кластера OpenStack  Маршрутизация в железе! … MLAG Spine OVS Rack N-1 OVS Rack N-2 OVS Rack N OVS Arista Neutron ML2 L2 Fabric Infra / GW Rack Arista L3 node Arista L3 Plugin
  • 15.
    ПОРТФОЛИО Volume Value SplineTM/SpineLeaf 7300 Series 7150Series 7500 Series 7280 Series 7050 Series Единый образ EOS на всех платформах 7060 Series
  • 16.
    А ТЕПЕРЬ: ДВЕНОВОСТИ 16
  • 17.
    НОВОСТЬ 1: 25G,50G, 100G 17 • Flexible Port Configurations • Scalable Throughput • Scalable Packet Processing • Low Latency • Rich EOS Automation 7260QX-64 64 QSFP+ 40GbE ports * 7060CX-32 32 QSFP100 ports 450ns Latency VXLAN Routing and Bridging 136K MAC Addresses 128K IPv4 and 84K IPv6 Routes 104K Host Routes 7260CX-64 64 QSFP100 ports * 40GbE Only 1RU and 2RU systems for 40G and 100G scale-out Applications
  • 18.
    НОВОСТЬ 2: МЫДЕЛАЕМ МАРШРУТИЗАТОРЫ! 18 Full internet table MPLS BGP, IS-IS, OSPF Все хранится в железе! (технология FlexRoute) Сходимость в 4,5 быстрее, чем у ближайшего конкурента
  • 19.
    УНИВЕРСАЛЬНЫЙ ЯДРОВОЙ КОММУТАТОР –7500R • 115Tbps • 432 x 100GbE • 1,000,000 маршрутов • 100,000 туннелей • 288 GB буферная память • FlexRoute Engine • 400G ready
  • 20.
    ОСОЗНАНИЕ БОЛЬШИХ ВЕЛИЧИН Среднийразмер твита 200B Source – Twitter.com Джастин Бибер имеет 78 миллионов фолловеров Source – Twitter.com www.flickr.com - user iloveJB123 Это124,800,000,000 бит на каждый твит Бибера Один 7500R может обработать 460 BTPS для всех 78M фолловеров
  • 21.
    7280R – КОММУТАТОРЫ10/40/100G С ГЛУБОКИМИ БУФЕРАМИ • До 48 портов 100GbE (wire speed) • До 10.24 Tbps и 5.76 Bpps • FlexRoute™ - 1M маршрутов IPv4 и IPv6 • Глубокие динамические буферы • Архитектура VOQ (без потерь) • EOS NetDB • Маршрутизация VXLAN • EVPN, MPLS, Segment Routing • Задержка менее 4 мкс • Wire speed L2 и L3 • Аплинки 10/40G и 25/100G (HPC & CDN)
  • 22.
    • Базируется наоткрытых стандартах • Использует только открытые протоколы • Никаких фабрик! • Отсутствия vendor lock-in • Облачая система управления CloudVision • Коммутаторы работают по традиционным протоколам (LACP, BGP, IS-IS, OSPF…) • Централизованное управление состояниями там, где это нужно (например, VXLAN) • Интеграция с OpenStack через CloudVision • Обработка трафика в железе (производительность!) • Поддержка ML2 • Возможность маршрутизации трафика OpenStack в железе