Уважаемые разработчики и тестировщики программного обеспечения! Предлагаем вашему вниманию цикл статей на тему организации тестирования и разработки приложений в облачном окружении. В этот цикл входят следующие статьи:
- Бесплатные мощности Windows Azure для подписчиков MSDN: как активировать и начать использовать?
- Разработка и тестирование приложений в облачном окружении Windows Azure
- Популярные сценарии разработки и тестирования в облаке
- Разработка и тестирование на открытых технологиях в облаке на примере Node.js, Riak, Ruby on Rails и десятков других
В этой статье мы рассмотрим возможности по разработке и тестированию приложений построенных на открытых технологиях и операционной системе Linux в облаке Windows Azure. В частности, рассмотрим работу с тестовым окружением технологий Riak и Erlang, Node.js, Ruby on Rails.
Для изучения материала этой статьи вам потребуется Windows Azure. Бесплатный триал на 30 дней можно оформить по этой ссылке.
Сообщество VM Depot
Благодаря открытому сообществу VM Depot, сегодня для облачной платформы Windows Azure подготовлено уже несколько сотен готовых к применению образов виртуальных машин на открытых технологиях и операционной системе Linux (дистрибутивы Alt Linux, CentOS, Ubuntu, SUSE Linux и другие).
Среди доступных в VM Depot окружений можно выделить следующие: LAMP, Drupal, Jenkis, Magento, MongoDB, Neo4js, Redis, WordPress, Apache Solr, Cassandra, Coppermine, Discourse, Django, DokuWiki, GitLab, Gitorious, Horde, JBoss, Jetty, Joomla, JRuby, Mantis, MediaWiki, Moodle, Node.js, OpenERP, ownCloud, phpBB, Plone, Redmine, Riak, Spree, SugarCRM, Tomcat, XOOPS и десятки других.
Развертывание окружения Node.JS из VM Depot
Развернуть необходимое окружение для разработки и тестирования проектов на открытых технологиях проще простого через VM Depot и портал Windows Azure.
В портале администрирования Windows Azure перейдите в раздел “Виртуальные машины” и выберите пункт меню “Образы”. В списке будут перечислены все созданные ранее образы виртуальных машин.
Выберите команду “Обзор VM Depot”. Вы получите список из сотен доступных к размещению образов виртуальных машин VM Depot.
Выберите необходимый для вашей среды разработки и тестирования образ (Node.js) и нажмите стрелку “Далее”.
Задайте предпочтительный для размещения регион, выберите вашу подписку (если их у вас несколько), укажите существующую либо создайте новую учетную запись хранилища для размещения образа виртуальной машины. Нажмите галочку “Завершить”.
Будет запущен процесс копирования образа виртуальной машины из галереи VM Depot в указанное ваши местоположение (хранилище блобов в вашей подписке). Через несколько секунд вы уже будете иметь возможность зарегистрировать виртуальную машину на основе загружаемого файла.
Выберите в списке ваш образ и нажмите команду “Зарегистрировать”. Вам предложат назвать копируемый образ в хранилище и укажут прямой адрес на файл VHD.
Дождитесь окончания процесса регистрации и начните процесс создания виртуальной машины из галереи. Теперь для вас доступен новый только что загруженный образ виртуальный машины Node.js.
Выберите новый образ и нажмите “Далее”. Пройдите все шаги мастера по созданию виртуальной машины. Ваше окружение для разработки и тестирования будет создано! После успешного создания виртуальной машины вы сможете зайти в панель управления для ее настройки, мониторинга, управления параметрами конечных точек. Для примера откройте новую конечную точку для доступа к веб-серверу виртуальной машины по 80 порту.
После этого, вы можете перейти по ссылке облачного сервиса ассоциированного с вашей виртуальной машиной (URL можно увидеть в панели администрирования) для того чтобы начать разрабатывать и тестировать Node.js приложения в облаке!
Если вы проделаете те же шаги с готовым образом виртуальный машины собранном для среды разработки и тестирования на Ruby On Rails, то всего через несколько минут сможете получить готовую, преднастроенную среду.
Работа с VM Depot из командной строки Linux, OSX, Windows
Важно! Для работы Windows Azure из командной строки, пожалуйста, установите кроссплатформенные инструменты для вашей операционной системы (руководство для Linux, для OSX, для Windows).
Работать с VM Depot из командной строки проще простого. Перейдите по адресу http://vmdepot.msopentech.com и введите в поле поиска наименование интересующей вас технологии, например, Riak,
В списке результатов поиска вы можете увидеть созданный автором хранилища Riak (Basho) официальный образ окружения для размещения в Windows Azure. Из информации к образу вы можете узнать, что окружение построено на базе CentOS и содержит помимо предустановленной базы данных Riak еще и пакеты с Erlang и Riak Console, что позволяет получить в пару кликов готовую среду для разработки и тестирования с помощью Riak.
Выберите ссылку Deployment Script напротив Riak для получения скрипта (для Linux, OSX и Windows) для автоматической загрузки VHD-файла из галереи VM Depot в ваше облачное хранилище, создания виртуальной машины на базе загруженного образа и запуска ее в облачном окружении Windows Azure.
Вам предложат согласиться с условиями использования образа виртуальной машины.
Согласитесь с условиями и в следующем окне выберите необходимый для размещения дата-центр Windows Azure (регион).
Вам будет предложена готовая строка скрипта для выполнения его в bash на Linux, OSX или в PowerShell на Windows. Благодаря кроссплатформенным инструментам командной строки синтаксис и работа с командной строкой для всех ОС одинакова.
Скопируйте строку скрипта и измените ряд ваших персональных параметров: DNS-префикс, имя пользователя и пароль, а также разрешите доступ по SSH к виртуальной машине. У вас получится строка команды похожей на следующую:
azure vm create RiakVMDepot -o vmdepot-66-3-16 -l "North Europe" vyunev mypassword –ssh
Откройте интерфейс командной строки (bash для Linux и OSX или PowerShell для Windows) и выполните полученную команду.
Начнется процедура копирования диска виртуальной машины из галереи VM Depot в блоб вашей учетной записи, создания машины на базе диска и ее запуск. Вся процедура займет несколько минут, о прогрессе вы будете информироваться в терминале командной строки.