370 likes | 633 Views
Innovation Day. Алексей Боков abokov@microsoft.com Эксперт по облачной платформе Windows Azure. Облачные сервисы на платформе Windows Azure. Содержание. Облачные сценарии Что такое Windows Azure? С ервисы и технологии Windows Azure Примеры облачных решений Будущее платформы
E N D
Innovation Day Алексей Боков abokov@microsoft.com Эксперт по облачной платформе Windows Azure Облачные сервисы на платформе Windows Azure
Содержание • Облачные сценарии • Что такое Windows Azure? • Сервисы и технологии Windows Azure • Примеры облачных решений • Будущее платформы Задавайте вопросы в twitter - наш хэштег #isvid
Облачные сценарии – управление ресурсами Классический сценарий управления ресурсами Управление ресурсами в облаке • Облако повышает отказоусточивость и доступность сервиса для конечных пользователей • Использование ресурсов соответствует реальным потребностям
Облачные сценарии – потребностибизнеса • Сервис с высоким SLA - важно качество сервиса для конечного клиента ( пример -платные сервисы по доставке контента ) • Фокусразработки на основном функционале продукта -использование предоставляемых облачным провайдером сервисов вместо собственной разработки • Глобальный сервис – потребители во всём мире • Time to market и быстрый старт с минимальными начальными затратами • Хочется не отстать от конкурентов уже использующих перспективные технологии
Облачная платформа Windows Azure PaaS SaaS Windows Azure - платформа для построения новых приложений или переноса существующих сервисов Решения для частного облака Готовые к использованию решения Физические серверы Виртуальные серверы IaaS
Windows Azure: инфраструктура 6 датацентров: - 4 поколение на ITPAC - площадь~ 28 100 кв - мощность ~ 16 МВт - PUE ~ 1.05-1.20 - стоимость ~ 500М $ 24 узла в CDN: Ashburn, San Francisco, Chicago, San Antonio, Los Angeles, Miami, Newark, Seattle, Amsterdam, Dublin, London, Moscow, Paris, Stockholm, Vienna, Zurich, Hong Kong, Sao Paulo, Seoul, Singapore, Sydney, Taipei, Tokyo, Doha
Windows Azure: технологии Windows Azure: технологии База данных Виртуальные серверы Хранилище данных CDN Service Bus Контроль доступа Поддержка образов HyperV Сервис кэширования данных 8
Windows Azure: что есть для быстрого старта • Бесплатный 30 дневный доступ: ou.gs/30days • Инструментарий Windows Azure SDK • Поддержка популярных средств разработки • Удобный доступ к облаку через Remote Desktop • Готовые к использованию библиотеки и компоненты в open-source • Обучащие материалы и руководства по разработке • Сообщество разработчиков • Технические консультации от специалистов Microsoft
Windows Azure: пишем hello world • По шаблону проекта создаем hello world ( .net, java, c#... ) • Пишем startup.cmd ( скрипт деплоймента на удалённом сервере ) • Создаем Windows Azure package ( zip с приложением ) • Создаем файлы конфигурации (ServiceDefinition.csdef, ServiceConfiguration.cscfg) • Через веб-портал стартуем виртуальную машину с нашим package • Если что-то не работает – заходим через Remote Desktop и отлаживаем приложение
Windows Azure: как это работает? • Service package file – zip архив с кодом приложения, скриптами настройки и файлом определения сервиса • Через веб-портал service package file загружается в Windows Azure ( в Red-Dog Front End – RDFE ) • RDFE выполняет преобразования service package file и загружает его в Fabric Controller нужного региона • Fabric Controller сохраняет образ сервиса в репозитории, загружает сервис в виртуальную машину и начинает выполнение сервиса
Windows Azure – хранение данных Windows Azure: хранилища данных Table Storage: простые структурированые данные, доступ через REST API Блобы: большие, неструктурированные данные ( видео, аудио). Для доставки контента конечному пользователю можно использовать CDN QUEUES: предназначены для последовательной обработки данных или событий Azure Drive: облачное файловое хранилище ( на базе блобов ), доступно через NTFS API
Windows Azure: хранилища данных • Azure Blob: на один блок данных до 200ГБ данных (Block blob с поддержкой потокового доступа к данным), до 1ТБ (Page blob), производительность – до 60Мб/c. • Table Storage:водном элементе не более 255 записей объемом до 1 МБ, производительность одной партиции в таблице – до 500 операций/c • Queue: размер сообщения до 8Кб, производительность одной очереди - до 500 операций/с • Суммарно на аккаунт - до 100 ТБ данных, до 5000 транзакций в секунду, сетевой трафик – до 3 Гб/C • Все данныеимеют по 3 копии внутри одного датацентра и одну в другом ДЦ.
Windows Azure: вычислительные ресурсы • Web роль – IIS7 и ASP.NET приложения запущенные в Windows Azure OS • Worker роль – приложение выполняемое в Windows Azure OS • VM роль – приложение выполняемое в среде с образаHyperV • Все роли – stateless • VM роль рекомендуется для сервисов которые требуют долгой или ручной конфигурации • extra small (0.02$/h): shared CPU, память: 768 Мб, диск: 20 Гб, сеть: 5 Mб/с • extra large (0.96$/h): 8 CPU core, память: 14 Гб, диск: 2 Тб, cеть: 800 Мб/c
SQL Azure: облачная база данных • Реляционная SQL база данных – как сервис • 95% баз данных MS SQL могут быть перенесы в SQL Azure без значительных изменений • Ограничения по размеру на одну федерацию ( партицию ) – 150 Гб • Есть ограничения по функционалу – нет Analysis Services, Reporting, SQL Agent, CLR • Высокая отказоустойчивость – каждая база имеет 2 полные реплики которые синхронизуются с основной БД в реальном времени
Windows Azure: архитектура приложения • Классическое облачное приложение обычно состоит из нескольких компонент : • Front-end – веб-портал находящий за балансировщиком нагрузки • Back-end worker – реализация логики приложения : обработка пользовательских данных, например транскодирование видео • Хранилище данных – в базе данных ( реляционная, NoSQL ) или файлы • Все компоненты системы существуют в нескольких экземплярах для увеличения надежности систему и поддержки высокой доступности сервиса для пользователей Front-End HTTP/HTTPS Windows Azure Storage,SQL Azure Back-end worker Front-End Azure Load Balancer
Отказоустойчивость в Azure:update domains • Цель– высокий уровень доступности приложения при обновлениях сервиса и системных апдейтах Windows Azure OS • Windows Azure использует информацию о update domainsпри обновлении сервиса: • При обновлениях недоступно не более1/кол-во update domains • SLA Windows Azure предполагает наличии не менее 2 update domain и не менее 2 инстансов каждой роли в каждом домене
Отказоусточивость в Azure: fault domains • Цель – избавиться от single pointof failure: • Концепция как у update domains • Нет контроля над обновлениями • Ресурсы в Failure domains объединяются в соответствии с топологией датацентра • Windows Azure использует информацию о fault domiansпри размещении ролей сервиса • Один сервис располагается как минимум на 2 fault domain • Windows Azure максимально распределяет сервисы по fault domains Update domain1 Front-End-1 Front-End-2 Update domain2 Middle Tier-2 Middle Tier-1 Fault Domain 1 Fault Domain 2
WindowsAzure: а что еще? • ServiceBus – для защищенного обмена даннымии построения гибридних решений • AppFabric – сервис кэширования данных • Access Control Service – сервис авторизации через Windows Live ID, OpenID 2.0, Google, Yahoo, Facebook, Windows Active Directory. Поддерживает OAuth 2.0. • CDN – 24 точки доступа по всему миру ( одна точка в Москве ) • Isotope – map/reduce (hadoop) как сервис • HPC – поддержка MPI, библиотека CloudNumerics
Windows Azure: сколько стоит? SQL Azure Windows Azure • Масштабируемая, защищенная, надежная и автоматизированная платформа • Масштабируемый, автоматически обслуживаемый, сервис распределенной базы данных • Хранилище • данных • до 100 Мб – 4.99$/месяц • от 100 Мб до 1 Гб – 9.99$/месяц • От 1 Гб до 10 Гб – 9.99$/месяц за первый Гб + 3.99$/месяц за каждый доп. Гб • От 10 до 50 – 45.9$/месяц за первые 10 ГБ + 1.99$/месяц за каждый доп. Гб • От 50 до 150 Гб - 125.9$/месяц за первые 50 Гб + 0.99$/месяц за каждый доп. Гб • Виртуальные серверы Оплата за базу данных в месяц Оплата за объем хранения и транзакции Оплата за час использования $0.11Гб/месяц $0.01за 10000 транзакций $0.02-0.96/часСерверы различной производительности • CDN / Network • Контроль доступа • Кэширование данных Оплата только за исходящий трафик $0.12/Гб Оплата за объем кэша Оплата за транзакции 128MB кэш-$45/месяц 4GB – 325$/месяц $1.99/10 000 транзакций
Windows Azure: почему? • Высокий SLA предоставляемых сервисов • Большой выбор технологий для широкого спектра приложений • Поддержка и удобная интеграция с популярными решениями, в т.ч. open-source и мобильными платформами ( WP, iOS, Android ) • Быстрый старт разработки – большое количество обучающих материалов, удобные средства разработки • Поддержка комьюнити разработчиков • Готовая техническая платформа с быстрым доступом в любой точке планеты • Программы поддержки партнеров
Powered by Windows Azure: сделано в России Платформа создания бизнес-приложений Инструмент поиска по социальным медиа Сервис создания и обработки диаграмм ERP в облаке Новостной сервис на всех платформах Видео-трансляции Сервис создания динамического видео Портал для малого бизнеса Социальная сеть интересных мест Управление авторским контентом
Powered by Windows Azure: сделано в России Пряники – сервисдля нематериальной мотивации персонала Веб платформа для спортивных команд Облачный сервис для дистрибуции авторского контента Сервис для удаленного управления IT ресурсами Облачный сервис по извлечению данных Инструмент для выбора надежного партнера по разработке веб-сайтов Всероссийская школьная образовательная сеть Облачный сервис для организации и проведения онлайн мероприятий Управление процессом подбора персонала Сервис для поиска работы Сервис для путешественников Трансляция премии “Золотой граммофон”онлайн Онлайн трансляции представлений
Powered by Windows Azure: ABBYY Cloud OCR • API для распознавания ABBYY Cloud OCR SDK в облаке Windows Azure • Доступ к сервису через REST API
Powered by Windows Azure: Пряники • Cервис нематериальной мотивации персонала • Реализован гибридный сценарий через ServiceBus – часть данных в ДЦ клиента • Поддержка авторизации через Active Directory ( сервер AD у клиента ) http://pryaniky.com Windows Azure Web Worker SQL Azure SQL Azure Data Sync, Service Bus WIF Forms Sync Framework/WCF ADFS Proxy SharePoint Пряники On-premise Active Directory Active Directory Web Clients
Powered by Windows Azure: AtContent • Облачный сервис для создания, распространения и продажи авторского контента с использованием виджетов • Как основная БД используется NoSQLTableStorage, Apache Luceneкак движок для поиска • Оплата авторам контента через PayPal http://atcontent.com Интеграция с PayPal и механизм оплаты
Powered by Windows Azure: SysAdmin Anywhere • Cервис для удаленного администрирования компьютерами Windows • Windows Azure используется как связующее звено между лэптопом администратора и удаленным компьютером • Реализована технология hole-punching для доступа через RDP (в бета) Контрольная панель администратора на Silverlight http://ria-media.net Web Role WPF, Win32 SQL Azure MultiTenant ASP.NET Blob Store Worker Role Обработка данных, биллинг
dnevnik.ru Powered by Windows Azure: Дневник • Всероссийская школьная образовательная сеть ( более 17 000 школ ) • Гибридный сценарий – Azure используется для хранения и декодинга пользовательских видео • Реализовано автоматическое масштабирование сервиса в зависимости от нагрузки http://dnevnik.ru WA Service Management API iPhone, Android SQL Azure WA Queue Worker Role HTML, AJAX, Auto-scaling service Video encoding Video upload stats Connectivity WCF (REST) On-Premise Data Center Blob Store User files, encoded videos CDN
Powered by Windows Azure: СпортФорт Main web-site role. • SportFort– CMS для спортсменов любителей и непрофессиональных спортивных команд ( сейчас более 1200 спортивных команд ) • Windows Azure используется как надежный и удобный веб-хостинг • Стек технологий: ASP.NET, SQL Azure, Blob для медиа данных ASP.NET MVC3 http://sportfort.ru Web Role SQL Azure БД использует федерации AppFabric Cache Multi Tenant WAQueue WA Table Storage Логи Worker Role CDN Blob Store Обработка медиа Биллинг Сервисы оповещения Медиа данные
Windows Azure: с чего начать? • Зайти на портал:windowsazure.com • Попробовать бесплатный 30 дневный доступ: ou.gs/30days • Установить Windows Azure SDK • Настроить среду разработки ( плагины для Visual Studio, Eclipse, поддержка ant ) • Для локальной разработки и отладки можно использовать Windows Azure Emulator • Взять готовые к использованию open-source компоненты и примеры кода
Windows Azure: полезное • Блог WindowsAzure в MSDN: ou.gs/msdn • Сообщество разработчиков Windows Azure Users Group: ou.gs/waug • Книга Windows Azure - облачнаяплатформаMicrosoft ou.gs/wa-book • Windows Azure Training Kit ( примеры, презентации, лабораторные ) • Бесплатные технические семинары по Windows Azure в регионах • Блоги архитекторов и экспертов • Cобытия и конференции • Наши ресурсы в социальных сетях - Facebook, Linkedin, Twitter...
Windows Azure: в России в цифрах 40+ готовых проектов 100 150 200 600+ тестовых аккаунтов за последние 3 месяца 20 3040 300 400 600 100+ проектов в разработке
Windows Azure: развитие платформы Сервисы для обработки больших объемов данных HPC сценарии Управление ресурсами в SQL Azure Легкая миграция существующих приложений Поддержка open-source решений Расширение IaaSфункционала
Windows Azure: поддержка партнёров Консультации и доступ к Azure Программы поддержки Совместный маркетинг Наш контакт: azurerus@microsoft.com Выделенная команда в России
Innovation Day Спасибо Алексей Боков abokov@microsoft.com Эксперт по облачной платформе Windows Azure