Новые средства для кодирования приложений, которые предлагают разработчикам Salesforce.com, Amazon, Google и некоторые другие поставщики платформ как сервисов (Platform as a Service, PaaS), позволяют “облачному” провайдеру не только масштабировать такое ПО и организовывать его хостинг, но и продавать размещенные на своих ресурсах приложения.
По этому пути идет и компания Etelos, предоставляющая платформы в виде сервисов. В отличие от других инфраструктур подобного рода, заставляющих разработчиков для вывода их приложений “в облака” переписывать отдельные фрагменты кода, инструменты Etelos избавляют создателей ПО от такой необходимости. Стандартные приложения категории LAMP (базирующиеся на стеке Linux, Apache, MySQL и PHP/Python/Perl) в данной среде можно делать “облачными”, модифицируя их в минимальной степени, а иногда и вовсе не внося в приложение никаких корректив.
От традиционных сервисов по хостингу LAMP-приложений, таких как у фирмы Dreamhost, решение Etelos выгодно отличается тем, что позволяет продавать Web-приложения, масштабировать их и управлять процессом лицензирования. Есть в портфеле Etelos и ряд других интересных сервисов (я, правда, их еще не тестировал), обеспечивающих совместную работу нескольких программ с одними и теми же данными и автономную эксплуатацию приложений. На основании же собственного опыта общения с платформой Etelos советую внимательно присмотреться к предложениям этой фирмы тем компаниям и подразделениям, которые хотят обеспечить беспроблемный и гибкий хостинг приложений с открытым кодом или Web-приложений собственной разработки.
Знакомство с Etelos
Чтобы продемонстрировать возможности своей платформы, Etelos продает предоставляемые в виде услуги версии нескольких популярных Web-приложений, включая Mediawiki, Wordpress и Sugar CRM. Я лично для знакомства с новинкой выбрал Mediawiki, которое используется у нас в лаборатории в автономном режиме, и вынес его “в облака”.
Mediawiki to Go с дисковым пространством в 5 Гб (дополнительные объемы можно приобрести по цене 0,34 долл. за 1 Гб) обходится клиенту Etelos в 4,95 долл. в месяц. Как и следовало ожидать от версии “по запросу”, установка этого приложения предельно проста. Мне оказалось достаточно создать учетную запись на Web-сайте Etelos и выбрать на прилавке фирмы сервис Mediawiki. Пару минут спустя в мой почтовый ящик пришло приглашение с новым адресом сайта wiki и реквизитами для регистрации на нем. Здесь же я нашел указатель на свою личную среду разработки Etelos Development Environment. Эта Web-консоль предназначена для доступа и редактирования файлов и папок, которые образуют рабочую среду пользователя и позволяют администрировать его экземпляр базы данных. Из этой же консоли открывается доступ к другим функциям Etelos.
В своей среде Mediawiki я нашел СУБД PostgreSQL, администрирование которой производится с помощью популярного Web-инструментария phpPgAdmin. Папка с кодом моего проекта по умолчанию находится в версионном репозитории, что помогает отслеживать варианты файлов по мере их редактирования, которое можно производить через Web-интерфейс, а также с помощью включенного в сервис интерфейса WebDAV или клиентского ПО на локальном компьютере пользователя.
Правда, поскольку из-за ошибки в программе Ubuntu Linux пока не поддерживает в папке WebDAV шифрования SSL, для управления своим кодом мне пришлось использовать локальное клиентское ПО. С его помощью я пометил удаленные файлы на ноутбуке и настроил систему так, что все изменения сначала вносились в код локально, а на мою страницу Etelos передавались по команде.
Первая проблема возникла у меня при попытке инсталлировать в свою онлайновую копию программы расширение Semantic Mediawiki. Это не удалось сделать, так как последняя версия приложения не поддерживает PostgreSQL.
Основной базой данных в Mediawiki является MySQL, которая используется в большинстве процессов развертывания и разработки. Таким образом, наилучшим выбором для данного онлайнового сервиса является именно эта СУБД. Тем не менее возникшее несоответствие дало мне хорошую возможность познакомиться с вариантом СУБД MySQL из комплекта разработчика Etelos, которая пока предоставляется бесплатно.
Зарегистрировать учетную запись разработчика оказалось ничуть не сложнее, чем заказать сервис Mediawiki. В своем новом аккаунте я нашел те же варианты доступа и точно такой же Web-инструментарий, что и в самом приложении. Познакомиться с ними помогает демонстрационный видеоролик, размещенный по адресу www.etelos.com/videos/webinars/eteloslampdemo.swf.
Etelos утверждает, что LAMP-приложения можно размещать на ее PaaS-платформе с минимальными изменениями кода, а то и вообще без них, и мой опыт установки Mediawiki полностью подтверждает это. Чтобы инсталлировать нужное приложение, я ввел код Mediawiki вместе с подверсией в свою учетную запись разработчика, зашел по Web-адресу своей новой учетной записи и занялся конфигурированием новой копии с помощью Web-интерфейса настройки этой программы. На закладке info окна EDE нужно указать название базы данных, имя пользователя и пароль копии MySQL, после чего можно скорректировать разрешения в каталоге привилегий Mediawiki так, чтобы ничто не мешало выполнять сценарий настройки.
Когда все это было проделано, расширение для Semantic Mediawiki установилось без сучка и задоринки.