Содержание

Слайд 2

В этом модуле:
Что такое роль?
Назначение каждой роли
Базовая конфигурация ролей.
Локальная отладка.

Базовые роли

В этом модуле: Что такое роль? Назначение каждой роли Базовая конфигурация ролей. Локальная отладка. Базовые роли

Слайд 3

Роли и экземпляры

Роли определяются в сервисной модели
Можно определить одну или более ролей

Роли и экземпляры Роли определяются в сервисной модели Можно определить одну или
на сервис
Определение роли содержит
Размер виртуальной машины
Endpoints для коммуникации
Локальные ресурсы хранилища
Etc…
Каждая роль выполняется на одном или более экземплярах (до 20 на подписку))
Экземпляр роли: код, конфигурация и локальные данные. Разворачивается в отдельную виртуальную машину

Слайд 4

Сравнение типов ролей

Web-роль: Роль, основанная на IIS
Worker-роль: Роль, основанная на выполняемом коде

Сравнение типов ролей Web-роль: Роль, основанная на IIS Worker-роль: Роль, основанная на
(можно создать собственный веб-сервер, управлять базой данных, …)
VM-роль: Роль виртуальной машины.
Windows-сервисы, назначенные задания, etc.
Вы настраиваете и обслуживаете ОС.

Слайд 5

Операционная система обеспечивается клиентом
Обновление осуществляется клиентом

Операционная система обеспечивается Microsoft
Обновление осуществляется Microsoft

Роли сервисов

Операционная система обеспечивается клиентом Обновление осуществляется клиентом Операционная система обеспечивается Microsoft Обновление
вычислений

Web и Worker-роли

VM-роль
Клиентам предоставляются администраторские права, код работает под аккаунтом с минимальными привилегиями
Полный или частичный уровень доверия .NET (по умолчанию полный)
Полный доступ к локальной файловой системе, но нет постоянного локального хранения
Клиентам предоставляются администраторские права,
Отсутствие поддержки
Лицензирование ОС включено в цену использования Windows Azure

Слайд 6

Безопасность сервисов

Клиентский код выполняется на выделенных виртуальных машинах
Виртуальные машины изолированы гипервизором на

Безопасность сервисов Клиентский код выполняется на выделенных виртуальных машинах Виртуальные машины изолированы
основе Hyper-V
Все сетевые и дисковые операции контролируются «корневой» виртуальной машиной

Гипервизор и «Песочница»

Гипервизор

Сеть/Диск

Корн.ВМ

Гост. ВМ

Гост. ВМ

Гост. ВМ

Гост. ВМ

Гост. ВМ

Гост. ВМ

Гост. ВМ

Слайд 7

Взаимодействует с агентом Fabric на каждой машине
Мониторит все виртуальные машины, приложения и

Взаимодействует с агентом Fabric на каждой машине Мониторит все виртуальные машины, приложения
экземпляры
Осуществляет балансировку нагрузки, установку контрольных точек и восстановление

Fabric-контроллер

Fabric

Слайд 8

Изолированность в Windows Azure

Не основана на безопасности Windows
Основана на безопасности, обеспечиваемой гипервизором,

Изолированность в Windows Azure Не основана на безопасности Windows Основана на безопасности,
сети и выставленных сетевых и дисковых драйверов
Поверхность атаки минимизирована уменьшением количества команд и поддержки небольшого количества устройств
Процессорные ядра выделены для конкретных виртуальных машин для предотвращения атаки по сторонним каналам (side-channel attack)
Гостевые диски – файлы VHD, находящиеся в файловой системе ОС корневой виртуальной машины
Гипервизор и ОС корневой виртуальной машины используют фильтры пакетов для блокировки спуфированного или нежелательного трафика

Слайд 9

Безопасность при управлении сервисом

Клиент создаёт подписку используя аккаунт Live ID
Сервисы и аккаунты

Безопасность при управлении сервисом Клиент создаёт подписку используя аккаунт Live ID Сервисы
хранилища управляются либо с помощью Live ID, либо Service Management API (с использованием сгенерированных пользователем пар публичный/приватный ключ)
Fabric-контроллер управляет и обновляет вычислительные и узлы хранения
Экземпляры Fabric-контроллера работают на отдельном от сервисов оборудовании
Коммуникации между Fabric-контроллерами и узлами аутентифицируются и шифруются SSL

Слайд 10

Что такое Web-роль?

Web-роль – работающий под управлением IIS веб-сайт или сервис.
Поддерживает HTTP,

Что такое Web-роль? Web-роль – работающий под управлением IIS веб-сайт или сервис.
HTTPS и сертификаты
Azure автоматически распределяет нагрузку на Web-роли
Может быть только внутри доступной, но обычно является публично доступной
Работает под управлением IIS7
Обычно является сайтом ASP.NET

Слайд 11

Полнофункциональный IIS – описание

Web-роль по умолчанию использует полнофункциональный IIS
Одна Web-роль может содержать

