Миграция существующих приложений в windows...

Post on 07-Sep-2020

11 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Миграция существующих

приложений в Windows Azure

Ефимцева Наталия

natale@microsof.tcom

@nefimtseva

• Почему Windows Azure?

• Подходы к миграции

• Миграция в PaaS

• Миграция в IaaS

• Миграция PaaS + IaaS

Темы

Почему Windows Azure?

Платите за то,

что используете.

Сценарии

для

облака

99.95% SLA (в месяц)

Вычислительные

мощности

Microsoft

по всему миру

Дополнительные

сервисы

Приложение и бизнес-задача

Миграция: облачные службы Windows Azure (PaaS)

на примере ASP.NET приложения

Место для запуска ваших приложений…

Windows Azure: типовая архитектура решения PaaS

Web-роль - преконфигурированная виртуальная

машина с настроенным IIS

Worker-роль – код не относящийся к веб, бэкенд для приложений

Вы можете подключаться к вашими ролям, это

просто виртуальные машины

Вы просто размещаете свой код и файлы, а Windows Azure запускает VM, устанавливает и запускает код для вас. Балансировщик нагрузки

работает с несколькими экземплярами

Демо

Сохранение сессий в Windows Azure: stateless На клиенте (куки) или на серверной стороне (SQL Database, Windows Azure Storage, Windows Azure Caching)

• Локальное хранилище экземпляра является временным

• Централизованное масштабируемое хранилище - Windows Azure Storage

• Надежность: локальная и гео-репликация

• CND (сеть кэширующих серверов)

• Ограничение доступа: SAS (Shared Access Signature)

• Универсальность: REST сервис

• Масштабируемость до петабайт

• Типичная загрузка файлов в ASP.NET - File Upload Control

Работ с файлами и хранилищем Windows Azure Table Storage, Windows Azure BLOB Storage

Облачное реляционное хранилище с высокой доступностью (SLA 99,9%) и избыточностью (3 реплики)

SQL Database

Облачное реляционное хранилище

основанное на SQL Server

SQL Server - это cервер

SQL Database - это TDS Endpoint

Используйте те же инструменты, фреймворки для

доступа к данным, язык T-SQL

Дата-центры по всему миру

Высокая доступность & Избыточность

Чтение производится из primary БД

Записи реплицируются во вторичные реплики

• Прямая миграция

• T-SQL код в T-SQL

• Комбинированная миграция

• SQL Database

• Windows Azure Table Storage и Windows Azure BLOB Storage

• Шардирование (для БД > 150 Гб)

• SQL Database Federations

• SQL Data Sync Service

• Код – логика повторов (retry logic)

Работа с реляционными данными (SQL Database)

Инструменты миграции

Инструмент Схема

SQL

Database проверка

Данные

Эффектив

ность передачи

Примечания

BCP Нет - Да Эффективно • Efficient transfer of data to existing table

SSMS Generate

Scripts wizard Да Some Да

Неэффективно

• Эффективно for smaller databases • Has explicit option for SQL Azure script generation

SQL Server Import &

Export Data Нет - Да Эффективно

• Simple UI on top of SSIS; also available in SSMS

SSIS Нет - Да Эффективно • Most flexibility

SQL Azure Migration

Wizard Да Да Да Эффективно

• Great capabilities; e.g. evaluate trace files • Open source on CodePlex; • Нетt supported by MSFT

DAC (BACPAC) Да Да Да - • Entity containing all database objects including data • Full SQL Azure support

DAC Database

Import/Export Да Да Да Эффективно

• Export/import of DAC plus data with DAC framework • Preview available Нетw on SQL Azure Labs; final release

with SQL Server codenamed “Denali”

• Service for cloud-only support coming soon

SQL Database Copy Да - Да Эффективно

• Create transactionally consistent copy of SQL Azure database

• Currently within the same data center

Демо

Управления задачами идентификации и контроля доступа для облачных приложений

Windows Azure Active Directory (Identity & Security)

• Аутентификация на основе веб-форм

• Перенести ASP.NET Membership Provider в Windows Azure

• Windows аутентификация

• Внести изменения в приложения для использования сервиса Windows Azure

Active Directory Access Control Services (ACS)

• Перенести AD в Windows Azure и настроить синхронизацию

• Идентификация на основе утверждений

• Windows Azure Active Directory Access Control Services (ACS)

Аутентификация и авторизация

Привязка доменного имени

Адрес *.cloudapp.net

myservicename.cloudapp.net

TTL 10 секунд

Вариант: использовать CNAME

для *.cloudapp.net

Требуется 2 DNS lookups

Кэширование ограничено из-за низкого

TTL

VIP меняется при удалении роли (передеплои)

Media Services – это работа с медиа-контентом и законченные процессы обработки медиа

Windows Azure Media Services

Кодирование

А так же

Full IIS

RoleEntryPoint - WaIISHost.exe Веб-сайт - w3wp.exe Загрузка любого IIS модуля

Startup задачи

Запуск кода при инициализации экземпляра роли

Пример

Techdays.ru: архитектура «раньше»

