450 likes | 648 Views
Разработка корпоративных приложений на Windows 8 и Azure . Миграции информационной инфраструктуры бизнес - приложений в облако. Ефимцева Наталия natale@microsoft.com @ nefimtseva. ЗА 45 МИНУТ МОЖНО УСПЕТЬ МНОГОЕ !
E N D
Разработка корпоративных приложений на Windows 8 и Azure
Миграции информационной инфраструктуры бизнес-приложений в облако Ефимцева Наталия natale@microsoft.com @nefimtseva
ЗА 45 МИНУТ МОЖНО УСПЕТЬ МНОГОЕ! КОРЕЕЦ ВИКТОР АН ЗАВОЕВАЛ ДЛЯ РОССИИ ЗА 45 МИНУТ ДВЕ ЗОЛОТЫЕ МЕДАЛИ! ИСТОЧНИК: DELFI СПОРТ Источник: DelfiСпорт
ОБЛАЧНЫЙ РЫНОК Источник: http://blog.capterra.com/why-web-based-software-is-best-for-field-service-management/
Рынок облачных технологий в России, 2013 Облачный рынок • Всего за 5 лет доля новых серверов, использующих виртуализацию, выросла с 5% в 2008 году до 26% в 2013 77% серверов используют Windows Server • В 2012 году Windows Azure лидировал на российском PaaSрынке публичного облака ($1.18 миллиона) Источники: IDC Russia Cloud Services Market 2012 Analysis and 2013-2017 Forecast IDC Worldwide Quarterly Server Virtualization Tracker Q2 2013
Отчет Gartner: Windows Azure в лидерах рынка PaaS для корпоративных приложений Источник: Gartner: Magic Quadrant for Enterprise Application Platform as a Service, 2014
Гетерогенная среда Языки CMS Устройства Базы данных Операционные системы
Вопросы миграции в облако • Вся ли локальная инфраструктура может быть перенесена в облако? • Возможно, что нет. • Идентичны ли подходы к отказоустойчивости и кластеризации в облаке и локально? • Облако предоставляет как встроенные, так и конфигурируемые средства для обеспечения отказоустойчивости, но применяемые подходы отличаются. • Какова стоимость миграции идальнейшей работы приложения в облаке? • Миграция часто требует больше ресурсных вложений, чем финансовых. Подходы к ценообразования в облаке отличаются.
Соберите данные • Инфраструктура • Спецификация виртуальных машин или физических серверов • Операционные системы и совместимость • Системы хранения данных и объемы данных • Средства управления • Антивирусы\средства мониторинга\бэкапы • Требования к доступности • Доступность во время работы • Миграция online или offline • Требования к отказоустойчивости и кластеризации • Текущие показатели системы по производительности и нагрузке
Миграция - в Windows Azure возможны любые конфигурации Frontend PaaS Cloud Services\Web Sites Azure Storage SQL Database Iaas + PaaS + локальная инфраструктура IaaS Виртуальные машины VPN WAAD Backend Данные В Windows Azure возможны любые конфигурации!
ACTIVE DIRECTORY МЕДИА СЕРВИСЫ Множество готовых служб Автомасштабирование Отказоустойчивость SLA HPC КЭШ ВИРТУАЛЬНЫЕ МАШИНЫ МОБИЛЬНЫЕ СЕРВИСЫ ИДЕНТИФИКАЦИЯ ХРАНИЛИЩА SQL БАЗА ДАННЫХ DATA SYNC ВЕБ-САЙТЫ АНАЛИТИКА ИНТЕГРАЦИЯ СЕРВИСНАЯ ШИНА ДИСПЕТЧЕР ТРАФИКА ЦЕНТР УВЕДОМЛЕНИЙ HDINSIGHT CDN СЕТЬ ОБЛАЧНЫЕ СЕРВИСЫ WINDOWS AZURE STORE PREMIUM SQL БАЗА ДАННЫХ СООБЩЕНИЯ СЛУЖБЫ BIZTALK РЕЗЕРВНОЕ КОПИРОВАНИЕ
Приложение хороший кандидат на миграцию, если: • Приложение работает в виртуальной среде (не используется специфичное оборудование) • Нет жестких требований по IOPS • Приложение работает в Windows Server 2008 R2 или выше (или Lunix) • Гибкая сетевая инфраструктура (не используется специфичное оборудование)
Размер виртуальных машин • CPU, RAM, пропускная способность • Windows Azure предлагает выбор не из спецификации оборудования, а из шаблонов (комбинация CPU\RAM) IaaS\PaaS машин • Масштабирование можетдостигаться за счет увеличения размера • Размер виртуальной машины связан с еепропускной способностью(используется и длядисковых IO)
VHD диски • VHD обслуживается с Azure BLOB Storage • Azure VHD – это сетевые диски (медленнее, чем физические жесткие диски). • Такая архитектура повышается отказоустойчивость (быстрое восстановление машины после сбоя) • Размер виртуальной машины связан с ее пропускной способностью (используется и для дисковых IO) • На данный момент поддерживается VHD, но не VHDX • Типы дисков: OS Disk, Data Disk и временный диск • OS Disk - оптимизирован для быстрого запуска ОС • Размер ОС партициине должен превышать 127ГБ • Data Disk- оптимизирован для Random IO • Директории данных (DC и SQL Server) должны использовать Data Disk • Максимальный размер Data Disk’а 1ТБ • Количество подключаемых Data Disk’ов зависит от размера машины • Для повышения производительности объединяйте Data Disk’и в RAID
VHD диски (продолжение) • Типы дисков: OS Disk, Data Disk и временный диск • Диск D:\ - временный диск, физический диск хоста • Данные после перезагрузки могут быть потеряны • Приложение не должно иметь зависимости на имя диска • Может использоваться только для хранения временных данных
Выбор ОСи поддержка приложений • Azure IaaS поддерживает только 64-битные ОС • ОС: Windows Server 2008 R2 и Windows Server 2012, дистрибутивы Linux • Срок поддержки образов (support lifecycle) • Приложения Microsoft, поддерживаемые в Azure • http://support.microsoft.com/kb/2721672
Сеть • 1 внешний IP адрес на Cloud Service • 1 сетевой адаптер на виртуальной машине • 1 DHCP внутренний IP адрес на машину • Сопоставление портов (port forwarding) • Site-to-Site VPN (оборудование\Windows Server 2012R2 RRAS) или Point-to-Site VPN • Балансировка входящих запросов (трафика) осуществляется до Cloud Service’а – нет SSL offloading
Сетевая топология • Один Cloud Service (все виртуальные машины в нем) • 1 внешний IP адрес • Внутренний IP адрес выдается автоматически Azure DHCP • Встроенные DNS • Несколько Cloud Service (виртуальные машины распределены) • Несколько внешних IP адресов • Azure VNET (виртуальная сесть) • VPN с локальной инфраструктурой • Внутренняя сеть между несколькими Cloud Service’ами • Гибридное решения для IaaS/PaaS • Внутренние IP выделяется Azure DHCP, но в соответствии с заданными правила для подсетей внутри виртуальной сети • Availability Setsи балансировка
Масштабирование • Есть некоторые особенностидля виртуальных машин • Машины должны быть заранее созданы • Добавлены в Availability Set • Далее настроены правила • «Лишние» машины останавливаются (плата не взимается) • Механизм автомасштабирования далее самостоятельно включает\выключает машины • Для PaaS (Cloud Services\Web Sites) этих особенностей нет
Отказоустойчивость • VHD (Azure BLOB Storage) предлагает локальную и глобальную репликацию (соседний ЦОД обычно) • Это защищает от проблем, связанных с неисправностью оборудования или всего ЦОДа • Availability Set (AS) позволяет реализовать отказоустойчивость • SLA на доступность 99,95% предоставляется только на две и более виртуальных машины, включенных в Availability Set • Машины распределяются по (OS) Update (5-20) и Fault(2+)доменам
Отказоустойчивость Fault домен Fault домен Стойка Стойка Виртуальная машина • Виртуальная машина Availability Set IIS2 IIS1 UD #2 UD #1 Availability Set • Виртуальная машина Виртуальная машина SQL1 SQL2 UD #1 UD #2
Отказоустойчивость: SQL Server • High Availability and Disaster Recovery for SQL Server in Windows Azure Virtual Machines • Log Shipping • Мирроринг(устаревший в SQL Server 2012) • Не требуется домен • Always On в SQL Server 2012 (Always Available) • Обязательно требуется домен • Документ Performance Guidance for SQL Server in Windows Azure Virtual Machines • PaaS вариант: SQL Database или SQL Database Premium • Нет необходимости настраивать дополнительно отказоустойчивости • Предоставляется SLA на доступность 99,95%
Балансировка нагрузки • Windows Azure предоставляет встроенный балансирощик нагрузки • Алгоритм: round robin • Source IP, Source Port, Destination IP, Destination Port, Protocol • Включайте машины в Load Balancing Set и в Availability Set • Статья по балансировке внутренних серверов How to Load-Balance Internal Servers • В основе лежит ACL • PaaS: настраивается все декларативно и автоматически
Доступ к файлам • Data Disk может быть подключен только к одной виртуальной машине • И вспомним про Availability Set • File Share • На основе Distributed File System (DFS) • Статья High-Available File Share in Windows Azure using DFS • PaaS: использовать Azure BLOB Storage • Свободный канал (трафик идет не через виртуальную машину и сетевой адаптер, а напрямую через\к BLOBStorage) • Централизованное отказоустойчивое и масштабируемое хранилище с SLA на доступность 99,95%
Граница Cloud Services Основные и warm backupмашины в Availability Sets Виртуальные машины, включенные в балансировку и вAvailability Set Веб сервера App server tier DB server tier RODC Azure CDNдля кэширования БалансировщикAzure 192.168.100.0/24 Azure VNET Azure VNET gateway Клиент (обычный) Juniper SSG520M илиPalo Alto PA-2050 Локальный сервер Локальный DC Сеть(240) 192.168.240.0/24 Клиент (администратор) 192.168.247.0/24 Рабочие станции и сеть (например, принтер)
Терминальные службы (удаленные рабочие столы) • Могут ли поставщики услуг создать облачную службу на основе Windows Azure, используя размещение на основе сеансов через RDS • «Да, поставщики услуг могут предоставлять размещенные решения через RDS на платформе Windows Azure, если они получили лицензии подписчика (SAL) для RDS у торгового посредника по лицензионным соглашениям поставщиков услуг (SPLA)». • Могут ли пользователи арендовать настольные клиенты Windows в Windows Azure или у других поставщиков услуг? • «Нет, размещение с обслуживанием нескольких развертываний запрещено в правах на использование продукта клиента Windows, например Windows 7 или Windows 8. Поэтому настольные клиенты Windows недоступны в Windows Azure или у другого поставщика услуг, такого как Amazon или Rackspace.» • Виртуальные машины — вопросы и ответы по лицензированию
Полезны советы • Подготовка VHD • Не забудьте запустить Sysprep • Убедитесь, что учетная запись администратора не заблокирована • RDP разрешени RDP порт 3389 не блокируется брандмауэром • Присутствует 1 сетевой адаптер, сконфигурированнный для DHCP • Загрузка vhdв облако • CSUploadиз Azure SDK или Add-AzureVDHкомандлетPowerShell • Автоматически конвертируют динамические диски в fixed и пропускают • Любая утилита по копирования файлов в BLOB • Но не все йогурты одинаково полезны
Полезны советы • Бэкап или snapshot виртуальной машины • Можно сделать snapshot vhdдиска (BLOB объекта), при этом виртуальная машина должна быть остановлена • Выключение виртуальной машины • В выключенном состоянии плата за время работы виртуальной машины не взимается • В выключенном состоянии все ресурсы, ранее выделенные под виртуальную машину, освобождаются • Выключайте машину через портал управления Windows Azure или через PowerShell командлеты • Shutdown виртуальной машины из самой виртуальной машины работает иначе: приводит к остановке машины (pause), но не высвобождению ресурсов, поэтому плата за работу машины будет продолжать взиматься
Полезны советы • VM Agent • В виртуальных машинах появился VM Agent
Привязка доменного имени • VIP (внешний IP адрес) не является статическим • Статья Время жизни статических IP-адресов в Windows Azure • Адрес *.cloudapp.net или *.azurewebsites.net • Например: myservicename.cloudapp.net, TTL 10 секунд • Использовать CNAME • Требуется 2 DNS lookup • Кэширование ограничено из-за низкого TTL • A запись для корневого домена • VIP (внешний IP адрес) меняется при удалении всех элементов из Cloud Services(выключение машины, редеплойпакета) • Статья Привязка своего домена к Windows Azure (на примере RU-CENTER)
СТОИМОСТЬРАБОТЫ ПРИЛОЖЕНИЯ В AZURE Источник: http://turcopolier.typepad.com/sic_semper_tyrannis/2013/03/cyprus-where-is-your-money-today.html
Стоимость • Оплата по мере потребления! • Калькулятор • Подходит для предварительных расчетов • Опции приобретения • Тарифные планы и важная информация про скидки (например, от 20% скидка при потребление > $500\месяц) • Личный кабинет • Управление подписками • Выставленные счета • Отчет по потребленным ресурсам • Важно! • Трафик внутри ЦОДа не оплачивается, в том числе и между разными подписками
Настройте Billing Alerts • И оставайтесь в курсе ваших расходов
Специальные предложения MSDN Бесплатно ресурсы на $50-$150 в месяц Подробнее BizSpark Бесплатно ресурсы на $150в месяц Подробнее Microsoft Partner Network (MPN) Бесплатно ресурсы на $100в месяц Подробнее
$150В МЕСЯЦ 75HDInsightузлов на 10часов непрерывной работы 3 VMs, работающие24x7весь месяц 80 VMs для нагрузочного тестирования Более100 веб сайтов+ база данных
Выводы • Облако – это немного другая среда, неверная архитектура или недостаточное планирование могут серьезно сказаться на работоспособности приложения • Убедитесь до миграции, что хорошо понимаете, как приложение работает • Старайтесь измерять максимально возможное количество параметров (как до, так и после миграции) • Windows Azure подходит для миграции сложных систем и бизнес-приложений – небольшие и оправданные изменения в архитектуре приложения положительно скажутся на работоспособности приложения • Windows Azure очень динамично развивается!
Контакты Ефимцева Наталия Microsoft natale@microsoft.com & @nefimtseva