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

    Приветствую всех читателей. Это будет эксклюзивный материал — я получил приглашение для тестирования новейшего сервиса 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 (о нем я как раз собираюсь написать одну из следующих статей), что и является самым ресурсоёмким компонентом проекта, и именно его я хотел бы протестировать.

    После выбора проекта открывается пошаговый мастер развёртывания, который сконфигурирует ваше облако и перенесёт проект. Рассмотрим его работу. Первым шагом нас просят выбрать имя проекта, которое будет одновременно и адресом для доступа, вида ИмяПроекта.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. В то же время такой хостинг удобнее тем, что гибко масштабируемый и позволяет оплачивать только необходимый объем ресурсов, динамических их перераспределяя, при чём он особенно выгоден в плане процессорной мощности и трафика, но если вы требовательные к объёму памяти, немного поискав, за те же деньги вы, скорее всего, найдёте выделенный сервер (хотя такое предложение ещё нужно будет поискать).

    Комментарии 17

      +1
      >(хотя памяти никогда не бывает мало)
      похоже на опечатку.
        0
        Спасибо, довольно интересно. Пока только не понятно, чем он лучше VE/dedicated на том же masterhost
          0
          ну наверное тем, что они не висят днями напролет в летний период, как мастерхост, ввиду отсутствия мощностей по охлаждению и питанию. а в остальном - ощущение "сферического в вакууме" от данного предложения меня лично не оставляет.
          0
          Совместим с perl?
          Судя по инфе на офф сайте, то нет. Ну разве, что, так же как и в блокноте...
            0
            что значит совместим с перл? да, IDE не поддерживает перл :) ну и что?
              0
              собственно вы ответили на мой вопрос) просто подумывал его заюзать...
            0
            тоже на днях поигрался.
            ощущения очень и очень приятные!

            спасибо за обзор.
              0
              Поясните в чом отличие от VPS, я из описания не увидил ничего инновациооного. Только 'более другой' интерфейс чем
              у Virtuozzo.
                0
                Насколько я понимаю, разница в масштабируемости - начав с 1/16 сервера, можно дорасти до кластера, не меняя принципиально архитектуру приложения и не занимаясь настройкой серверов каждый раз.
                В принципе, виртуализация - это одна из технологий, входящих в Cloud Computing, а сам термин Cloud Computing - просто обобщающее понятие.
                  0
                  Но как я понял, он все же не может _ПРОЗРАЧНО_ маштабироватся на N физических серверов, скажем, что бы выбрать 17CPU. Т.е. cloud в оригинальном смысле тут и не пахнет, те миграции _сервисов_ нет. Выводом uname -a не поделитесь с такой ноды?
              • НЛО прилетело и опубликовало эту надпись здесь
                  0
                  простите, а что вы ставили то??
                  1. А что должен требовать?? Eclipse, на основе которого и Aptana, и последняя Zend Studio - они Java приложения
                  2. Это явно проблема конкретной конфигурации.
                  3. А как он должен запускаться то? И почему, если это просто IDE. Хотя в последних версиях да появился встроеный сервер, но это так, для простых вещей.
                  4. Да, только отдладчика нет, хотя это не всегда критично.

                  P.S. Думаю, вы не забыли, что зендовский продукт слегка коммерческий ;)
                  • НЛО прилетело и опубликовало эту надпись здесь
                      0
                      это как же? Есть две редакции, Community который бесплатный и даже опенсорс, и Про версия, которая да, платная, и позволяет быстрее получать все обновления и содержит пару не принципиально важных компонент (ну кроме, может быть, отладчика под IE).
                  0
                  а клауд то в каком месте?
                    0
                    "Aptana Cloud is architected to complement Cloud infrastructure providers like Amazon, Google, Joyent and others. To get started we've selected Joyent who serves up some of the largest of all Facebook apps."

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

                    А вообще вся ваша статья сводиться к "пхп запускается". ну круто, кто бы сомневался. о том что действительно может быть интересно ни слова. а букв при этом много.
                      0
                      я же не могу за каждого знать, что кому интересно. все свои мысли и выводы - кому и как - я сделал здесь и в предыдущих материалах.

                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                    Самое читаемое