Основные аспекты управления веб-проектом в Microsoft Azure Website. Конференция Global Azure Bootcamp в Минске.
25 апреля в городе Минске в ивент-пространстве Space прошло глобальное ежегодное мероприятие Global Azure Bootcamp, которое примечательно тем, что проходит за один день в более чем 180 точках земного шара. В конференции принимали участие исключительно белорусские разработчики и специалисты из города Витебска и Минска.
Основной тематикой мероприятия стала теория и практика использования Microsoft Azure для создания и развертывания облачных решений. Основные доклады были связаны как с общей информацией о новых сервисах и возможностях Azure, так и с примерами внедрений на практике.
Основные доклады:
1. Основные аспекты управления веб-проектом в Microsoft Azure Website. Cоздание сайта из коллекции веб-приложений, выбор СУБД, средства развертывания, сервис Kudu, привязка домена, использование HTTPS. Артур Баранок, Azure MVP
2. Provisioning в Microsoft Azure. Развертывания и настройка окружений в Azure, автоматизация и шаблонизация, инструменты и сценарии, Azure PowerShell. Евгений Илагин, Azure Evangelist
3. Обеспечение высокой доступности приложений в Microsoft Azure. Обзор, отказоустойчивость при работе с отдельными сервисами Azure, проектирование с учетом катастрофических сбоев, hands-on пример. Игорь Ястребов, ScienceSoft
4. Погружение в Azure Redis Cache. Обзор способов и инструментов кеширования в Azure. Углубление в Azure Redis Cache - сценарии использования, отказоуствойчивость, масштабирование, ограничения. Александр Лайша, ScienceSoft
В данной статье мы рассмотрим подробнее мой доклад об использовании сервиса Microsoft Azure Website для управления вашим проектом.
Web Apps Service объединяет сервисы Web + Mobile
В настоящее время Microsoft Azure Websites (Web Apps Service) — эта мощная самообслуживаемая платформа для размещения собственных веб и мобильных приложений. Кроме того, после апрельского обновления платформа App Service теперь включает сервисы Logic App, API App, API Management и Notification Hub.
Основными особенностями платформы Microsoft Azure Websites, отличающих ее от других поставщиков является:
- Гибкость - размещение приложений на различных платформах, фреймворках и языках (.NET, PHP, Node.js, Python, Java)
- Масштабируемость - масштабирование за секунды в балансируемом и актуальном окружении.
- Безопасность - высокая защита корпоративного уровня с поддержкой SSL.
Одним из самых примечательных примеров размещения в облачном сервисе Azure WebSites являются внутренние ресурсы Microsoft – блоги Office 365, OneDrive и Azure. Кроме того, они базируются на бесплатной open-source CMS системе WordPress.
https://blog.onedrive.com/ (WordPress)
https://blogs.office.com/ (WordPress)
http://azure.microsoft.com/blog/ (WordPress)
Галерея веб-приложений
За время существования Azure коллекция веб-приложений в Azure Apps Service пополнилась многочисленными системами управления сайтами CMS, построенных на PHP, ASP.NET, Java, Python. Сейчас этот список довольно внушительный:
- Acquia Drupal 7
- Apache Tomcat 7
- Better CMS
- BlogEngine.NET
- Bottle
- BugNET
- CakePHP
- Composite C1 CMS
- dasBlog
- Django
- DNN Platform
- Drupal Commerce
- EC-CUBE
- Flask
- Gallery Server Pro
- Ghost
- Incentive
- Java Coffee Shop
- Jetty
- Joomla!
- Kentico CMS для ASP.NET
- Lemoon
- Magento
- MediaWiki
- mojoPortal
- MonoX
- MVCForum
- nopCommerce
- nService
- NuData DKAN
- OpenCart
- Orchard CMS
- osCommerce
- OWA
- phpBB
- Piwik
- Pligg
- razorC.net
- SageFrame
- Service Gateway Management Console
- SoNET Web Engine
- SugarCRM
- TYPO3 CMS 6.2
- Umbraco CMS
- Virto Commerce
- WordPress
Сервис KUDU в Azure
Kudu — расширенная панель управления сайтами, которая позволяет легко управлять параметрами сайта, получать диагностическую информацию и логи.
1. Единый адрес для входа в панель: https://drupal701.scm.azurewebsites.net
2. Встроенная консоль (CMD или PowerShell) с визуальным файловым менеджером и онлайн-редактором кода
3. Просмотр диагностической информации и логов. Просмотр и управление списком процессов, загрузки дампов памяти процессов, прекращение работы процессов, диагностирование работы веб-заданий Web Jobs.
- Process Explorer (список запущенных процессов)
- Diagnostic dump (загрузка диагностического дампа)
- Log stream (лог трассировки)
- Web hooks (триггер заданий)
- Download deployment script (пользовательские сценарии развертывания)
4. Просмотр системной информации (System Info, App Settings, Connection Strings, Environment variables, PATH, HTTP Headers, Server variables).
5. Галерея дополнительных расширений
- Visual Studio Online (среда разработки Visual Studio в браузере)
- phpMyAdmin (управление MySQL)
- Site Admin Tools (административный интерфейс управления Kudu)
- Diagnostics as a Service (диагностические средства управления сайтом)
- Azure Web Site Logs Browser (Просмотр журналов, хранилища Azure blob storage и табличных данных Azure table storage)
- Application Insights Extension
- Site Replicator (инструменты репликации)
- New Relic (добавление агента New Relic)
- Azure Image Optimizer (сжатие изображений)
- Azure Minifier (сжатие .css и .js файлов)
- File Counter (sample) (подсчет количество файлов на сервере)
- Azure Websites Event Viewer (просмотр событий EventLog.xml в интерактивном режиме)
- Php Manager (управление настройками расширений PHP)
- File Counter MVC
- High Availability Web API (тест High Availability Test Tool)
- RedDog Search Portal (Портал управления для Azure Search)
- Self-Service troubleshooting and diagnostics (диагностика)
- WordPress CLI
- Composer (управление зависимостями)
- WebAPI settings API (sample)
- Go Lang for Azure Websites
- Freb Viewer (просмотр FREB файлов)
- Auth0 Extension
- Azure Web Apps Disk Usage
- Freemailer
- TiP Callback Extension
- Gulp
Масштабирование Azure WebSites
Планы размещения
1. Бесплатный (1 экземпляр, масштабирование отключено)
2. Общий (от 1 до 6 экземпляров, без дополнительных настроек)
3. Базовый (от 1 до 3 экземпляров с выбором размера Instance)
Выбор размера экземпляра:
- Маленький (1 ядро, память 1,75 ГБ)
- Средний (2 ядра, память 3,5 ГБ)
- Крупный (4 ядра, память 7 ГБ)
4. Стандартный (число экземпляров от 1 до 10, выбор размера)
- Параметры масштабирования по расписанию
- Масштабирование по метрике
- По загруженности центрального процессора
Привязка собственного домена в Azure Websites
Установка собственного доменного имени в Azure практически не изменилась и сводится к тому, что вам необходимо работать с DNS настройками вашего домена
1. Переключение масштабирования в режим «Базовый»
2. Настройка параметров DNS домена (записи CNAME и A)
Запись CNAME:
Домен: www
Тип записи: CNAME
Значение: drupal701.azurewebsites.net
Запись A:
Домен: название_домена.by
тип записи: CNAME
Значение (IP-адрес): 104.45.14.249 (из панели управления Azure)
3. Ввод имени домена в панель проекта Azure WebSites
Использование HTTPS
Использовать SSL-сертификаты в Azure Websites можно прямо через панель управления порталом. Однако перед тем, как импортировать сертификат, необходимо выполнить несколько действий.
1. Выбор плана размещения: Базовый или Стандартный
2. Привязка собственного домена
3. Экспорт сертификата в формат .pfx (утилита DigiCertUtil)
4. Импорт сертификата в портал Microsoft Azure (Upload a certificate)
5. Во вкладке «SSL-привязки» выбираем сертификат, который вы хотите использовать для домена.
6. DigiCert® SSL Diagnostics Tool - диагностика установки SSL-сертификата.