Windows azure общий обзор

1,568 views
1,479 views

Published on

Презентация с декабрьского вебинара по основной функциональности Windows Azure.

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,568
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
39
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Slide ObjectiveUnderstand how a Web Role extends the standard worker roleSpeaker NotesA web role takes all the capabilities and semantics of a worker role and adds the IIS Hostable Web CoreWeb Roles run ASP.NET websites- they do this by using the IIS hostage web core. pretty much anything that will work in a standard IIS ASP.NET Web Site should work in Windows Azure. At MIX09, we additionally added support for IIS7’s FastCGI capability. As a note, any files that are part of a asp.net project on windows azure are READ ONLY! If you need to be able to change the contents of files:User Blob StorageIf its configuration, use the service model files – which can be changed at runtime.Inbound protocols are http(s) – outbound protocols are any TCP connection but NOT UDP.Noteshttp://msdn.microsoft.com/en-us/library/dd179341.aspxhttp://blogs.msdn.com/b/carlosag/archive/2008/04/14/hostyourownwebserverusingiis7.aspxhttp://blogs.iis.net/ksingla/archive/2007/12/20/ins-amp-outs-of-hostable-web-core.aspx
  • Slide ObjectiveUnderstand the 3 common patterns of worker rolesSpeaker NotesPattern 1 – Polling Worker role polls a Queue Pops message Performs work Polls queue againPattern 2 Worker listens for inbound TCP requestCan implement with Raw TcpListeners or use WCF or use Hosted Web CorePattern 3 Run a 3rd party processWhen the role starts up or runs use a Process.Start() call to run a standard windows executable E.g. Running a database serverNoteshttp://blog.smarx.com/posts/build-your-own-web-role-running-hosted-web-core-in-windows-azurehttp://blog.smarx.com/posts/making-songs-swing-with-windows-azure-python-and-the-echo-nest-api
  • Slide ObjectiveUnderstand the role programming model in overviewSpeaker NotesA role is similar to a windows service. It gets started once deployed, and will get stopped when required.It could get stopped because we are re-deploying you to a different serverYou actioned the stop from the web-portalIt’s up to you to keep running and NEVER return from Start() unless you have been told to stop. Note: you do not need to handle the stop – you can simply “fail”Noteshttp://msdn.microsoft.com/en-us/library/ee848065.aspxhttp://blogs.msdn.com/b/jnak/archive/2010/02/11/windows-azure-roleentrypoint-method-call-order.aspxes
  • Full Support for IaaS at spring launchWindows Azure PowerShell CmdletsCross Platform Scripting Built on node.jsCapabilitiesProvisioning, RemovalReboot, StartImport and Export VM settingsSupport for Windows and Linux VMsDomain Join at Provision for WindowsFully Customize VM with Data Disks and Endpoint ConfigurationAutomate Virtual Network Settings
  • Опции избыточности – подробнее - http://hpcru.wordpress.com/2012/06/09/%d0%bf%d0%be%d1%8f%d1%81%d0%bd%d0%b5%d0%bd%d0%b8%d1%8f-%d0%bf%d0%be-%d0%bd%d0%be%d0%b2%d0%be%d0%b2%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d1%8f%d0%bc-%d0%b2-windows-azure-%d1%81%d0%b5%d1%80%d0%b2%d0%b8/
  • http://hpcru.wordpress.com/2012/03/13/%d0%be%d1%81%d0%bd%d0%be%d0%b2%d1%8b-%d1%85%d1%80%d0%b0%d0%bd%d0%b8%d0%bb%d0%b8%d1%89%d0%b0-windows-azure-%d0%be%d1%87%d0%b5%d1%80%d0%b5%d0%b4%d0%b8/
  • Цель слайдаОбъяснить, что такое Shared Access SignaturesТренеру на заметкуShared Access Signatures предоставляют права доступа на контейнеры и блобы на более детализированном уровне, чем просто определением прав доступа на контейнерВыдача доступа пользователю на определенный блоб или все блобы внутри определенного контейнера на определенное количество времени.Определение того, какие операции пользователь может совершать над блобом, доступным по Shared Access Signature. Используйте HTTPS для защиты подписи (это что-то типа пароля, выданного на небольшое время)Два подходаAd-hocИспользуйте для сценариев, когда нужен очень небольшой период доступаОснованный на политикеИспользуйте для сценариев, когда нужен более долгий период доступа с возможностью отзыва разрешенийВсегда старайтесь использовать минимальные привилегииNoteshttp://msdn.microsoft.com/en-us/library/ee395415.aspx
  • Web-роли заполняют очередь сообщениями 7:00 Worker роль 1 забирает сообщение из очереди и устанавливает таймаут на невидимость на 5 минут – таким образом, сообщение становится видно для других воркеров в 7:05 7:04 Worker роль расширяет таймаут еще на 5 минут – до 7:09Worker роль обновляет сообщение, записывая данные о прогрессе выполнения работ или промежуточными результатами. 7:07 Worker роль 1 умерла7:09 Таймаут на невидимость истекает и роль 2 забирает это же сообщение из очереди с очередным 5минутным таймаутом на невидимость
  • SB, повторюсь,это компонента WAZ, которая позволяет связывать различные среды, различные компоненты, клиенты, связывать вендоров и поставщиков с помощью шины сообщений. Основа любой СШ – создание пула сообщений и передача их тем клиентам, которым они интересны. Соответственно, с помощью СШ вы можете реализовывать высокомасштабируемые сценарии по осуществлению коммуникаций, подключать сколько угодно клиентов к шине и так далее. На слайде представлены возможные клиенты СШ – SaaS решения, десктопные клиенты, порталы, железные устройства типа телефонов, промышленные, это даже клиенты с переменным доступом к сети, которым необходимо собрать данные и потом отправить их в главный офис. Сообщения накапливаются в кэше у клиента и, когда появляется подключение, сообщения отправляются в базу. Что касается компонентов, то, во-первых, это рилей – это маршрутизаторы, ктоорые позволяют вам пробить NAT/Firewall и вынести сервис наружу. Это типичный сценарий, если вы находитесь за фаерволлом, а нужно вынести наружу внутренний веб-сайт без того, чтобы нарушать различные правила безопасности. C помощью рилея вы можете безопасно подключить внешнего клиента к анным корпоративной сети. Очереди СБ – это механизм, позволяющий обеспечить работу с переменным доступом к сети, и в то же время позволяет создавать приложения с выравниванием нагрузки, при получении большого колва сообщений вы можете выделить несколько очередей и балансировать таким образом нагрузки. Последним компонентом являются темы и подписки. Это необходимо для распространения сообщений среи нескольких клиентов. Например, вы создаете подписку, на нее подписывается определенный набор клиентов, устройств, и они получают сообщения по подписке.Сообщения уничтожаются если у них истекает срок TTLМеханизм TTL помогает защититься от передачи и получения устаревшей информацииОчереди сообщений или рассылки с устаревшими даннымиДиагностика, аудит, ошибки, уведомления об обновлении, статистикаИспользование
  • Filter conditions operate on message properties and are expressed in SQL’92 syntax InvoiceTotal > 10000.00 OR ClientRating <3ShipDestCtry = ‘USA’ AND ShipDestState=‘WA’LastName LIKE ‘V%’Filters actions may modify/add/remove properties as message is selectedSET AuditRequired = 1
  • Первый сценарий это веб-сервис, в данном случае для ритейлера. То есть для любых людей, кто занимается коммерцией, этот сценарий знаком и подходит использование для этого сценария СБ. Итак, у нас есть точки продаж (сколько бы их ни было, могут быть сотни, в том числе это могут быть мобильные агенты). Для решения данной интеграционной задачи мы используем СБ очереди для управления очередями заказов. Каждый из агентов, точек продаж отправляет сообщение в очередь о формировании заказа, далее сообщение обрабатывается сервисом, и эти сервисы обрабатывая заказы могут обращаться за фаерволл к корпоративному приложению, которое управляет данными, которые нельзя выставлять на внешний мир. Для этого мы используем безопасные рилеи СБ, проникая в датацентр и получаем некоторые данные и обрабатываем заказы. Последняя часть – мы уведомляем неободимых клиентов, которые подписаны на созданные сервисом, о различных действиях системы – например, скидках и так далее. Это комплексное решение для магазинов ретейлера, и реализует такие функции как: отправка приложениемиз точек продажсообщений в очередь, обеспечение доступа к важным данным из on-premise инфраструктуры и уведомление о событиях между головным офисом и точками продаж.
  • Второй интересный сценарий - Специализированный сервис, провайдер вычислительных мощностей для обработки данных по запросу. Пользователи отправляют данные для задачи в облачное хранилище, таким образом формируя очередь задач и сообщение для контроллера, принимающего сообщение и решающего, что надо создать новую задачу для обработки данных. Используя сообщения с низкой латентностью внутри инфраструктуры Windows Azure, он обращается к системе и выделяет некоторые мощности. Для мониторинга состояния задач существуют подписки, и каждый экземпляр обработчика сообщает о статусе обработки задачи, клиенты же могут подписаться на эти подписки. На эти подписки подписан также контроллер, на основании данных откуда он может принимать решения. В целом решение работает так: пользователь отправляет задачи через клиентское приложение; задачи обрабатываются в HPC-стилена Windows Azure; пользователи могут следить за прогрессом и получать уведомления.
  • Третий сценарий, про который я уже немного говорил – это предоставление доступа к внутреннему корпоративному сервису внешним клиентам, вендорам, устройствам. Например, у вс есть данные о сотрудникам, и вам нужно передать их в госучреждение. Итак, мы создаем рилейный сервис, промежуточный сервис и который будет оперировать с внешним миром. Рилейный сервис обращаясь к рилею СБ, создает новый сервис, который находится по этому УРЛ, который будет использоваться внешними клиентами для обращения к данным за НАТом. Теперь клиенты могут обращаться к корпоративному сервису или данным по урлу, с помощью которого эти запросы будут безопасно транслироваться в корпоративную закрытую сеть.
  • WAMSНикаких сложностей, никаких развертываний, никаких волненийПакет SDK для клиента Windows 8Вскоре появится поддержка iPhone, Windows Phone и AndroidДанныеХранение структурированных данных в базе данных SQL Автоматическое генерирование API службы для хранилищаВозможности выполнения полнофункциональных запросовУведомленияИнтеграция со службами push-уведомлений WNS для подачи уведомлений Toast, Tile, Badge и RawЧеткая объектная модель для создания уведомленийЛогика сервераАвтоматическое генерирование API службы CRUD Возможность создания серверной логики, которая перехватывает конвейер операций CRUDПроверка подлинностиПроверка подлинности в Windows LiveПроверка подлинности на уровне таблиц без кода Более детальный контроль с помощью сценария на стороне сервераВозможности вертикального и горизонтального масштабирования
  • Служба push-уведомлений Windows (WNS) является бесплатной.
  • Ресурсы контакты
  • Windows azure общий обзор

    1. 1. «Облачные» вычисления иплатформа Windows Azure Белоцерковский Александр ahriman@ahriman.ru ahriman.ru
    2. 2. Платформа Windows Azure http://aka.ms/TryAzuКлиент Office Games On-premises On-premises Add-in PC Tablet Phone Browser Console Service Databaseинтеграции Слой Traffic Virtual Access CDN Manager Networks Connect EAI / EDI Service Bus Control Data Syncприложени Слой я Mobile Media Services Services Compute Web Sites PaaS IaaS Hadoopданных Слой SQL Stream Storage Диски Блобы Таблицы Очереди Caching Databases Insight Reporting Database
    3. 3. Общий дом для нас всех C++ Compute VM-роль Хранилище SQL Azure CDN Service Bus Сеть Кэш Контроль Медиа доступа сервисы https://github.com/WindowsAzure
    4. 4. Типичное Web-приложение Контроллер Представление (back-end) База данных HTTP(s)
    5. 5. Cloud service
    6. 6. Определение сервиса Роль: веб-интерфейс Роль: обработчик Определение Определение Тип: Web Тип: Worker Размер ВМ: Small Размер ВМ: Medium Конфигурация Конфигурация Экземпляров: 2 Экземпляров: 2 Доменов обн.: 2 Доменов обн.: 2 Доменов ошибок: 2 Доменов ошибок: 2
    7. 7. Две ячейки развертывания
    8. 8. VIP Swap
    9. 9. Развертывание сервиса Включение & Включение & конфигурация конфигурация виртуального виртуального сервера сервера
    10. 10. Windows Azure Tools for Visual Studio
    11. 11. Web-рольWeb-роль – работающий под управлением IIS веб-сайт или сервис.HTTP, HTTPS и сертификатыAzure автоматически распределяет нагрузкуна Web-ролиРаботает под управлением IIS7, 7.5
    12. 12. Worker-роль .NET 3.5 sp1/4.0/Позже 4.5 «Фоновое» выполнение и выполнение не-HTTP сервиса По умолчанию не разрешены входящие подключения
    13. 13. Startup-задачи<WebRole name=“FabrikamShipping.App.Web"> <Startup> <Task commandline="relativepathToSetupExecutable" executionContext="limited|elevated" taskType=“simple|foreground|background"/> </Startup></WebRole>
    14. 14. Всѐ просто 10 бесплатных сайтов Новые сайты = секунды Простое управление Автоматическая балансировка нагрузки Разделяемое хранилище Простое масштабирование
    15. 15. Работает везде ASP.NET, ASP, PHP, Node.js SQL Azure Databases, MySQL Open-source приложения VS, WebMatrix Windows, OSX, Linux
    16. 16. Всѐ быстро Быстрое развертывание TFS, GIT Мониторинг производительности и использования Быстрый доступ к логам
    17. 17. reserved
    18. 18. reserved
    19. 19. Методы развертывания
    20. 20. Но зачем?!
    21. 21. Галерея образов
    22. 22. Сценарий: Active Directory –облако+локально Corp. HQ
    23. 23. Сценарий: Active Directory – локально
    24. 24. Собственный VHD
    25. 25. Проброс портов
    26. 26. Балансировка нагрузки
    27. 27. Что лучше?Веб-приложения Многослойные приложения Сервисы уровня предприятияотлично подходят для размещения веб-приложений, каждый слой которых необходимо масштабировать Например, SQL Server, Sharepoint Server. Приложения,состоящих из клиентской разметки и какой-либо отдельно от других. Например, в момент большой которым необходимо сохранение состояния (stateful),обработки на стороне сервера. Можно масштабировать нагрузки можно масштабировать только обработчик на организация ферм серверов, legacy-приложения.весь сервис, но не часть его. стороне сервера, конвертирующий видеофайлы, но оставить количество экземпляров для веб-интерфейса.Низкая степень контроля – масштабирование Средняя степень контроля – администраторский доступ, Выбирайте Virtual Machines, если хотите иметь полныйсервиса, сервисы FTP, Team Foundation Services, Git. доступ по удаленному рабочему столу RDP к контроль над своими приложениями любой сложности,Запуск веб-сайта (например, WordPress или Drupal) экземплярам ролей, запуск кода с повышенными в том числе теми, адаптировать которые под «облако»можно осуществить в несколько кликов мышкой. правами, start-up задачи. Возможна автоматизация не представляется возможным администрирования. Windows Server/LinuxРазвертывание множества свободнораспространяемых Продвинутые сетевые возможности, Windows Azure Connect,фреймворков и CMS, таких как WordPress, Joomla!, Drupal, Windows Azure Virtual NetworkDotNetNuke and Umbraco, в несколько кликов,
    28. 28. Сценарий: виртуальный офис
    29. 29. Различия
    30. 30. Windows Azure StorageХранилище в «облаке»Доступно через RESTful веб-сервисыРазличные абстракции храненияданных
    31. 31. Windows Azure StorageКаждая сущность в хранилище хранится в трѐх экземплярах.Хранилище Windows Azure – всего лишь REST-сервис,работающий в Windows Azure.Опции избыточности*
    32. 32. • Высокая устойчивость • Высочайшая устойчивость • 3 локальных реплики, синхронно • 3 локальных реплики + 3 удалённых реплики во реплицирующихся втором датацентре • Локальные реплицируются синхронно• Для восстановления используются • Удалённые реплицируются асинхронно локальные реплики• Большие проблемы – связь с клиентом о • Для восстановления используются возможной потере данных локальные реплики• Цена – 23-34% от объема данных • Большие проблемы – используются реплики из второго датацентра• Некритичные данные • Цена та же • По умолчанию
    33. 33. Аккаунт хранилища West US East US South Central US
    34. 34. Эмулятор хранилища
    35. 35. Абстракции хранилища
    36. 36. Адресация
    37. 37. Адресация
    38. 38. Что такое очередь? Очереди используются для хранения сообщения Используют FIFO, однонаправленные Имя очереди должно быть именем в нижнем регистре и URL-friendly
    39. 39. Слабосвязанная система
    40. 40. Очереди: сообщения Очередь может содержать неограниченное количество сообщений Сообщения должны быть сериализуемы как XML Размер ограничен 64Кб Обычно используется паттерн work ticket Сборщик мусора для очереди запускается раз в неделю
    41. 41. Shared Access Signatures
    42. 42. Тайм-аут на «невидимость» Периодическое обновление информации Текущее время О прогрессе обработки в сообщении 7:04 AM 7:09 7:07 7:00 «Забор» сообщения, установка тайм-аута на «невидимость» на 5 минут Истекает @ 7:05AM Web Worker Истекает @ 7:09AM роль роль Очередь Azure 7:05 7:14 7:09 Worker Web роль роль Получение прогресса из Расширение тайм-аута на «невидимость» очереди и продолжение на 5 минут работы
    43. 43. Мотивирующие вопросы• Как интегрировать внешние компоненты с корпоративной сетью?• Как предоставить ПО пользователям извне организации? • Могут ли они использовать свои существующие данные личности? Социальные личности? • А что насчѐт более мелких, клиентов не из предприятий?• Как сократить задержку и увеличить производительность?• <и так далее…>
    44. 44. Проблемы безопасности Поддержка Защита данных Управление Забыл пароль Хранилище учетных данных LDAP Аутентификация, авторизация Интеграция с Синхронизация Facebook AD Auth API Интеграция с Facebook
    45. 45. Аутентификация на основе утверждений
    46. 46. Термины• Утверждение • Набор информации о пользователе • Имя, E-mail, роль…
    47. 47. Термины• Токен безопасности • Набор утверждений • SAML-токен подписывается издателем• Издатель (Security Token Service) • Объект, имеющий право выдавать токены • В отношениях доверия с приложением• Relying Party • Приложение • В отношениях доверия с издателем (провайдером идентификации) • Умеет работать с токенами безопасности
    48. 48. Relying Party УтверждениеУважаемое приложение, моё имя – Александр, фамилия – Иванов, и этоподтверждается вот этой карточкой, которая была выпущена компаниейTrusted Certificate Issuer. Провайдер идентификации
    49. 49. Сценарий Персонал Ресепшн Комната DevCon Персонал докладчиков Участник 2012 Докладчик Докладчик Участник Доклады Участник Персонал Докладчик Участник Вечеринка Александр Персонал …
    50. 50. Жизненный цикл аутентификации
    51. 51. Windows Azure Active Directory
    52. 52. История Azure Active Directory Exchange• Active Directory – мультитенантный Online сервис аутентификации, SharePoint Lync разрабатывающийся вместе с Office Online Online 365 Azure• Расширяет Windows Server Active AD Directory в облако• Можно использовать для организаций, где нет Windows Server AD AD
    53. 53. Directory Graph API• RESTful-доступ к каталогу • Объекты: пользователи, группы, роли, лицензии • Отношения: member, memberOf, manager, directReport• Запросы стандартными HTTP-методами • POST, GET, PATCH, DELETE • Ответ: XML или JSON; стандартные коды HTTP • Совместимо с OData 3.0• OAuth 2.0 для аутентификации • Ролевая модель авторизации
    54. 54. Пример вызова Graph• Request: https://directory.windows.net/contoso.com/Users(Ed@contoso.com)• { “d”: {• "Manager": { "uri": },• "MemberOf": { "uri": },• "ObjectId": ,• "ObjectReference": ,• "ObjectType": , "AccountEnabled": ,• "DisplayName": ,• "GivenName": , "Surname": ,• "UserPrincipalName": ,• "Mail": ,• "JobTitle": , "Department": ,• "TelephoneNumber": , "Mobile": ,• "StreetAddress": , "PhysicalDeliveryOfficeName": ,• "City": , "State": , "Country": , "PostalCode":• } }
    55. 55. Тесная связанность
    56. 56. Тесная связанность
    57. 57. Слабая связанность
    58. 58. Слабая связанность
    59. 59. Слабая связанность
    60. 60. Слабая связанность
    61. 61. Шина сообщений Windows Azure ServiceBusПромышленные Phone, Точки продаж, SaaS-решение устройства Tablet, PC киоски Queues Topics Relays LOB- Агрегатор Портал … приложение событий Sharepoint
    62. 62. Функциональные части Windows AzureService BusService Bus Relays доступ к сервисам и данным предприятия находящимся за NAT и FirewallService Bus Queues клиенты с переменным доступом к сети выравнивание и балансировка нагрузкиService Bus Topics and Subscriptions подписка множества клиентов на рассылку сообщений
    63. 63. Queues
    64. 64. Queues
    65. 65. Topics
    66. 66. Веб-сервисы Queue Service Bus Релей (Relay) Подписки на уведомления Firewall, NAT (Topics & Subscriptions) LOB-сервис Точки продаж Дата-центр
    67. 67. SaaS с динамическим выделениеммощностей События мониторинга (Topics) Очередь задач
    68. 68. Предоставление доступа к сервисуза NAT sb://teched2012sb.servicebus.windows.net/CrmPublicService Service Bus Relay Firewall, NAT
    69. 69. Traffic Manager
    70. 70. Media Services “Build-On” Media Partners and Customers Partner CDNs Azure CDN “Build-In” Partner Media Processors Origin Caching
    71. 71. Что такое Windows Azure Mobile Services? Логика сервера Уведомления Ведение журнала Проверка подлинности Данные Диагностика Масштабируемость
    72. 72. Обзор жизненного цикла push-уведомлений Windows 8 1. Запрос URI канала 2. Регистрация в облачной службе (2) Mobile Services 3. Проверка подлинности Приложение и push-уведомление (3) (1) (3)УведомлениеКлиентская Служба push-платформа уведомлений Windows
    73. 73. Всем спасибо! Ваши вопросыhttp://WindowsAzure.com/ru-ru - официальный портал, информация, Trial на 90 днейhttp://AzureHub.ru/ - посетите центр разработки для Windows Azure на русском языкеhttp://TechDays.ru/ - видео-доклады на русском языке для разработчиковazurerus@microsoft.com – поддержка от экспертов российского MicrosoftАлександр БелоцерковскийWindows Azure MVPahriman@ahriman.ru@ahrimantskfacebook.com/ahrimantpuahriman.ru

    ×