Полнофункциональный IIS – описание Web-роль по умолчанию использует полнофункциональный IIS Одна Web-роль
множество Web-сайтов под одним публичным IP-адресом
Могут быть смоделированы приложения, виртуальные директории и привязки
Все остальное можно реализовать с помощью скриптов (используя администраторский доступ при необходимости)

Слайд 12

Сценарий IIS

Сценарий IIS

Слайд 13

Что такое Worker-роль?

.NET 3.5 sp1 / 4.0
«Фоновое» выполнение и выполнение не-HTTP сервиса

Что такое Worker-роль? .NET 3.5 sp1 / 4.0 «Фоновое» выполнение и выполнение

По умолчанию не разрешены входящие подключения

Слайд 14

Модель программирования

Наследуется от RoleEntryPoint
Метод OnStart()
Вызывается Fabric при запуске, позволяет выполнять задачи инициализации.
Возвращает

Модель программирования Наследуется от RoleEntryPoint Метод OnStart() Вызывается Fabric при запуске, позволяет
балансировщику нагрузки статус «Занят» до того момента, пока не возвратит True.
Метод Run()
Содержит основную логику, обычно бесконечный цикл. Выполнение не должно заканчиваться.
Метод OnStop()
Вызывается при безопасном выключении роли.
За 30 секунд можно «прибраться» за ролью.

Слайд 15

Сценарии использования

Опрос очереди
Опрос и забор сообщений в цикле while(true)
Например, Map/Reduce, «фоновая» обработка

Сценарии использования Опрос очереди Опрос и забор сообщений в цикле while(true) Например,
изображений
«Слушатель»
Создание TcpListener или WCF Service Host
Выполнение внешнего процесса
Методы OnStart или Run вызывают Process.Start()
Задача устанавливает или выполняет «фоновый»/высокоприоритетный процесс
Например, запуск сервера баз данных, веб-сервера, распределенного кэша

Слайд 16

Что такое VM-роль?

Разработчик имеет полный контроль над образом ОС
Возможность развертывания собственных образов

Что такое VM-роль? Разработчик имеет полный контроль над образом ОС Возможность развертывания
WS08R2 Enterprise
Операторы могут перезагружать, управлять образом и осуществлять управление с помощью Remote Desktop
Преимущества автоматического управления сервисами, включая улучшения сервисной модели (описанные на следующих слайдах)

Слайд 17

Жизненный цикл VM-роли

Жизненный цикл VM-роли

Слайд 18

Жизненный цикл VM-роли

«Облако»

Локально

Хранилище блобов

Base.VHD

Идентичное/похожее развертывание экземпляров используя загруженные образа ОС (base.VHD +

Жизненный цикл VM-роли «Облако» Локально Хранилище блобов Base.VHD Идентичное/похожее развертывание экземпляров используя
diff.VHD)

& Дополнительное ПО & Компоненты интеграции Windows Azure
- Агент
- Интерфейс среды выполнения (topo, config, shutdown notification, …)
- Конфигуратор Remote Desktop
- Диагностика
- Драйвер Windows Azure Drives
- Windows Azure Connect
& Генерализация образа (рекомендуемо)

Слайд 19

VM-роль – частые вопросы

Любое приложение WS08 R2 заработает?
Нет, VM-роль унаследовала некоторые

VM-роль – частые вопросы Любое приложение WS08 R2 заработает? Нет, VM-роль унаследовала
ограничения Web/Worker-ролей:
По SLA нужно как минимум два идентичных/похожих экземпляра роли
Состояние ОС в образе может быть потеряно в случае ошибки оборудования
Один публичный IP на сервис (если не использовать Windows Azure Virtual Network)
Windows Azure позаботится обо *всём*?
Нет
Клиент сам создаёт и администрирует ВМ
Windows Azure не может автоматически распознавать «здоровье» приложений в вашей ВМ
Но, если развертывать вместо отдельных ВМ сервис, Windows Azure автоматизирует многие задачи по управлению.

Слайд 20

VM-роль – частые вопросы

Как формируется цена?
Аналогично Web/Worker-ролям. Клиент платит почасово в

VM-роль – частые вопросы Как формируется цена? Аналогично Web/Worker-ролям. Клиент платит почасово
зависимости от размера экземпляра.
Как работает «облачное» лицензирование?
Windows:
Лицензия включена в стоимость CPU-часа
Статус лицензии образа в расчёт не берётся
Приложения: согласно правилам лицензирования приложений

Слайд 21

Экземпляры

Экземпляр – физическая реализация шаблона вашей роли
Есть несколько размеров экземпляров, но в

Экземпляры Экземпляр – физическая реализация шаблона вашей роли Есть несколько размеров экземпляров,
одной роли экземпляры должны быть одного размера.
Нельзя менять размер экземпляра во время выполнения

Слайд 22

Windows Azure

Портал
(API)

LB

LB

DNS

Ваш сервис

Windows Azure Портал (API) LB LB DNS Ваш сервис

Слайд 23

Развертывание сервиса

Ваш сервис

Портал
(API)

Сервис

Модель

