ݺߣ

ݺߣShare a Scribd company logo
Групповые политики в OpenStack:
как скрестить ежа с ужом или путь в корпоративную среду
Дмитрий Хороших
dkhorosh@cisco.com
2 апреля, 2015
2© 2015 Cisco and/or its affiliates. All rights reserved.
Возможные преимущества OpenStack в Enterprise
No Vendor
Lock-in
Гибкость
Стоимость
• Это Open Source и все
должно быть бесплатно?
• Избавляемся от
“VMware tax” (или другой
вендор)
• Замена стоимости закрытого ПО на стоимость
сервиса
• Стоимость людей, которые понимают OpenStack
• Стоимость людей ведущих разработку
приложений в OpenStack средах
• Магия гибкости перемещения
между облаками
• При помощи API можно
сделать что угодно
• Можно добавлять функционал
самостоятельно!
• Open Source, который не
имеет прямой зависимости
от оборудования
• Сommodity cloud stack
Ожидания Реальность
• Ограничения для магии перемещения – расширение сетей,
миграция адресов, поддержка формата вирт. машины
• Много API – OpenStack API, Amazon API, нужен шлюз между
ними
• Стоимость людей готовых разрабатывать для OpenStack
• Да – прямой зависимости нет
• Необходимо сделать выбор дистрибутива
3© 2015 Cisco and/or its affiliates. All rights reserved.
Как определить, что мой ландшафт готов к OpenStack?
 «Хорошие» кандидаты для хостинга в
OpenStack
 приложения использующие распределенные web
и БД (Mongo DB, Cassandra)
 приложения с открытой архитектурой
 приложения, разрабатываемые в организации
или для организации и использующие:
 средства контроля версий (Subversion, Mercurial,
CVS, Bazaar, Perforce, ClearCase,)
 автоматизированные средства проверки кода
(Gerrit, Git pull request, Phabricator, Barkeep, Gitlab)
 автоматизированные средства интеграции
модулей приложений (Jenkins/Hudson, Zuul,
CloudBees, Go, Maven)
 автоматизированные средства тестирования кода
(Tempest, Rally, puppet-rspec, tox)
 «Плохие» кандидаты для хостинга в
OpenStack
 «монолитные» приложения с централизованной
архитектурой
 «закрытые» приложения (отсутствует
northbound/integration API) не допускающие
применения средств автоматизации
 приложения, которые опираются на
специализированные HA/DR/etc. механизмы в
средах виртуализации/ОС/БД, которые не
поддерживаются в данный момент в OpenStack
• Оператор сети
• Администратор СБ
• Контроль стандартов
Владелец
приложения
4© 2015 Cisco and/or its affiliates. All rights reserved.
 Выбрать «хорошее» приложение
 Песочница (sandbox environment)
 Исследуем, учимся, тестируем
 PoC для распределенного web-приложения, а заодно практика новой DevOps методологии
 Среда для разработчиков (development environment)
 Получив опыт в песочнице переводим на OpenStack разработку:
 Build Dev, QA и production
 Разработка web приложения в окружении OpenStack или с применением PaaS средств
 Среды для обучения
 Дешево и сердито
 Запуск продуктов, разработанных внутри компании
 Интеграция OpenStack-based продуктов с традиционными системами
Работающие сценарии в Enterprise
5© 2015 Cisco and/or its affiliates. All rights reserved.
1. Сетевые настройки задаются внутри виртуальной среды
 Private Networks with Per-Tenant Routers, Provider Routers, Provider Network
Extensions with VLANs (без NAT)
 Nexus 1000v для OpenStack
2. Интеграция с коммутатором ToR
 Neutron Core plugin (Cisco/ML2) , работает с Nexus 3k/5k/6k/7k/9k
3. Интеграция с ACI (Application-centric infrastructure)
 Фаза 1: отображение в сеть базовых элементов абстракции Neutron
 Фаза 2: Групповые политики OpenStack (Group-Based policy)
