Главная > Eclipse, Java - язык и технологии, Open Source, PHP, web2.0, веб-обзоры, Стартапы > Достучаться до небес или тестируем Aptana Cloud своими руками

Достучаться до небес или тестируем Aptana Cloud своими руками

27 июня 2008

Приветствую наших читателей. Это будет  эксклюзивный материал - я получил приглашение для тестирования новейшего сервиса Cloud Computing от компании Aptana. Ранее я уже писал один обзор, но это был вольный перевод записи в блоге одного из западных разработчиков, теперь же я могу самостоятельно попробовать все тонкости этой платформы и спешу поделится этой информацией с вами, уважаемые читатели.

И так, приступим. Для начала работы нам необходимо обновить (или установить, если не было) версию Aptana IDE. При этом учтите, что сейчас последняя версия, доступная даже в профессиональным подписчикам, 1.1, но для работы с Cloud нужен особый релиз следующей версии, который доступен по другому адресу, который вам после регистрации сообщат вместе с логином и паролем для доступа.

После установки обновления у нас получается Aptana IDE 1.2, а в меню добавляется несколько новых пунктов. Сперва посмотрим, что нового в этом релизе самой среды, думаю осле тестирования она будет перенесена в общедоступную ветку.

Существенно обновлён центр управления  - страница Aptana Home. Теперь оттуда можно просмотреть все установленные плагины, посмотреть список доступных для установки, управлять сервером Jaxer, если вы его установили и используете. Ну и последним пунктом появилась панель управления облаком.

Кстати, в новой версии включён клиент для SVN, который может применяться для работы с проектами, размещёнными в Cloud. Напрямую с начальной страницы вы можете выбрать любой из проектов для деплоинга его на сервера Aptana. У меня есть два текущих проектов - один рабочий, второй экспериментальный, и он как раз достаточно требовательный к ресурсам, поэтому именно его я решил развернуть на Aptana Cloud - так можно будет протестировать работу сервиса на типичных стартаповских решениях с высокой нагрузкой. Сразу оговорюсь, что проект использует стандартные технологии - РНР, часть из Zend Framework, в основе серверной части лежит ezComponents, ну и веб-сервер Apache и СУБД MySQL. В проекте также использован РНР порт поискового механизма Lucene (о нем я как раз собираюсь написать одну из следующих статей), что и является самым ресурсоёмким компонентом проекта, и именно его я хотел бы протестировать.

После выбора проекта открывается пошаговый мастер развёртывания, который сконфигурирует ваше облако и перенесёт проект. Рассмотрим его работу. Первым шагом нас просят выбрать имя проекта, которое будет одновременно и адресом для доступа, вида http://ИмяПроекта.aptanacloud.com. Для тестирования этого вполне хватает, однако сообщается, что все инстансы имеют статический адрес, поэтому вы сможете привязать любой произвольный домен к вашему проекту в Cloud-е.

Вторым шагом является выбор вашего тарифного плана. Нам предлагается несколько планов, начиная от младшего (256 Мб RAM, 5 Гб диск) и до самого большого - 2 Гб RAM и 25 Гб диска. Во всех тарифных планах включён трафик в размере 10 Тб в месяц (ну это, в принципе, можно считать неограниченным), а также динамически выделяемая процессорная мощность, до 95% мощности 8-ми процессорного сервера (подробнее про серверное оборудование не сообщается). Цены достаточно низкие, впрочем, думаю после окончания тестирования они могут быть пересмотрены, поэтому конкретика сейчас не так важно. В пакет может входить также круглосуточная поддержка с временем реакции в 1 час вне зависимости от времени (стандартно - в бизнес-время) - это будет стоит ещё 0.99 USD/сутки.

Также стандартно в число пользователей пакета входит  один разработчик и один администратор, если вам необходимо неограниченное число пользователей, это обойдётся ещё в  0.33 USD/сутки.

Я для тестирования попробовал выбрать тарифный план с 1 Гб оперативной памяти, так как для хорошего тестирования серьёзных скриптов это будет как раз в меру (хотя памяти никогда не бывает мало). За участие в тесте денег пока не взимают, всем тестерам выдали специальные служебные данные кредитной карточки, которые нужно вводить, поэтому можно попробовать "пошиковать".  Мой тарифный план без дополнительных опций стоит 125 USD  в месяц, что сравнимо с более-менее аналогичным выделенным сервером (но без такой мощности CPU и трафика). Эх, и здесь первое разочарование - для теста дают только самый базовый тарифный план. Ну что же, значит будем так тестировать, потом, когда сервис заработает, попробуем и остальные.