Сервис

Сервис

DNS

конф.

Развертывание сервиса Ваш сервис Портал (API) Сервис Модель Сервис Сервис DNS конф.

Слайд 24

Масштабирование сервиса

Ваш сервис

Портал
(API)

Сервис

Сервис

Сервис

Модель

Сервис

Сервис

Сервис

Сервис

Сервис

Масштабирование сервиса Ваш сервис Портал (API) Сервис Сервис Сервис Модель Сервис Сервис Сервис Сервис Сервис

Слайд 25

Мониторинг/восстановление

Ваш сервис

Портал
(API)

Сервис

Сервис

Сервис

Модель

!

Сервис

Мониторинг/восстановление Ваш сервис Портал (API) Сервис Сервис Сервис Модель ! Сервис

Слайд 26

Локальный эмулятор

SDK включает в себя локальную эмуляцию реальных fabric и fabric-контроллера.
Основана на

Локальный эмулятор SDK включает в себя локальную эмуляцию реальных fabric и fabric-контроллера.
90% кода реального fabric
Использует локальный экземпляр SQL для эмуляции хранилища
Лучший способ для отладки вашего приложения
Позволяет наблюдать за процессами из интерфейса эмулятора вычислений

Слайд 27

Иконка эмулятора SDK

Иконка эмулятора SDK

Слайд 28

Интерфейс эмулятора вычислений

Интерфейс эмулятора вычислений

Слайд 29

Интерфейс эмулятора хранилища

Интерфейс эмулятора хранилища

Слайд 30

SQL Express?

При установленном SQL Express эмулятор хранилища автоматически настроится для его использования

SQL Express? При установленном SQL Express эмулятор хранилища автоматически настроится для его
при первом запуске
Если необходимо использовать другой экземпляр SQL:
DSInit /sqlInstance:.

Слайд 31

Работаем ли мы в Fabric?

Работаем ли мы в Fabric?

Слайд 32

Отладка в «облаке»?

Нет. Нет отладки.

Отладка в «облаке»? Нет. Нет отладки.

Слайд 33

Локальная отладка

Вы можете отлаживать приложения локально как обычное приложение ASP.NET.
Полная поддержка

Локальная отладка Вы можете отлаживать приложения локально как обычное приложение ASP.NET. Полная поддержка нескольких экземпляров
нескольких экземпляров

Слайд 34

Поддержка IntelliTrace

IntelliTrace поддерживается в Windows
Интегрирована в VS2010 Ultimate
Требует приложений под .NET

Поддержка IntelliTrace IntelliTrace поддерживается в Windows Интегрирована в VS2010 Ultimate Требует приложений
4
Развертывает агента в экземпляры ваших ролей
Собирает всю информацию по отладочному стеку
Может выполнить приложение локально

Слайд 35

Конфигурация.

Конфигурация обеспечивается двумя файлами.
ServiceDefinition.csdef
ServiceConfiguration.cscfg

Конфигурация сервиса

Конфигурация роли

Конфигурация. Конфигурация обеспечивается двумя файлами. ServiceDefinition.csdef ServiceConfiguration.cscfg Конфигурация сервиса Конфигурация роли

Слайд 36

Определение сервиса

Определение сервиса

Слайд 37

Конфигурация сервиса

Конфигурация сервиса

Слайд 38

GUI

Нажмите два раза на имени роли в проекте

GUI Нажмите два раза на имени роли в проекте

Слайд 39

Настройки

Настройки

Слайд 40

Точки входа

Точки входа

Слайд 41

Сертификаты

Сертификаты

Слайд 42

демонстрация

Hello Cloud

демонстрация Hello Cloud

Слайд 43

Три варианта при развертывании сервиса

Visual Studio
Портал
API

Три варианта при развертывании сервиса Visual Studio Портал API

Слайд 44

Развертывание в «облако»

Вы должны создать аккаунт в Azure, сервис и развернуть сервис.
VS

Развертывание в «облако» Вы должны создать аккаунт в Azure, сервис и развернуть
собирает два файла
Зашифрованный пакет с кодом
Конфигурационный файл
Может занимать 20 минут
В случае разработки вы можете использовать Web Deploy

Слайд 45

Портал

Портал

Слайд 46

демонстрация

Развертывание в «облако»

демонстрация Развертывание в «облако»

Слайд 47

DNS

Все сервисы получают адрес вида *.cloudapp.net
myservicename.cloudapp.net
TTL записи - 10 секунд
Обычный подход –

DNS Все сервисы получают адрес вида *.cloudapp.net myservicename.cloudapp.net TTL записи - 10
создавать CNAME на *.cloudapp.net
Нужно два DNS lookup
Ограниченное кэширование (из-за малого TTL)
Нет официальной поддержки записей типа A
IP развертывания фиксируется на время жизни

Слайд 48

Портал – администраторы

Портал – администраторы

Слайд 49

соображения?

Q & A

соображения? Q & A
Имя файла: ToDo.pptx
Количество просмотров: 154
Количество скачиваний: 0