Архитектурные особенности OpenStack
Варианты разворачивания сетевой подсистемы
6© 2015 Cisco and/or its affiliates. All rights reserved.
Два варианта использования OpenStack с ACI
NEUTRON ROUTER
SECURITY
GROUP
NEUTRON NETWORK
Neutron API Group Policy API
NEUTRON
NETWORK
Port
Port
Tenant Tenant
Используется существующий
Neutron API с контроллером APIC и
Cisco ACI фабрикой
Contract
GROUP
SERVICE
CHAIN
GROUP
Конструкция Group Policy
предлагает новый API который
напрямую использует модель
политик ACI (Juno Release)
7© 2015 Cisco and/or its affiliates. All rights reserved.
Автоматизация при помощи heat
neutron
Детализированная
абстракция
nova
Детализированная
абстракция
cinder
Детализированная
абстракция
swift
Детализированная
абстракция
glance
Детализированная
абстракция
………..
Детальные
инструкции
Do, do, do, do
Детальные
инструкции
Do, do, do, do
Детальные
инструкции
Do, do, do, do
Детальные
инструкции
Do, do, do, do
Детальные
инструкции
Do, do, do, do
Детальные
инструкции
Do, do, do, do
(снова и снова)
Много деталей - как
Слишком
много
лишних
деталей
Владелец
приложения
• Оператор сети
• Администратор СБ
• Контроль стандартов
8© 2015 Cisco and/or its affiliates. All rights reserved.
neutron
Детализированная
абстракция
nova
Детализированная
абстракция
cinder
Детализированная
абстракция
swift
Детализированная
абстракция
glance
Детализированная
абстракция
………..
Автоматизация при помощи heat
Часто забывают, что IT существует ради приложений...
appguy
“Я бы хотел запустить приложение с
такими характеристиками и такими
требованиями к инфраструктуре,
сервисам и связям с другими
приложениями
Мое приложение:
Цель
Определить приложение и его
потребности
Цель теряется за избытком ненужных деталей
9© 2015 Cisco and/or its affiliates. All rights reserved.
Пример приложения и его взаимосвязей
Платежная
системаПолитикадоступа
«Наш» сервер
приложений
Группа (EPG)
Политикадоступа
База
пользователей
(Active Directory)
Группа (EPG)
Политика доступа
Прикладная
СУБД (MS SQL)
Группа (EPG)
Политика доступа
Группа (EPG)
Сбор событий
Группа (EPG)
Политика доступа
Политикадоступа
«Наш» WEB-
сервер
Группа (EPG)
Внешний
мир
(EPG)
Стороннее приложение
10© 2015 Cisco and/or its affiliates. All rights reserved.
Архитектура OpenStack GBP
CLI Horizon Heat
Group Policy API
Mapping
Driver
ODL Group
Policy Plugin
“Native” Vendor Drivers
Neutron Nova Cinder Swift …
Nexus
Any
Existing
Plugins
11© 2015 Cisco and/or its affiliates. All rights reserved.
APIC драйвер создает
сетевой профиль
приложения
OpenStack APIC Plugin – group Policy (Фаза № 2)
APIC
Host 1
OVS
Network B
V(X)LAN
101
10.0.1.0/24
Network A
V(X)LAN
100
10.0.0.0/24
IPTables
Host 2
OVS
Network C
V(X)LAN
102
10.0.2.0/24
Network A
V(X)LAN
100
10.0.0.0/24
IPTables
Host 3
OVS
Network B
V(X)LAN
101
10.0.1.0/24
Network A
V(X)LAN
100
10.0.0.0/24
IPTables
Host 4
OVS
Network C
V(X)LAN
102
10.0.2.0/24
Network A
V(X)LAN
100
10.0.0.0/24
IPTables
IP tables для контроля
безопасности
ACI фабрика
обеспечивает
распределенный
L2 и L3 (без L3
агента). Туннели
терминируются на
ToR
коммутаторах.
OVS терминирует
VLAN / VXLAN теги
для каждой сети
OVS драйвер
выбирает VLAN /
VXLAN тег для
каждой сети и
настраивает OVS
Group Policy Extensions
OVS Driver
Neutron
Networking
APIC Group Driver
Group Policy extension
расширяет существующий
neutron APIs
APIC REST API
12© 2015 Cisco and/or its affiliates. All rights reserved.
Group Based Policy Workflow
2
ACI Admin
(manages physical
network, monitors tenant
state)
L/B
EPG
APP
EPG DB
F/W
L/B
EPG
WEB
Application Network Profile
Create Application Policy
3
5
ACI
Fabric
Push Policy
APIC
OpenStack Tenant
(Performs step 1,4) Instantiate VMs
Web WebWebWeb AppApp4
Create Application Network Profile
1
DB DB
HYPERVISOR HYPERVISOR HYPERVISOR
NOVANEUTRON
Automatically Push
Network Profiles to
APIC
L/B
EPG
APP
EPG DB
F/W
L/B
EPG
WEB
Application Network Profile
Интеграция OpenStack и APIC (Фаза № 2)
13© 2015 Cisco and/or its affiliates. All rights reserved.
 Архитектура сети, ориентированной на приложения (ACI) – мощный инструмент унификации сетевых политик