Далее нам придётся регистрироваться или использовать уже существующий аккаунт, впрочем, там некоторая странность. Я как уже пользователь продуктов компании, должен был получить доступ по своим данным, так как у меня профессиональная лицензия на Aptana IDE, но система отказывалась принимать логин и пришлось его регистрировать заново - видимо там пока все же раздельная регистрация. Далее нас просят ввести данные кредитной карточки и другие данные для биллинга. Жаль, видимо не будет пока возможностей расплачиваться какими-либо онлайновыми платёжными системами, но для таких случаев можно один раз купить предоплаченную дебетовую карту и платить с неё. К сожалению, ещё раньше, при попытке купить лицензии на IDE я и мои коллеги столкнулись с тем, что карточки, эмитированные нашими банками упорно не хотят проходить в биллинге, так что видимо, это будет лучшим решением.

Далее мы соглашаемся с лицензией. Если вы внимательно присмотритесь, то обнаружите, что сейчас настоящего соглашения нет, используется стандартная "рыба" на латыни - вот здесь об этом тексте подробнее. Ну и подтвердите, если все правильно заполнили. Теперь можно переходить к работе с облаком - процесс создания вашего аккаунта и настройки в нем необходимого ПО происходит автоматически после согласия и достаточно быстро - несколько десятков секунд и все готово.

Вы можете сразу перейти к загрузке файлов вашего проекта или же перейти в панель управления сервисом. Мы сначала загрузим проект, а потом исследуем панель управления. Для деплоинга используется встроенный механизм Smart Sync, однако заявлено, что можно использовать обычный SVN, который входит в список развёрнутых на площадке сервисов. При достаточно большом количество файлов в проекте наблюдаются существенные тормоза при синхронизации и исключении больших каталогов с файлами из списка подлежащих передаче. Впрочем это не такая частая процедура, поэтому набираемся терпения. На эту операцию у меня ушло несколько часов, отчасти из-за избыточного количества компонент из ezComponents, которые я включил в дистрибутив, но пока не использовал.

Пока идёт пересылка файлов проекта, мы рассмотрим панель управления нашим хостингом. На основной панели мы имеем данные монитора производительности и потребления ресурсов нашим проектом, а также основные параметры тарифного плана. Полезными будут быстрые ссылки для доступа к основным функциям - доступ к SVN-репозитарию, синхронизация файлов. Здесь же можно руководить созданием резервных копий сайта. Оказалось, что нам выдаётся немного больше пространства - почти 7 Гб, однако 1.85 Гб уже занято од системные файлы, поэтому пользователю доступно как раз 5 Гб.  В параметрах обнаружилось, что по умолчанию нам доступно 1/16 CPU, видимо, если считать, что каждый инстанс работает на 8-ми процессорном сервере, скорее всего с двухядерными процессорами, то мы получаем минимально в своё распоряжение одно ядро. Неплохо.

На вкладке нам доступны все те самые настройки и выбор тарифного плана, что и на старте, думаю, это означает, что мы сможем динамически изменять свой тарифный план без какой-либо остановки работы сервера, что позволит гибко масштабировать сервис исходя из потребностей, однако пока эта опция недоступна, да и производится перенастройка вручную.

Сервис изначально ориентирован на командную работу, и на вкладке Team мы можем приглашать других пользователей (по Aptana ID или просто по E-mail) и назначать им роли - администратора или разработчика. Админ имеет более широкие полномочия по изменению настроек сервера и может приглашать других пользователей, разработчик же может работать с самим проектом и изменять файлы, а также получает доступы к развёрнутым сервисам.

В панель управления интегрирована и служба статистики Google Analytics, однако пока интерфейс модуля очень прост и он все ещё в разработке. Если у вас уже есть аккаунт в этой службе, вы можете просматривать сводную статистику по сайту.

