Не так давно мой коллега написал пост Новости Windows Azure: анонсы, большие анонсы, мега-анонсы!, в котором упомянут Windows Azure Store. Вот как раз о нем чуть подробнее ниже.
Windows Azure Store – это магазин облачных сервисов или аддонов для Ваших приложений и SaaS сервисов. Фактически, это уже готовые “кирпичики” (building blocks), которые можно комбинировать и использовать для решения той или иной задачи. При этом эти “кирпичики” в полном понимании являются сервисами, т.е. Вы используете готовую функциональность (API, endpoint’ы и т.п.), а за функциональность (масштабирование, отказоустойчивость и т.д.) и поддержку сервиса отвечает предоставляющая его компания. Теперь Windows Azure Store доступен в России, т.е. для созданных подписок Windows Azure на территории России.
Windows Azure Store – это, как минимум, два сценария:
- Первый сценарий – это простое использование сторонних сервисов из Windows Azure Store в своих приложениях. Здесь все просто, учитывая, что все сервисы в Windows Azure Store интегрированы в портал Windows Azure.
- Второй сценарий – размещение Вашего сервиса в Windows Azure Store.
Cервисы из Windows Azure Store
Подписаться или активировать сервисы из Windows Azure Store может любой подписчик BizSpark, MSDN, Pay-as-You-Go или MOSP (Microsoft Online Subscription Program). Сейчас Windows Azure Store работает в режиме Preview.
В Windows Azure Store есть сервисы различного типа: например, App Services и Data Services. У каждого сервиса может быть несколько тарифных планов для подписки, например: Free, Standard, Premium.
А так же уже есть первый сервис от российской компании – ABBYY – это сервис ABBYY Cloud OCR SDK для распознования текста и т.п. Кстати, есть Free версия сервиса (100 страницмесяц).
Ниже расскажу о нескольких сервисах. Трудно выбрать какие-то конкретные сервисы, т.к. все сервисы качественные и полезные. Но следующие сервисы подойдут практически для каждого (у всех этих сервисов есть бесплатный план Free).
Active Cloud Monitoring (MetricsHub)
Active Cloud Monitoring (MetricsHub) – сервис для отслеживания развернтых сервисов и виртуальных машин в Вашей подписке, а так же для автоматического масштабирования этих сервисов. Так же сервис показывает объем BLOB хранилища, ориентировочный счет на следующий месяц и т.п.
SendGrid
SendGrid – сервис для отправки email сообщений и управления масштабными рассылками. Free план включает до 25000 сообщениймесяц.
AppDynamics
AppDynamics – сервис по сбору показателей счетчиков и анализу производтельности Вашего облачного решения, сервис так же позволяет задать правила автомасштабирования и создать алерты. Для настройки сервиса необходимо на каждый экземпляр установить специального агента, далее статистика будет отображаться на панели управления.
ClearDB MySQL
ClearDB MySQL – MySQL as Service, т.е. для Вас это MySQL база, которую Вы можете взять и использовать – все уже установлено и настроено (в том числе и отказоустойчивость уже в комплекте Smile).
MongoLab
MongoLab – а это уже MongoDB as Service, полнофункциональная MongoDB.
New Relic
New Relic – еще один сервис мониторинга Вашего облачного решения. Замечу, что New Relic можно настроить как на Cloud Services, так и на Web Sites!
ABBYY Cloud OCR SDK
ABBYY Cloud OCR SDK – сервис по распознованию текста, надписей и т.п.
The market on the billing account does not match the market on the user account
Небольшой tips&tricks относительно активации сервисов из Windows Azure Store. Если возникает следующая ошибка (“We cannot provide a billing estimate at this time. Please try again later. If this error persists, contact support with the following information.”, детали: “The market on the billing account does not match the market on the user account”) при активации, то убедитесь, что страна профиля Windows Azure (Россия) совпадала со страной, указанной в профиле для Windows Azure Marketplace (тоже профиль привязан к Microsoft AccountLiveID).
Приведу пример:
Windows Azure –> Account –> Profile –> Edit details
Marketplace –> My Account –> Edit
Если в Вашем профиле в Markeplace указана другая страна, то ее можно изменить. Обратите внимание: если нет опции изменить страну, то перейдите в раздел My Applications и My Data и удалите имещиеся подписки (это позволит изменить страну). Правила изменения страны для Marketplace описаны здесь.
Публикация сервиса в Windows Azure
Здесь есть два момента: подача заявки на размещение сервиса (команда Windows Azure Store рассматривает заявки и дает финальный ответ) и техническая реализация. Более подробная информация доступна на страничке github Windows Azure Resource Provider SDK.
Если кратко, то с технической стороны для реализации интеграции необходимо:
- Написать Resource Provider’а в соответствии с API и документацией.
- Зарегистрировать Resource Provider’а на портале Publisher Portal (Windows Azure Marketplace).
- Подождать прохождения тестов, которые выполняет команда Windows Azure Store.
Технически реализовать интеграцию достаточно просто, т.к. все основано на GETPOST запросах, есть подробная документация и утилиты для локального тестирования в процессе разработки (dukaan). Из самого интересного можно обратить внимание на реализацию SSO (Single Sign-On), т.е. прокидывание данных о пользователи и его Windows Azure подписки в Ваш сервис (публикуемый в Windows Azure Store). Подробнее про SSO описано все здесь, если коротко, то: Windows Azure делает POST запрос к Вашему сервису; Ваш RP берет данные из запроса и соединяет его с неким секретным ключом и быстро вычисляет SHA-256 хэш – на выходе токен.
А далее Ваш сервис будет доступен для всех пользователей Windows Azure как на территории России, так и world wide.
Собственно, это пока все — happy end.
Автор: inatale