между разнородными платформами
 Интеграция ACI и OpenStack
 Group Based Policy - изящество и простота использования настроек
 Полная прозрачность взаимосвязей между приложениями
 Масштабируемость
 Автоматизация контроля за соблюдением политик
Заключение
14© 2015 Cisco and/or its affiliates. All rights reserved.
 Nexus 1000v: http://www.cisco.com/c/en/us/products/switches/nexus-1000v-kvm/index.html
 Nexus 3000 and Higher: http://www.cisco.com/en/US/prod/collateral/switches/ps9441/ps11541/data_sheet_c78-
727737.html
 Cisco Nexus + OpenStack Deployment: http://docwiki.cisco.com/wiki/OpenStack:_Havana:_2-Role_Nexus
 Cisco CSR 1000v:
http://www.cisco.com/c/en/us/td/docs/routers/csr1000/software/configuration/csr1000Vswcfg/installkvm.html
 Project Havate (UCS): https://wiki.openstack.org/wiki/Havate
 Cisco ACI with OpenStack: http://www.cisco.com/c/dam/en/us/solutions/collateral/data-center-virtualization/unified-
fabric/solution-brief-c22-729865.pdf
 Cisco APIC driver for OpenStack Neutron ML2: https://blueprints.launchpad.net/neutron/+spec/ml2-cisco-apic-
mechanism-driver
 OpenStack Group-Based Policy https://wiki.openstack.org/wiki/GroupBasedPolicy
 DEMO GBP vs ACI integration Phase 2: https://www.youtube.com/watch?v=a3Ur1IDyALA
Полезные ссылки
Thank you.

More Related Content