Последний раздел панели управления - управление сервисами и логами. Вы можете включать и отключать в любое время веб-сервер Apache (используется версия 2.2.8), сервер приложений Jaxer (его,к стати, можно переустанавливать, в отличие от остальных) и сервер баз данных MySQL (используется 5.0.51). Здесь же для каждого сервиса можно просмотреть логи, причём их можно как открыть на удалённом хосте при помощи FTP или же просмотреть онлайн. Для базы данных доступны сразу сервисы управления и работы со структурой (DB Explorer, который является плагином к самой среде Aptana и вообще Eclipse). Для администрирования доступен phpMyAdmin, расположенный на хостинге. При этом обнаружилось, что для каждого проекта создаётся ещё один домен вида private-имя_проекта.aptanacloud.com, на котором осле аутенфикации можно получить доступ к системе управления БД. На этом же сервере MySQL размещены и служебные базы данных мониторинга и базы для сервера Jaxer. Мне кажется, что такое решение в случае высоконагруженных проектов, требовательных к базе данных, может быть не самым оптимальным, однако это требует более объёмного тестирования и, видимо, зависит от архитектуры. Интересное замечание про RAM - в минимальном плане её вам выделят 256 Мб, из которых будет сразу занята примерно половина - если вы запустите Apache и MySQL (Jaxer видимо стартует по умолчанию и отключить его невозможно, даже если он не используется в проекте), РНР же сконфигурирован на использование только 32 Мб памяти.

Достаточно развиты и возможности оповещения администратора о всех действиях над облаком. Поддерживается оповещение по почте, SMS и jabber, а перечень всех действий, отслеживаемых системой, достаточно объёмный и содержит все необходимые параметры, так что вы можете быть спокойны на счёт работы вашего проекта - при любых проблемах или просто значимых происшествиях вы будете немедленно информированы.

Что немного ограничивает - так это отсутствие РНР-акселераторов, во многих проектах их функциональность (и не только как просто акселератора) очень пригодилась бы, да и нагрузку с серверов сняло бы. Думаю, в коммерческой версии список модулей РНР будет расширен, и там появиться APC или XCache.

На этом я буду заканчивать своё описание работы с Aptana Cloud. Пока будет длится тестовый период я попытаюсь попробовать на этом хостинге свои проекты и если будет что-то интересное, обязательно сообщу.

Своё виденье самого проекта и его перспектив я уже описывал в предыдущем материале, сейчас могу лишь добавить, что выводы остались в силе. С одной стороны мы имеем условия намного лучше, чем в обычном виртуальном хостинге, но частично ограничены управлением и конфигурированием своего сервера, так что если ваш проект требует детальной настройки ОС и окружения, вам все же лучше взять VDS. В то же время такой хостинг удобнее тем, что гибко масштабируемый  и позволяет оплачивать только необходимый объем ресурсов, динамических их перераспределяя, при чём он особенно выгоден в плане процессорной мощности и трафика, но если вы требовательные к объёму памяти, немного поискав, за те же деньги вы, скорее всего, найдёте выделенный сервер (хотя такое предложение ещё нужно будет поискать).

  1. 28 июня 2008 в 01:48 | #1

    Отличный обзор 🙂

  2. 30 июня 2008 в 10:07 | #2

    Ничего себе у них системка… Серьезно 🙂 А поддержку пхп в aptana они не собираются улучшать не в курсе ?

  3. 30 июня 2008 в 12:04 | #3

    ну улучшают потихоньку, да и не обязательно использовать аптану с ее родным РНР модулем, вполне работает PHPEclipse Apatana

  4. 3 июля 2008 в 11:48 | #4

    Интересная штучка. Жаль только что нет поддержки Django и врятли будет.

  5. 4 июля 2008 в 07:01 | #5

    Спасибо за обзор. Я недавно начал работать с Aptana Studio и пока очень доволен.

  6. 8 июля 2008 в 11:39 | #6

    В aptana перестали аплоудиться файлы по фтп с компа на сервер. Файлы php и html. Заливаются пустыми просто. Кто знает в чем может быть дело ?

  7. 8 июля 2008 в 19:10 | #7

    На счет поддержки Django обидно…

  8. 8 июля 2008 в 22:52 | #8

    камень, ну и хорошо 🙂 для этого есть Google App Engine! Ведь не Phython-ом единым!

  9. 12 июля 2008 в 21:44 | #9

    Благодарю за новость. Только только начал пользоваться таким средством, и пока мало чего могу о нем сказать, но результаты пока мне нравяться.

  10. 26 июля 2008 в 22:31 | #10

    Некоторое время не мог разобраться с этой системой, а сейчас меня вполне устраивает результат

  11. 14 августа 2009 в 23:08 | #11

    камень :
    На счет поддержки Django обидно…

    Может стоит написать разработчикам

Комментирование отключено.
Developers.org.ua