OpenStack Murano: управления приложениями в облаке на...

30
Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential www.mirantis.com OpenStack Murano: управление приложениями в облаке на платформах Solaris, Linux и Windows Валерий Безруков

Transcript of OpenStack Murano: управления приложениями в облаке на...

Page 1: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential

www.mirantis.com

OpenStack Murano: управление приложениями в облаке на платформах Solaris, Linux и WindowsВалерий Безруков

Page 2: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и 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 серверВиртуальная сетьВиртуальный том и объект

Page 3: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

Mirantis сегодня

#1 разработчик “чистого” OpenStackРазрабатываем, поддерживаем и внедряем

OpenStack700 сотрудников по всему мируЦентры компетенции (разработка,

тестирование, техническая поддержка, внедрение):

● Москва: 110 ● Саратов: 200 ● Харьков: 150

Уникальный опыт реальных проектов на базе OpenStack реализованных командой русскоязычных инженеров - более 50 клиентов по всему миру

Page 4: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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 - это не способ продать что нибудь еще

Page 5: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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

Page 6: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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

Page 7: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential

Наши продукты и услуги

Mirantis OpenStack 6.1

Открытый бесплатный дистрибутив. Легко

устанавливать и управлять. Надежный и готовый к

промышленному применению. Развитые средства интеграции с

внешними компонентами.

Professional ServicesКоманда русскоговорящих инженеров с уникальным опытом международных проектов.

Support SubscriptionТехническая поддержка командой русскоговорящих инженеров и разработчиков, быстрое решение проблем и исправление багов.

а так же

Page 8: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential

Гибкая интеграция с внешними компонентами

Свобода выбора системного ПО верхнего уровня

Свобода выбора ИТ инфраструктуры

Containers

PaaS CMPDBaaSBig Data

Compute

Storage

Network

Open APIs/ GUI Access

Infrastructure Drivers

Mirantis OpenStack

Page 9: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential

Наши заказчики

Web/ SaaS

Публичное и частное облако

Телеком и сервис провайдеры

NFV/SDN, частные и публичные облака

Корпоративные заказчики

Частное облако: ИТ как услуга, среды разработки и тестирования

Page 10: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved Mirantis Confidential

Наши заказчики

Web/ SaaS

Телеком и сервис

провайдеры

Корпоративные

заказчики

Page 11: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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

Page 12: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2014 Mirantis, Inc. All rights reserved

OpenStack Murano

Миссия: Предоставить расширяемый каталог приложений для OpenStack,

позволяющий разработчикам и администраторам описывать и публиковать приложения для автоматической установки и

управления в облаке.

Каталог приложений для OpenStack

Page 13: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

OpenStack Murano: роли

Пользователь● имеет доступ к каталогу приложений

● может разворачивать отдельные приложения или целиком окружения

Администратор облака● создает описания приложений

● публикует описания приложений в каталоге и управляет доступом

Разработчик приложений● разрабатывает приложения с использованием привычных инструментов

● имеет возможность публикации своих приложений в облаке OpenStack

Page 14: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

OpenStack Murano: компоненты

API● CRUD функции для:

Пакеты (Packages)

Окружения (Environments)

Сессии (Sessions)● Получение статусов, логов и т.д.

Движок● выполняет код Murano PL (DSL, основан на YAML)● взаимодействует с OpenStack Heat и API● позволяет использовать плагины для подключения к внешнему API● отправляет задачи (execution plans) для агентов в гостевые ОС

Page 15: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

OpenStack Murano: компоненты

UI● создание динамических экранных форм● создание окружений (environments)● управление пакетами (packages)● управление образами ВМ (image)

Агент● выполняет задачи (execution plans) на ВМ или физических узлах● обеспечивает серилизацию/десерилизацию данных● поддерживаются платформы и технологии:

Linux: Python

Solaris: Python (roadmap)Windows: C#

Page 16: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

OpenStack Murano: архитектура

Page 17: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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

Page 18: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

OpenStack Murano: структура Application Definition

Manifest fileUI

● UI definition file

Classes● Workflow files

Resources● Scripts● Execution plans● Templates

Page 19: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2014 Mirantis, Inc. All rights reserved

Murano OpenStack: структура Action

с каждым Action связан определенный workflowвызов WebHook используется для отслеживания Actionотрабатывает события со стороны стороннего ПО мониторинга

или тревожные сигналы Ceilometerможет использоваться для масштабирования, HA, DR

Page 20: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2014 Mirantis, Inc. All rights reserved

Настройка источника событий● Ceilometer● внешняя система

мониторингаСоздание Action для

масштабированияРегистрация Action webhook как

Ceilometer alarm или во внешней системе мониторинга

Murano OpenStack: пример масштабирования

Page 21: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2014 Mirantis, Inc. All rights reserved

Murano OpenStack: взаимосвязи приложений

monitoring

AbstractMonitoring

Nagios Monitoring Implementation

Ceilometer Monitoring Implementation

Zabbix Monitoring Implementation

Your own Monitoring Implementation

Page 22: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

OpenStack Murano: каталог стандартных приложений

http://apps.openstack.org

Page 23: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

Пилот OpenStack Murano

Пример пилота в одном большом российском банке

Очень, очень большом банке...

Page 24: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

Пилот OpenStack Murano: предпосылки проекта

t разработки продукта = t разработки кода + ∞ + t тестирования кода

разработка тестирование

выделение, настройка инфраструктуры и ПО:

● физические серверы● виртуальные

машины● блочные или

файловые устройства хранения

● сетевая инфраструктура

● системного ПО● прикладное ПО

Page 25: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

Пилот OpenStack Murano: подход

Используются только модули OpenStack - т.е. только открытое и бесплатное ПО

UI: HorizonУправление инфраструктурой: Nova, Cinder,

NeutronУправление системным ПО и приложениями:

MuranoМы не ждали что базовый функционал OpenStack

устроит банкOpenStack - только базовый функционал IaaS и

платформа SaaS, дальше - доработка и разработка...

Page 26: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

Пилот OpenStack Murano: подход, преимущества

Заказчик получает только то что ему надоЗаказчик платит только за то что ему надоЭто не наш случай:

● чтобы работало ПО “X” надо еще купить железку “Y”

● а зачем вам ваше ПО “X” - у нас есть свой аналог “Y” ничуть не хуже, используйте его… Ну и к тому же ПО “X” наша платформа управлять не может…

Все доработки оформлены как модули и плагины - нет жесткой фиксации на версии и дистрибутиве, мы переустанавливали кластер больше 10 раз чтобы проверить что все работает

Page 27: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

Copyright © 2015 Mirantis, Inc. All rights reserved

Пилот OpenStack Murano: что мы сделали

Разработали несколько плагинов FuelРазработали несколько пакетов MuranoДоработали Horizon UIРазработка велась на:

● Python● MuranoPL (YAML)● HTML● Unix shell● PowerShell● Puppet

Все складывалось в GitHub

Page 28: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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

Page 29: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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

Page 30: OpenStack Murano: управления приложениями в облаке на платформах Linux, Solaris и Windows

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 минут