Мы начинаем серию статей, посвященных использованию облачного сервиса Microsoft Azure и популярной CMS/CMF системы Drupal 7, основным возможностям развертывания новых и готовых веб-сайтов в облачную среду, а также различным вариантам масштабируемости и настройки веб-проектов в облаке.
Развертывание сайта Microsoft Azure WebSites с использованием базы данных MSSQL
Система управления сайтом CMS Drupal 7-8 позволяет использовать различные типы реляционных баз данных, в том числе MySQL, PostgreSQL и MSSQL.
Для того, чтобы создать новый сайт вам необходимо иметь доступ к порталу https://azure.microsoft.com/ru-ru На официальном сайте любой пользователь может бесплатно использовать пробную версию на один месяц с вычислительными ресурсами, которые позволят развернуть новый сайт с базой данных SQL.
Увеличить
В меню «Создать» необходимо выбрать «Веб-сайт» в котором есть три пункта:
1. Быстро создать. Для создания вам необходимо только указать название вашего сайта в доменной зоне azurewebsites.net. Все остальные настройки можно выполнить позже, через меню «Связанные ресурсы».
2. Настраиваемое приложение. Создание веб-сайта с дополнительными параметрами, такими как новая или существующая база данных либо с непрерывным развертыванием из системы управления версиями. Использовать мы будем данную модель, чтобы учесть все нюансы настройки CMS Drupal.
3. Из коллекции. В коллекциях мы можем найти две сборки Drupal - Acquia Drupal 7 и Drupal Commerce Kickstart, которые дают возможность ознакомиться со базовыми возможностями для создания динамических и социальных веб-сайтов и сайтов электронной коммерции. Если мы разрабатываем индивидуальный проект, возможно, нам не будут необходимы все модули, которые устанавливаются вместе со сборкой. Поэтому предпочтительнее инсталлировать лишь самые необходимые модули. В этом случае, CMS будет создавать меньше запросов к базе данных, тратить меньше ресурсов и будет работать быстрее.
Увеличить
Пример создания проекта microsoftdrupal.azurewebsites.net
В меню «Настраиваемое создание» мы указываем следующие параметры:
1. Url-адрес: название вашего проекта (доменное имя третьего уровня в зоне .azurewebsites.net)
2. План размещения веб-сайтов. Зависит от вашей подписки. Мы создаем новый план.
3. Регион. Предпочитаемый дата-центр размещения.
4. База данных. Мы можем указать создать новую базу SQL, новую базу MySQL ClearDb или создать бесплатную базу данных MySQL размером 20 Мб. В нашем случае мы будем работать с SQL базой данных.
5. Имя строки подключения к базе данных. Меняется опционально в меню настройка.
6. Публикация из системы управления версиями. Указываем да, чтобы после создания сайта опубликовать ваш проект через Git или другие системы управления версиями.
Увеличить
В следующем окне необходимо настроить параметры подключения к базе данных SQL:
Имя: автоматическое название (имя базы данных)
Сервер: Создать новый сервер
Имя входа сервера: логин, например, drupalsql
Пароль для входа на сервер: Drupal_101 (необходимо использовать различные типы знаков и регистр букв)
Регион: Западная Европа
Настройка дополнительных параметров: да. В Дополнительных параметрах базы данных мы можем указать выбранный тарифный план и размер базы данных SQL.
Увеличить
Для удобства размещения кода мы будем использовать FTP соединение, но вы можете публиковать исходный код через системы управления версиями Git, Codeplex, Bitbucket, CodePlex, GitHub.
Увеличить
После выбора всех параметров Windows Azure автоматически создает его и теперь вы должны видеть его в списке «Веб-сайты».
Публикация нового сайта Drupal 7 в Windows Azure
После того, как ваш сайт готов, его можно переносить в облачную платформу Windows Azure. У пользователей есть два удобных варианта – закачивать файлы через протокол передачи файлов ftp или использовать удаленный репозиторий Git.
Если вы используете Git, вы должны установить Git репозиторий в Windows Azure Web Sites. Кроме того, на локальной машине у вас должен установлен также Git. После создания репозитория, следуйте инструкциям, указанные в скриншоте:
Увеличить
Для переноса через FTP вам необходимо наличие удобного ftp-клиента (например, Filezilla или Total commander), имя пользователя и пароля из профиля публикации панели управления вашего сайта в Windows Azure. Для определения параметров соединения по ftp в пункте "Панель мониторинга" скачиваем "Профиль публикации".
В профиле публикации находим строчку с параметрами:
publishMethod="FTP" publishUrl=" ftp://waws-prod-am2-003.ftp.azurewebsites.windows.net/site/wwwroot" ftpPassiveMode="True" userName="microsoftsql\$microsoftsql" userPWD="yj2dpLMZgnfSZ1CP5PbDgzphf3YCnCsGdyPYsdK1E7thfnr"
Таким образом, мы имеем следующие параметры:
Имя соединения: waws-prod-am2-003.ftp.azurewebsites.windows.net
Сервер (Порт): waws-prod-am2-003.ftp.azurewebsites.windows.net
Учетная запись: microsoftsql\$microsoftsql
Пароль: yj2dpLMZgnfSZ1CP5PbDgzphf3YCnCsGdyPYsdK1E7thfnr
После соединения переходите по адресу /site/wwwroot/ и загружайте в корень исходные файлы CMS Drupal актуальной версии, которую вы можете загрузить с сайта http://drupal.org/.
Если вы все сделали правильно, то вы должны увидеть первоначальное окно установки CMS Drupal 7:
Увеличить
Но прежде чем, начать установку CMS Drupal, нам необходимо добавить драйверы Microsoft SQL в наш проект, а также проверить наличие файла web.config для использования «чистых» ссылок.
Драйвер MSSQL можно скачать по этой ссылке http://drupal.org/project/sqlsrv
Далее разархивируем полностью наш модуль в папку /site/wwwroot/sites/all/modules/
И дополнительно загружаем только подпапку sqlsrv (5 файлов: database.inc, install.inc, query.inc, schema.inc, select.inc) в папку /site/wwwroot/includes/database/
Важно! При установке следует выбирать в параметрах сайта в Windows Azure версию PHP 5.3. C версий PHP 5.4 на момент написания статьи появляются ошибки при тестировании и установке.
Процесс установки
Увеличить
Первоначально вам необходимо выбрать профиль CMS Drupal (минимальный или стандартный), язык интерфейса. После этого мы переходим к вкладке Set up database, в которой вводим параметры созданной базы данных MSSQL (пример в скриншоте).
Database Name: microsoAqpyKF4eA
Database UserName: drupalsql
Database Name: Drupal_101
Database Host: icbxw1i771.database.windows.net
Port: 1433
После проверки данных начнется установка необходимых модулей и в последнем окне вам необходимо будет указать имя пользователя сайта (админ), электронный ящик, региональные настройки и другие параметры.
Увеличить
Увеличить
Поздравляем ваш сайт готов и работает под управлением Windows Azure (Microsoft-IIS/8.0) с использованием базы данных SQL Microsoft.
Увеличить