Компания Bitrock в своем сервисе BitNami Cloud Hosting (BCH) объединяет собственный каталог интегрированных веб-приложений с открытым исходным кодом и возможностями Amazon Web Services, предоставляя организациям и разработчикам простые средства настройки и хостинга этих приложений.
В прошлом я использовал BitNami для ускорения запуска популярных веб-приложений с открытым исходным кодом. Комплект содержит все компоненты сервера, среду исполнения и код, необходимые для применения таких приложений, как Alfresco или SugarCRM. Различные его версии работают под управлением Linux, Windows или OS X, а также готовых к использованию образов виртуальных машин.
Во время тестирования нового сервиса, который стал доступен в феврале, я пришел к выводу, что интеграция с Amazon прекрасно дополняет комплекты приложений BitNami.
Однако важнейший компонент каталога BitNami — поддержка многих платформ — в настоящее время отсутствует в сервисе BCH. Сегодня сервис предлагает в качестве хостовой ОС только Ubuntu Linux, а для хостинга — Amazon EC2 (Elastic Compute Cloud). По сообщению компании Bitrock, работа по обеспечению поддержки Windows и дополнительных облачных сервисов, включая Microsoft Azure, еще продолжается.
Наверное, самый серьезный недостаток сервиса и BitNami заключается в том, что ради многоплатформенности они отклоняются от соглашений, принятых в той операционной системе, под управлением которой работают. Например, под Ubuntu приложения устанавливаются в разные каталоги и работают не с теми скриптами, которые использовались бы, если бы они устанавливались с помощью системы пакетов ПО Ubuntu.
Надо признать, что подобные различия в конфигурации встречаются не так уж редко. Многие веб-приложения с открытым исходным кодом, например Wordpress, достигли такой степени зрелости, что большинство задач по администрированию и настройке могут решаться с помощью административных веб-консолей.
В прейскуранте имеется семь уровней и подуровней, каждый из которых предусматривает различное количество управляемых серверов и учетных записей в облаке, разные размеры экземпляров EC2. Базовый уровень составляет 24 долл. в месяц (не более трех экземпляров малого или сверхмалого размера и одна учетная запись).
На противоположном конце таблицы цен находятся корпоративная система (50 экземпляров любого размера и 10 учетных записей). Она стоит 1199 долл. в месяц.
Хотелось бы, чтобы Bitrock поэкспериментировала с ценами на основе надбавки к стоимости хостинга Amazon EC2. Тогда плата будет расти с расширением использования сервиса. Такой вариант предлагает провайдерам Amazon. Пользователи BitNami могли бы сэкономить время, перестав гадать, сколько экземпляров и какого размера им потребуется.
Облачный хостинг в лаборатории
Я создал учетную запись BCH на сайте http://app.bitnamihosting.com и настроил ее на доступ к двум различным учетным записям Amazon Web Services. Выбрать одну из них при создании или восстановлении экземпляров BCH было несложно.
Создание экземпляра сервера начинается с выбора для инсталляции одного или нескольких из 21 веб-приложения в каталоге BitNami, в том числе на базе Java, PHP или Ruby. Тут я мог задать полномочия администратора по умолчанию и выбрать для своего сервера облачную учетную запись и размер экземпляра.
BCH позволяет создать экземпляр сервера на базе 32- или 64-разрядной версии Ubuntu Linux 10.04 и выбрать размер ассоциированного с сервером тома Amazon EBS (Elastic Block Store).
Прекрасная идея — интегрировать EBS отдельно, поскольку данные из экземпляров EC2 обычно по умолчанию не сохраняются. Примерно таким же образом я мог ассоциировать статичный адрес, предоставленный сервисом Amazon Elastic IP, чтобы мой сервер после перезагрузок оставался доступен по одному и тому же адресу.
“Демон” создания сервера производит некоторые проверки, чтобы экземпляры сервера могли гарантированно обеспечить работу выбранных приложений. Например, когда я создал сервер Alfresco с объемом хранения 2 Гб, веб-интерфейс BCH предложил выбрать не менее 2,6 Гб.
Я ждал, что после запуска сервера смогу через веб-интерфейс добавлять и удалять приложения BitNami. Но сделать это с помощью административной консоли мне не удалось. Пришлось подключиться к серверу и инсталлировать дополнительные приложения из командной строки.
Мои тестовые экземпляры запускались за несколько минут, а конфигурирование и использование экземпляра Wordpress были ничем не примечательны.
Вернувшись к консоли BCH, я произвел резервное копирование виртуальных экземпляров по запросу и по расписанию, затем восстановил их на новых виртуальных машинах. BCH использует такую возможность в функции resize, которую я применял для изменения размера тома хранения или экземпляра сервера.
После того как я изменил указанные показатели, сервис произвел автоматическое резервное копирование моего сервера, остановил его, запустил экземпляр нового размера и восстановил содержание резервной копии на новой виртуальной машине.
При попытке уменьшить объем хранения я столкнулся с трудностями. Такая возможность не предоставляется, но консоль с ее нынешней логикой проверки ошибок об этом не предупреждает.
BCH включает панель для базового мониторинга виртуальных экземпляров. Я мог видеть загрузку ОЗУ, процессора и системы хранения, а также подтвердить статус сервисов Apache и MySQL на своем экземпляре сервера. Кроме того, панель показывает приблизительную стоимость хранения и обработки на серверах, находящихся под управлением BCH.
Наконец, BCH позволяет использовать серверы по расписанию. Например, я мог настроить виртуальную машину на включение в рабочие часы на протяжении недели, чтобы не платить за то время, когда использование машины маловероятно.
Хотелось бы, чтобы BCH объединила возможности изменения размеров и работы по расписанию, позволив устройству использовать различный объем ресурсов в соответствии с ожидаемой нагрузкой. Еще лучше это сочетание дополнить средствами мониторинга, чтобы изменение размеров можно было производить в зависимости от реальной нагрузки, а не ожидаемой.