Алексей Боков Эксперт по технологиям windows azure
DESCRIPTION
Технологические преимущества Windows Azure. Алексей Боков Эксперт по технологиям Windows Azure. Содержание :. Инфраструктура Windows Azure Облачные сервисы – эффективность vs контроль Архитектура приложений в Windows Azure Надежность и отказоустойчивость - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/1.jpg)
Алексей БоковЭксперт по технологиям Windows Azure
Технологические преимущества Windows Azure
![Page 2: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/2.jpg)
Вопросы в twitter: хэштег #azurecamp
Содержание:
• Инфраструктура Windows Azure
• Облачные сервисы – эффективность vs контроль
• Архитектура приложений в Windows Azure
• Надежность и отказоустойчивость
• Принципы работы сервисов в Azure
• Технологические преимущества
![Page 3: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/3.jpg)
Инфраструктура Windows Azure
24 узла в CDN
6 датацентров
![Page 4: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/4.jpg)
Датацентры Windows Azure
![Page 5: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/5.jpg)
Облачные сервисы: эффективность vs контроль
= предоставляетсяОблачным сервисом
Своисервер
ы
IaaS PaaS SaaS
Приложение
Системные библиотеки
База Данных
Операционная система
Управление виртуализацией
Сервер ( железо )
Файловое хранилище
Сеть
Windows Azure
ЭффективностьКонтроль
![Page 6: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/6.jpg)
Базовая парадигма сервисов в Windows Azure : надежность и масштабируемость• Масштабирование по нагрузке
• Масштабирования по объему данных
• Асинхронное взаимодействие компонент
• Параллельная обработка запросов
• Хранение данных приложений в облачных
хранилищах
• Взаимодействие компонент-cервисов через REST
![Page 7: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/7.jpg)
Архитектура приложения Windows Azure
Front-EndFront-
End
HTTP/HTTPSWindows
AzureStorage,
SQL Azure
AzureLoad
Balancer
Back-end
worker
Типичное облачное приложение состоит из нескольких
компонент :
• Front-end – веб-портал находящий за балансировщиком
нагрузки
• Back-end worker – реализация логики приложения :
обработка пользовательских данных, например
транскодирование видео
• Хранилище данных – в базе данных ( реляционная, NoSQL )
или файлы
• Все компоненты системы существуют в нескольких
экземплярах для увеличения надежности систему и
поддержки высокой доступности сервиса для пользователей
![Page 8: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/8.jpg)
Модель облачных сервисов Windows Azure
• Запущенный в Windows Azure сервис состоит из:
• Определения сервиса ( в т.ч. код приложения )
• Конфигурации сервиса
• Как минимум одной запущенной роли
• Роль в Windows Azure это фактически код
приложения имеющий входную точку и запущенный
в своей виртуальной среде
• Высокий SLA для запущенных сервисов достигается:
• Если запущено не менее 2 инстансов каждого
типа – SLA 99.95% на доступность при обращении
• Использованием технологии fault domains и
update domains
![Page 9: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/9.jpg)
Update domains как средство повышения доступности
• Цель – высокий уровень доступности
приложения при обновлениях сервиса и
системных апдейтах Windows Azure OS
• Windows Azure использует информацию о
доменах при обновлении сервиса:
• При обновлениях недоступно не более 1/кол-
во update domains
• SLA Windows Azure предполагает наличии не
менее 2 update domain и не менее 2 инстансов
каждой роли в каждом домене
![Page 10: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/10.jpg)
Fault domains повышают отказоустойчивость
• Цель – избавиться от single point of
failure:
• Концепция как у update domains
• Но Вы не контролируете
обновления
• Ресурсы в Failure domains
объединяются в соответствии с
топологией датацентра
• Windows Azure использует информацию
о fault domians при размещении ролей
сервиса
• Один сервис располагается как
минимум на 2 fault domain
• Windows Azure максимально
распределяет сервисы по fault
domains
Front-End-1
Fault Domain 1
Fault Domain
2
Front-End-2
Middle Tier-2
Middle Tier-1
![Page 11: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/11.jpg)
Сервисы и роли в Windows Azure
• Определение роли :
• Имя роли и ее тип ( web, worker, vm )
• Типа виртуальной машины ( от small до extra large )
• Входные точки в сервис
• Код сервиса:
• Приложение ( web/worker роль )
• Образ VHD ( vm роль )
• Конфигурация :
• Количество запущенных инстансов
• Количество update domains и failure domains
![Page 12: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/12.jpg)
Типы ролей в Windows Azure
• Web роль – IIS7 и ASP.NET приложения
запущенные в Windows Azure OS
• Worker роль – приложение выполняемое в
Windows Azure OS
• VM роль – приложение выполняемое в среде с
образа
VHD ( образ созданный при помощи HyperV )
• Все роли – stateless
• VM роль рекомендуется для:
• Сервисов которые требуют долгой или
ручной инсталляции и конфигурации
![Page 13: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/13.jpg)
Как работает загрузка и запуск сервиса
• Определение сервиса – ServiceDefinition.csdef
• Конфигурация сервиса – ServiceConfiguration.cscfg
• service package file – zip архив с кодом приложения,
скриптами настройки и файлом определения сервиса
• Загрузка сервиса в Windows Azure :
• Через веб-портал service package file загружается
в Windows Azure ( в Red-Dog Front End – RDFE )
• RDFE выполняет преобразования service package
file и загружает его в Fabric Controller нужного
региона
• Fabric Controller сохраняет образ сервиса в
репозитории, загружает сервис в виртуальную
машину и начинает выполнение сервиса
![Page 14: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/14.jpg)
Технологии Windows Azure – хранение данных
Table Storage: sпростые структурированые данные, доступ через REST API
QUEUES: предназначены для последовательной обработки данных или событий
Блобы: большие, неструктурированныеданные ( видно, аудио и тп ). Для доставки контента конечному пользователю можно использовать CDN
Azure Drive: облачное файловое хранилище ( на базе блобов ), доступно через NTFS API
![Page 15: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/15.jpg)
Реляционная облачная база данных SQL Azure
• Реляционная SQL база данных – как сервис
• 95% баз данных MS SQL могут быть перенесы в SQL
Azure без значительных изменений
• Ограничения по размеру на одну федерацию
( партицию ) – 150 Гб
• Есть ограничения по функционалу – нет Analysis
Services, Reporting, SQL Agent, CLR
• Высокая отказоустойчивость – каждая база имеет 2
полные реплики которые синхронизуются с основной
бд в реальном времени
![Page 16: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/16.jpg)
Сервисы в Windows Azure
…
Fabric
Compute Storage
Application
Fabric Controller
Web роль
Agent
Worker роль
Agent
Batch Job, Java, Tomcat, Apache, etc.
Load Balanc
er
HTTPIIS
ASP.NET, WCF, PHP,
etc.
VM роль
Agent
VHD based
![Page 17: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/17.jpg)
Что еще - Service Bus и Access Control
![Page 18: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/18.jpg)
Преимущества Windows Azure
• Поддержка широко распространённых технологий,
в том числе open-source
• Высокий SLA на предоставляемые сервисы
• Облачная реляционная БД SQL Azure
• Один из самых больших CDN
• Быстрая реакция на потребности в технологиях и
регулярное появление новых возможностей
Windows Azure
• Большое количество обучающих материалов и
тренингов
• Активное взаимодействие с сообществом
разработчиков
• Технологические консультации экспертов Microsoft
![Page 19: Алексей Боков Эксперт по технологиям Windows Azure](https://reader035.vdocuments.mx/reader035/viewer/2022062315/56815b43550346895dc91e45/html5/thumbnails/19.jpg)
Что есть полезного для разработчиков
• Отличная интеграция и поддержка
инструментария Microsoft – Visual Studio
• Поддержка open-source – популярные средства
разработки
( Eclipse ), фреймворки ( drupal, joomla),
приложения ( wordpress ), технологии ( map/reduce
– hadoop ) и т.д.
• Множество open-source инструментов для
разработки – android toolkit, ios toolkit и тд.
• Поддержка – php, java, ruby ( всё что может быть
запущено на Windows )
• Локальный эмулятор сервисов Windows Azure –
DevFabric –для разработки и отладки сервисов
Azure на лэптопе