СISCO: групповые политики в OpenStack

  • 1. Групповые политики в OpenStack: как скрестить ежа с ужом или путь в корпоративную среду Дмитрий Хороших dkhorosh@cisco.com 2 апреля, 2015
  • 2. 2© 2015 Cisco and/or its affiliates. All rights reserved. Возможные преимущества OpenStack в Enterprise No Vendor Lock-in Гибкость Стоимость • Это Open Source и все должно быть бесплатно? • Избавляемся от “VMware tax” (или другой вендор) • Замена стоимости закрытого ПО на стоимость сервиса • Стоимость людей, которые понимают OpenStack • Стоимость людей ведущих разработку приложений в OpenStack средах • Магия гибкости перемещения между облаками • При помощи API можно сделать что угодно • Можно добавлять функционал самостоятельно! • Open Source, который не имеет прямой зависимости от оборудования • Сommodity cloud stack Ожидания Реальность • Ограничения для магии перемещения – расширение сетей, миграция адресов, поддержка формата вирт. машины • Много API – OpenStack API, Amazon API, нужен шлюз между ними • Стоимость людей готовых разрабатывать для OpenStack • Да – прямой зависимости нет • Необходимо сделать выбор дистрибутива
  • 3. 3© 2015 Cisco and/or its affiliates. All rights reserved. Как определить, что мой ландшафт готов к OpenStack?  «Хорошие» кандидаты для хостинга в OpenStack  приложения использующие распределенные web и БД (Mongo DB, Cassandra)  приложения с открытой архитектурой  приложения, разрабатываемые в организации или для организации и использующие:  средства контроля версий (Subversion, Mercurial, CVS, Bazaar, Perforce, ClearCase,)  автоматизированные средства проверки кода (Gerrit, Git pull request, Phabricator, Barkeep, Gitlab)  автоматизированные средства интеграции модулей приложений (Jenkins/Hudson, Zuul, CloudBees, Go, Maven)  автоматизированные средства тестирования кода (Tempest, Rally, puppet-rspec, tox)  «Плохие» кандидаты для хостинга в OpenStack  «монолитные» приложения с централизованной архитектурой  «закрытые» приложения (отсутствует northbound/integration API) не допускающие применения средств автоматизации  приложения, которые опираются на специализированные HA/DR/etc. механизмы в средах виртуализации/ОС/БД, которые не поддерживаются в данный момент в OpenStack • Оператор сети • Администратор СБ • Контроль стандартов Владелец приложения
  • 4. 4© 2015 Cisco and/or its affiliates. All rights reserved.  Выбрать «хорошее» приложение  Песочница (sandbox environment)  Исследуем, учимся, тестируем  PoC для распределенного web-приложения, а заодно практика новой DevOps методологии  Среда для разработчиков (development environment)  Получив опыт в песочнице переводим на OpenStack разработку:  Build Dev, QA и production  Разработка web приложения в окружении OpenStack или с применением PaaS средств  Среды для обучения  Дешево и сердито  Запуск продуктов, разработанных внутри компании  Интеграция OpenStack-based продуктов с традиционными системами Работающие сценарии в Enterprise
  • 5. 5© 2015 Cisco and/or its affiliates. All rights reserved. 1. Сетевые настройки задаются внутри виртуальной среды  Private Networks with Per-Tenant Routers, Provider Routers, Provider Network Extensions with VLANs (без NAT)  Nexus 1000v для OpenStack 2. Интеграция с коммутатором ToR  Neutron Core plugin (Cisco/ML2) , работает с Nexus 3k/5k/6k/7k/9k 3. Интеграция с ACI (Application-centric infrastructure)  Фаза 1: отображение в сеть базовых элементов абстракции Neutron  Фаза 2: Групповые политики OpenStack (Group-Based policy) Архитектурные особенности OpenStack Варианты разворачивания сетевой подсистемы
  • 6. 6© 2015 Cisco and/or its affiliates. All rights reserved. Два варианта использования OpenStack с ACI NEUTRON ROUTER SECURITY GROUP NEUTRON NETWORK Neutron API Group Policy API NEUTRON NETWORK Port Port Tenant Tenant Используется существующий Neutron API с контроллером APIC и Cisco ACI фабрикой Contract GROUP SERVICE CHAIN GROUP Конструкция Group Policy предлагает новый API который напрямую использует модель политик ACI (Juno Release)
  • 7. 7© 2015 Cisco and/or its affiliates. All rights reserved. Автоматизация при помощи heat neutron Детализированная абстракция nova Детализированная абстракция cinder Детализированная абстракция swift Детализированная абстракция glance Детализированная абстракция ……….. Детальные инструкции Do, do, do, do Детальные инструкции Do, do, do, do Детальные инструкции Do, do, do, do Детальные инструкции Do, do, do, do Детальные инструкции Do, do, do, do Детальные инструкции Do, do, do, do (снова и снова) Много деталей - как Слишком много лишних деталей Владелец приложения • Оператор сети • Администратор СБ • Контроль стандартов
  • 8. 8© 2015 Cisco and/or its affiliates. All rights reserved. neutron Детализированная абстракция nova Детализированная абстракция cinder Детализированная абстракция swift Детализированная абстракция glance Детализированная абстракция ……….. Автоматизация при помощи heat Часто забывают, что IT существует ради приложений... appguy “Я бы хотел запустить приложение с такими характеристиками и такими требованиями к инфраструктуре, сервисам и связям с другими приложениями Мое приложение: Цель Определить приложение и его потребности Цель теряется за избытком ненужных деталей
  • 9. 9© 2015 Cisco and/or its affiliates. All rights reserved. Пример приложения и его взаимосвязей Платежная системаПолитикадоступа «Наш» сервер приложений Группа (EPG) Политикадоступа База пользователей (Active Directory) Группа (EPG) Политика доступа Прикладная СУБД (MS SQL) Группа (EPG) Политика доступа Группа (EPG) Сбор событий Группа (EPG) Политика доступа Политикадоступа «Наш» WEB- сервер Группа (EPG) Внешний мир (EPG) Стороннее приложение
  • 10. 10© 2015 Cisco and/or its affiliates. All rights reserved. Архитектура OpenStack GBP CLI Horizon Heat Group Policy API Mapping Driver ODL Group Policy Plugin “Native” Vendor Drivers Neutron Nova Cinder Swift … Nexus Any Existing Plugins
  • 11. 11© 2015 Cisco and/or its affiliates. All rights reserved. APIC драйвер создает сетевой профиль приложения OpenStack APIC Plugin – group Policy (Фаза № 2) APIC Host 1 OVS Network B V(X)LAN 101 10.0.1.0/24 Network A V(X)LAN 100 10.0.0.0/24 IPTables Host 2 OVS Network C V(X)LAN 102 10.0.2.0/24 Network A V(X)LAN 100 10.0.0.0/24 IPTables Host 3 OVS Network B V(X)LAN 101 10.0.1.0/24 Network A V(X)LAN 100 10.0.0.0/24 IPTables Host 4 OVS Network C V(X)LAN 102 10.0.2.0/24 Network A V(X)LAN 100 10.0.0.0/24 IPTables IP tables для контроля безопасности ACI фабрика обеспечивает распределенный L2 и L3 (без L3 агента). Туннели терминируются на ToR коммутаторах. OVS терминирует VLAN / VXLAN теги для каждой сети OVS драйвер выбирает VLAN / VXLAN тег для каждой сети и настраивает OVS Group Policy Extensions OVS Driver Neutron Networking APIC Group Driver Group Policy extension расширяет существующий neutron APIs APIC REST API
  • 12. 12© 2015 Cisco and/or its affiliates. All rights reserved. Group Based Policy Workflow 2 ACI Admin (manages physical network, monitors tenant state) L/B EPG APP EPG DB F/W L/B EPG WEB Application Network Profile Create Application Policy 3 5 ACI Fabric Push Policy APIC OpenStack Tenant (Performs step 1,4) Instantiate VMs Web WebWebWeb AppApp4 Create Application Network Profile 1 DB DB HYPERVISOR HYPERVISOR HYPERVISOR NOVANEUTRON Automatically Push Network Profiles to APIC L/B EPG APP EPG DB F/W L/B EPG WEB Application Network Profile Интеграция OpenStack и APIC (Фаза № 2)
  • 13. 13© 2015 Cisco and/or its affiliates. All rights reserved.  Архитектура сети, ориентированной на приложения (ACI) – мощный инструмент унификации сетевых политик между разнородными платформами  Интеграция ACI и OpenStack  Group Based Policy - изящество и простота использования настроек  Полная прозрачность взаимосвязей между приложениями  Масштабируемость  Автоматизация контроля за соблюдением политик Заключение
  • 14. 14© 2015 Cisco and/or its affiliates. All rights reserved.  Nexus 1000v: http://www.cisco.com/c/en/us/products/switches/nexus-1000v-kvm/index.html  Nexus 3000 and Higher: http://www.cisco.com/en/US/prod/collateral/switches/ps9441/ps11541/data_sheet_c78- 727737.html  Cisco Nexus + OpenStack Deployment: http://docwiki.cisco.com/wiki/OpenStack:_Havana:_2-Role_Nexus  Cisco CSR 1000v: http://www.cisco.com/c/en/us/td/docs/routers/csr1000/software/configuration/csr1000Vswcfg/installkvm.html  Project Havate (UCS): https://wiki.openstack.org/wiki/Havate  Cisco ACI with OpenStack: http://www.cisco.com/c/dam/en/us/solutions/collateral/data-center-virtualization/unified- fabric/solution-brief-c22-729865.pdf  Cisco APIC driver for OpenStack Neutron ML2: https://blueprints.launchpad.net/neutron/+spec/ml2-cisco-apic- mechanism-driver  OpenStack Group-Based Policy https://wiki.openstack.org/wiki/GroupBasedPolicy  DEMO GBP vs ACI integration Phase 2: https://www.youtube.com/watch?v=a3Ur1IDyALA Полезные ссылки