Techdays.ru: архитектура в Windows Azure

Web Role Browser

Browser

Browser

Browser

Browser

Web Role

Web Role

N L B

Blob Storage

Worker Role

Worker Role

Worker Role

SQL Database

Queue

Req Req Req Req

Distributed cache

Table Storage

Миграция: виртуальные машины Windows Azure (IaaS)

• Создать виртуальную машину в Windows Azure

• Быстро (не требуется загружать vhd)

• Минимум зависимостей (драйвера, библиотеки и т.п.)

• Требуется загрузка и установка приложения и перенос данных и настроек

• Перенести в Windows Azure существующую виртуальную машину

• Приложение, конфигурация и настройки автоматически переносятся

• Могут выявится зависимости от драйверов или других компонентов,

отсутствующих в гипервизоре Windows Azure

• Требуется загрузка vhd в Windows Azure

Подходы к миграции

• Используйте один Cloud Service

• Все VM, расположенные в одном

Cloud Service, взаимодействуют

напрямую

• Имена резолвятся

автоматически с помощью

Windows Azure DNS

А что если у нас несколько виртуальных машин (VM)?

Cloud Service Имя: myapp1.cloudapp.net

Virtual Machine

VM имя: iisvm1

10.1.5.6

Virtual Machine

VM имя: iisvm2

10.1.5.7

DIP

Virtual Machine

VM имя: sqlvm1

10.1.5.8

Балансировщик Публичный IP

• Windows Azure поддерживает VHD формат

• Другие форматы должны быть конвертированы перед миграцией в VHD

• Используйте для загрузки CSUpload.exe

• Поддержка возобновления закачки

• Автоматически конвертирует диск из Dynamic в Fixed Disk

• Эффективная загрузка – нулевые байту пропускаются (не отправляются)

• Перед загрузкой не забудьте!

• Включить удаленный доступ (Remote Access)

Процесс миграции виртуальной машины

• Постоянный IP адрес

• VM, подключенная к виртуальной сети, имеет

бесконечный DHCP-лиз

• Гибридные приложения

• Требуется соединение между облаком и

локальной инфраструктурой

• Соединение между облачными сервисами

• Развернутая AD в облаке

• Интеграция между PaaS и IaaS частями

Windows Azure Virtual Network

Разворачивайте DC в отдельном сервисе (Cloud Service )

Domain Controller в Windows Azure

Cloud Service for AD Clients Имя: app-cloudservice.cloudapp.net

Группа привязки (Affinity Group): ADAG

Deployment Virtual Network: ADVNET

DNS Ips: 192.168.1.4

Virtual Machine Role Name: advm1

Subnet: AppSubnet

IP Address: 192.168.2.4

Cloud Service for AD Domains Имя: ad-cloudservice.cloudapp.net

Группа привязки (Affinity Group): ADAG

Deployment Virtual Network: ADVNET

DNS Ips: (On-Premise AD IP)

Virtual Machine Role Name: ad-dc

Subnet: ADSubnet

IP Address: 192.168.1.4

DIP

ADVNET

AD локально

Балансировщик Public IP

Site-to-Site VPN канал

Аутентификация в AD +

Доступ к локальным ресурсам

Contoso.com Active Directory Contoso.com Active Directory

AD локально и в облаке

Балансировщик Public IP

Репликация AD +

Доступ к локальным ресурсам AD Auth

Site-to-Site VPN канал

Contoso.com Active Directory Contoso.com Active Directory

AD только в облаке

Балансировщик Public IP

Локальные ресурсы

AD Auth

Site-to-Site VPN канал

Contoso.com Active Directory

Внешняя Active Directory

• Каждый диск – это отдельные I/O

• Контроллер диска\шпиндели

• Несколько дисков – повышение производительности (за счет распараллеливания I/O)

• Режимы кэширования (Host Caching)

• None, ReadOnly и ReadWrite режимы

• Для диска данных (DataDisk) по умолчанию None

• Планируйте объемы хранения

• Максимальный размера диск данных - 1TB

Диски и данные

Демо

Миграция: интеграция PaaS и IaaS

• Плюсы

• Просто

• Автономно

• VIP Swap (облачный сервис)

• Простое развертывание

• Минусы

• Сетевая задержка выше

• Менее безопасно

Интеграция через VIPs Простой способ взаимодействия через публичный адрес

• Плюсы

• VM не «публикуется» в Интернет

• Низкая сетевая задержка

• VIP Swap

• Минусы

• Более сложная настройка (VNET)

• Нет Windows Azure DNS - потребуется

собственный DNS или общение по IP адресам

Прямое соединение через виртуальную сеть (VNET) Для сложных сценариев, например, Active Directory или DCOM

Ключевые сценарии миграции

Бесплатный доступ и ресурсы Windows Azure

Специальные предложения для участников

Бесплатный Windows Azure триал

1 2

3

http://windowsazure.com

Если у Вас нет кредитной карты – создайте виртуальную карту

По умолчанию для триала установлен лимит (0 руб) на списание средств с карты

Спасибо! Ефимцева Наталия

natale@microsof.tcom

@nefimtseva

top related