openstack murano: управления приложениями в облаке на...
TRANSCRIPT
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
www.mirantis.com
OpenStack Murano: управление приложениями в облаке на платформах Solaris, Linux и WindowsВалерий Безруков
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
OpenStack - облачная ОС #1
Open APIs/ GUI Access
Infrastructure Drivers
OpenStackServer Switch Storage
Hypervisor Optional SDN
OpenStack - универсальная облачная операционная система#1 Open source Cloud software (2014)
Служба ИТИТ как услуга - самостоятельный заказ пользователем виртуальной среды
Разработка и тестированиеБыстрый заказ и получение готовых сред разработки и тестирования
РуководительСвобода выбора - Vendor Unlock, снижение расходов на инфраструктуру и эксплуатацию
ВМ, стек, контейнер, bare metal серверВиртуальная сетьВиртуальный том и объект
Copyright © 2015 Mirantis, Inc. All rights reserved
Mirantis сегодня
#1 разработчик “чистого” OpenStackРазрабатываем, поддерживаем и внедряем
OpenStack700 сотрудников по всему мируЦентры компетенции (разработка,
тестирование, техническая поддержка, внедрение):
● Москва: 110 ● Саратов: 200 ● Харьков: 150
Уникальный опыт реальных проектов на базе OpenStack реализованных командой русскоязычных инженеров - более 50 клиентов по всему миру
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Mirantis Unlocks OpenStack
1 3 100%Open source
Все что мы делаем - это open source, никакого закрытого и/или платного ПО
Vendor Agnostic
Никакого vendor lock - свобода выбора от инфраструктуры и всего стека выше
OpenStackМы делаем только OpenStack, для нас OpenStack - это не способ продать что нибудь еще
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Мы лидируем в разработке OpenStack
Kilo Reviews by Company
Technical 135 ↑ 53%Core 38 ↑
100%Commits 3018 ↑ 68%Bugs Fixed 949 #1
Mirantis OpenStack Statistics (Kilo)
Ceilometer
CinderGlance
HeatHorizo
nKeysto
ne
NeutronNova
RallyFuel
Sahara
Broad Involvement (Kilo Reviews by Mirantis %)
Source: Stackalytics
Integrated
OtherMurano
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Мы лидируем в разработке OpenStack согласно статистике релиза Kilo по количеству reviews Мы входим в команду лидирующих разработчиков интегрированных компонентов OpenStack
и лидируем в разработке инновационных...
а так же решаем проблемы: мы #1 по исправленным багам - 949 патчей и фиксов
Nova Cinder Neutron Keystone
Horizon GlanceCeilometer
Heat Murano Sahara Rally MagnetoDB
Mistral Fuel (Stackforge)
363 4 323
111 1 111
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Наши продукты и услуги
Mirantis OpenStack 6.1
Открытый бесплатный дистрибутив. Легко
устанавливать и управлять. Надежный и готовый к
промышленному применению. Развитые средства интеграции с
внешними компонентами.
Professional ServicesКоманда русскоговорящих инженеров с уникальным опытом международных проектов.
Support SubscriptionТехническая поддержка командой русскоговорящих инженеров и разработчиков, быстрое решение проблем и исправление багов.
а так же
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Гибкая интеграция с внешними компонентами
Свобода выбора системного ПО верхнего уровня
Свобода выбора ИТ инфраструктуры
Containers
PaaS CMPDBaaSBig Data
Compute
Storage
Network
Open APIs/ GUI Access
Infrastructure Drivers
Mirantis OpenStack
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Наши заказчики
Web/ SaaS
Публичное и частное облако
Телеком и сервис провайдеры
NFV/SDN, частные и публичные облака
Корпоративные заказчики
Частное облако: ИТ как услуга, среды разработки и тестирования
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential
Наши заказчики
Web/ SaaS
Телеком и сервис
провайдеры
Корпоративные
заказчики
Copyright © 2015 Mirantis, Inc. All rights reserved
Mirantis и Oracle
Технологический альянс между Mirantis и Oracle заключен в 2015 году
Oracle разработал пакет Oracle 12C PDB для OpenStack Murano
Mirantis поддерживает Oracle Linux и Oracle VM Server for x86 как вариант операционной системы для узлов Controller и Compute дистрибутива Mirantis OpenStack
Mirantis и Oracle работают над полноценной интеграцией Mirantis OpenStack и Solaris OpenStack
Copyright © 2014 Mirantis, Inc. All rights reserved
OpenStack Murano
Миссия: Предоставить расширяемый каталог приложений для OpenStack,
позволяющий разработчикам и администраторам описывать и публиковать приложения для автоматической установки и
управления в облаке.
Каталог приложений для OpenStack
Copyright © 2015 Mirantis, Inc. All rights reserved
OpenStack Murano: роли
Пользователь● имеет доступ к каталогу приложений
● может разворачивать отдельные приложения или целиком окружения
Администратор облака● создает описания приложений
● публикует описания приложений в каталоге и управляет доступом
Разработчик приложений● разрабатывает приложения с использованием привычных инструментов
● имеет возможность публикации своих приложений в облаке OpenStack
Copyright © 2015 Mirantis, Inc. All rights reserved
OpenStack Murano: компоненты
API● CRUD функции для:
Пакеты (Packages)
Окружения (Environments)
Сессии (Sessions)● Получение статусов, логов и т.д.
Движок● выполняет код Murano PL (DSL, основан на YAML)● взаимодействует с OpenStack Heat и API● позволяет использовать плагины для подключения к внешнему API● отправляет задачи (execution plans) для агентов в гостевые ОС
Copyright © 2015 Mirantis, Inc. All rights reserved
OpenStack Murano: компоненты
UI● создание динамических экранных форм● создание окружений (environments)● управление пакетами (packages)● управление образами ВМ (image)
Агент● выполняет задачи (execution plans) на ВМ или физических узлах● обеспечивает серилизацию/десерилизацию данных● поддерживаются платформы и технологии:
Linux: Python
Solaris: Python (roadmap)Windows: C#
Copyright © 2015 Mirantis, Inc. All rights reserved
OpenStack Murano: архитектура
Copyright © 2014 Mirantis, Inc. All rights reserved
состоит из приложений и их взаимосвязей
все взаимосвязи отслеживаются автоматически
может быть видоизменено в любое время
OpenStack Murano: структура Environment
Murano Environment is a logical representation of multi-tier applications. It uses Murano applications as building blocks to create multiple layers of application stack.
HTTPd
WordPress MySQL
Copyright © 2015 Mirantis, Inc. All rights reserved
OpenStack Murano: структура Application Definition
Manifest fileUI
● UI definition file
Classes● Workflow files
Resources● Scripts● Execution plans● Templates
Copyright © 2014 Mirantis, Inc. All rights reserved
Murano OpenStack: структура Action
с каждым Action связан определенный workflowвызов WebHook используется для отслеживания Actionотрабатывает события со стороны стороннего ПО мониторинга
или тревожные сигналы Ceilometerможет использоваться для масштабирования, HA, DR
Copyright © 2014 Mirantis, Inc. All rights reserved
Настройка источника событий● Ceilometer● внешняя система
мониторингаСоздание Action для
масштабированияРегистрация Action webhook как
Ceilometer alarm или во внешней системе мониторинга
Murano OpenStack: пример масштабирования
Copyright © 2014 Mirantis, Inc. All rights reserved
Murano OpenStack: взаимосвязи приложений
monitoring
AbstractMonitoring
Nagios Monitoring Implementation
Ceilometer Monitoring Implementation
Zabbix Monitoring Implementation
Your own Monitoring Implementation
Copyright © 2015 Mirantis, Inc. All rights reserved
OpenStack Murano: каталог стандартных приложений
http://apps.openstack.org
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano
Пример пилота в одном большом российском банке
Очень, очень большом банке...
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: предпосылки проекта
t разработки продукта = t разработки кода + ∞ + t тестирования кода
разработка тестирование
выделение, настройка инфраструктуры и ПО:
● физические серверы● виртуальные
машины● блочные или
файловые устройства хранения
● сетевая инфраструктура
● системного ПО● прикладное ПО
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: подход
Используются только модули OpenStack - т.е. только открытое и бесплатное ПО
UI: HorizonУправление инфраструктурой: Nova, Cinder,
NeutronУправление системным ПО и приложениями:
MuranoМы не ждали что базовый функционал OpenStack
устроит банкOpenStack - только базовый функционал IaaS и
платформа SaaS, дальше - доработка и разработка...
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: подход, преимущества
Заказчик получает только то что ему надоЗаказчик платит только за то что ему надоЭто не наш случай:
● чтобы работало ПО “X” надо еще купить железку “Y”
● а зачем вам ваше ПО “X” - у нас есть свой аналог “Y” ничуть не хуже, используйте его… Ну и к тому же ПО “X” наша платформа управлять не может…
Все доработки оформлены как модули и плагины - нет жесткой фиксации на версии и дистрибутиве, мы переустанавливали кластер больше 10 раз чтобы проверить что все работает
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: что мы сделали
Разработали несколько плагинов FuelРазработали несколько пакетов MuranoДоработали Horizon UIРазработка велась на:
● Python● MuranoPL (YAML)● HTML● Unix shell● PowerShell● Puppet
Все складывалось в GitHub
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: код
UI Murano Fuel
Python 252
Unix Shell 104 683
HTML 64
YAML 1217 391
PowerShell 618
DOS batch 135
SQL 25
Puppet 679
Ruby 608
Всего 467 2678 1715
Итого 4860
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: результаты, IaaS
Управление: Mirantis OpenStack, Horizon & Murano
OpenStack, регион #1:●Mirantis OpenStack 6.1●Платформа: x86●Гипервизоры: KVM, VMware ESXi (через
vCenter)OpenStack, регион #2:
●Solaris OpenStack Juno●Платформа: SPARC●Гипервизоры: Solaris Zones
Copyright © 2015 Mirantis, Inc. All rights reserved
Пилот OpenStack Murano: результаты, SaaS
В ходе пилота разработаны следующие пакеты OpenStack Murano:
● Oracle Database 11g● IBM WAS, HA кластер● IBM MQ, HA кластер● приложение банка на базе данных пакетов:
Frontend: IBM MQ, IBM WASBackend: IBM MQ, IBM WAS, Oracle Database
Время разворачивания приложения, включая выделение всех физических и виртуальных ресурсов:
● было: до 3-х рабочих дней● стало: 45 минут