Планирование перехода на облачную обработку данных

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

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

Вопросы лицензирования программного обеспечения

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

Во многих современных облачных средах вы платите за ресурсы, используя такие единицы измерения ресурсов, как CPU-час. Например, самая дешевая из виртуальных машин в облаке Amazon стоит

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

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

Вопросы лицензирования программного обеспечения

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

Во многих современных облачных средах вы платите за ресурсы, используя такие единицы измерения ресурсов, как CPU-час. Например, самая дешевая из виртуальных машин в облаке Amazon стоит $0,10 за каждый час пользования экземпляром. Если эта виртуальная машина проработает 10 часов, а затем будет остановлена, вам потребуется заплатить за ее использование всего $1,00 — даже если это будет единственным фактом вашего пользования облаком Amazon в течение месяца.

В реальной жизни вы можете пользоваться, например, таким рабочим сценарием:

± начиная с полуночи и до 9 часов утра ваше приложение работает на двух серверах приложений (два сервера приложений используются для обеспечения избыточности);

± с 9 часов утра и до 17:00 вы запускаете еще 6 дополнительных серверов приложений, чтобы удовлетворить требованиям по нагрузке в рабочие часы;

± в вечернее время, начиная с 17:00 и до полуночи вы используете четыре сервера приложений, чтобы сэкономить на выплатах, но, тем не менее, удовлетворять потребности в ресурсах.

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

К сожалению, не все поставщики ПО предоставляют лицензионные условия, которые соответствовали бы вашей оплате за пользование облачной инфраструктурой. Традиционные лицензии на ПО чаще всего основываются на количестве процессоров. Организация, которая использует 10 серверов приложений, должна оплатить 10 лицензий на серверное ПО — даже если 5 из этих 10 серверов выключаются на ночь.

Таким образом, при переходе на облачные вычисления вам необходимо прояснить условия лицензирования вашего ПО, в частности:

± поддерживает ли ваша лицензия расчет затрат на основе времени использования (CPU-час, количество пользователей и т. д.)?

± поддерживает ли само ПО работу в виртуальных средах?

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

С точки зрения модели лицензирования, идеальным для использования в облачной среде является ПО на основе открытого кода (Open Source). Фактически именно гибкость модели лицензирования Open Source и сделала возможной реализацию облака Amazon. Если вы сможете полностью ликвидировать вопросы лицензирования при развертывании ваших приложений в облачной инфраструктуре, вы можете сконцентрироваться на других вопросах перехода на использование облачной обработки данных. Хотя большинство решений на основе открытого кода (например, Apache и большинство дистрибутивов Linux) предоставляют вам полную свободу действий, с вопросами лицензирования вам все же придется столкнуться, если вы приобретаете поддерживаемые версии программного обеспечения Open Source, например Red Hat Enterprise Linux или MySQL Enterprise. К счастью, схемы лицензирования такого ПО вполне дружественны по отношению к использованию в облачной инфраструктуре.

Если не брать в расчет модель лицензирования Open Source, которая наилучшим образом подходит для облачных вычислений, то второй будет модель, в соответствии с которой плата взимается за CPU в час. По мере того как облачная модель входит в обиход, все большее и большее количество поставщиков предлагают услуги с почасовой оплатой. Например, Microsoft, Valtira, Red Hat, Vertica, Sun, а также многие другие компании уже приняли условия почасовой оплаты за CPU и довольно неплохо поддерживают облачную обработку данных. Oracle тоже рекламирует свою доступность в облачных вычислениях, но вот, к сожалению, они все равно придерживаются своей устаревшей модели лицензирования, которая направлена на поддержание традиционных условий.

ПО, схема лицензирования которого основывается на количестве пользователей, тоже может адекватно работать в облачной среде. Основная сложность с таким ПО часто заключается в том, как оно производит проверку условий лицензирования. Вы можете подвергаться риску нарушения лицензионного соглашения, лицензия может быть "привязана" к конкретным MAC- или IP-адресам или система управления лицензиями может оказаться недостаточно интеллектуальной для того, чтобы поддерживать облачную среду, или необоснованно лишать вас возможности масштабирования вашей системы в облаке.

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

Некоторые программы, схемы лицензирования которых основаны на количестве процессоров, требуют проверки (валидизации) на специальном сервере лицензирования. Любое ПО, в котором налагается такое требование, в облачной среде может оказаться неработоспособным, если оно не является достаточно интеллектуальным, чтобы "на лету" распознать замену физического сервера лицензирования на виртуальный. Даже если такое ПО и может распознать замену, вам все равно потребуется убедиться в том, что сервер лицензирования позволит вам запустить то количество серверов, которое вам требуется.

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

1 Впрочем, этот сценарий еще не самый худший. В наихудшем случае вы имеете дело с ПО, которое явным образом запрещается использовать в облаке или в виртуализованных средах.

Источник: Риз Дж., Облачные вычисления: Пер. с англ. — СПб.: БХВ-Петербург, 2011. — 288 с.: ил.


,10 за каждый час пользования экземпляром. Если эта виртуальная машина проработает 10 часов, а затем будет остановлена, вам потребуется заплатить за ее использование всего ,00 — даже если это будет единственным фактом вашего пользования облаком Amazon в течение месяца.

В реальной жизни вы можете пользоваться, например, таким рабочим сценарием:

± начиная с полуночи и до 9 часов утра ваше приложение работает на двух серверах приложений (два сервера приложений используются для обеспечения избыточности);

± с 9 часов утра и до 17:00 вы запускаете еще 6 дополнительных серверов приложений, чтобы удовлетворить требованиям по нагрузке в рабочие часы;

± в вечернее время, начиная с 17:00 и до полуночи вы используете четыре сервера приложений, чтобы сэкономить на выплатах, но, тем не менее, удовлетворять потребности в ресурсах.

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

К сожалению, не все поставщики ПО предоставляют лицензионные условия, которые соответствовали бы вашей оплате за пользование облачной инфраструктурой. Традиционные лицензии на ПО чаще всего основываются на количестве процессоров. Организация, которая использует 10 серверов приложений, должна оплатить 10 лицензий на серверное ПО — даже если 5 из этих 10 серверов выключаются на ночь.

Таким образом, при переходе на облачные вычисления вам необходимо прояснить условия лицензирования вашего ПО, в частности:

± поддерживает ли ваша лицензия расчет затрат на основе времени использования (CPU-час, количество пользователей и т. д.)?

± поддерживает ли само ПО работу в виртуальных средах?

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

С точки зрения модели лицензирования, идеальным для использования в облачной среде является ПО на основе открытого кода (Open Source). Фактически именно гибкость модели лицензирования Open Source и сделала возможной реализацию облака Amazon. Если вы сможете полностью ликвидировать вопросы лицензирования при развертывании ваших приложений в облачной инфраструктуре, вы можете сконцентрироваться на других вопросах перехода на использование облачной обработки данных. Хотя большинство решений на основе открытого кода (например, Apache и большинство дистрибутивов Linux) предоставляют вам полную свободу действий, с вопросами лицензирования вам все же придется столкнуться, если вы приобретаете поддерживаемые версии программного обеспечения Open Source, например Red Hat Enterprise Linux или MySQL Enterprise. К счастью, схемы лицензирования такого ПО вполне дружественны по отношению к использованию в облачной инфраструктуре.

Если не брать в расчет модель лицензирования Open Source, которая наилучшим образом подходит для облачных вычислений, то второй будет модель, в соответствии с которой плата взимается за CPU в час. По мере того как облачная модель входит в обиход, все большее и большее количество поставщиков предлагают услуги с почасовой оплатой. Например, Microsoft, Valtira, Red Hat, Vertica, Sun, а также многие другие компании уже приняли условия почасовой оплаты за CPU и довольно неплохо поддерживают облачную обработку данных. Oracle тоже рекламирует свою доступность в облачных вычислениях, но вот, к сожалению, они все равно придерживаются своей устаревшей модели лицензирования, которая направлена на поддержание традиционных условий.

ПО, схема лицензирования которого основывается на количестве пользователей, тоже может адекватно работать в облачной среде. Основная сложность с таким ПО часто заключается в том, как оно производит проверку условий лицензирования. Вы можете подвергаться риску нарушения лицензионного соглашения, лицензия может быть "привязана" к конкретным MAC- или IP-адресам или система управления лицензиями может оказаться недостаточно интеллектуальной для того, чтобы поддерживать облачную среду, или необоснованно лишать вас возможности масштабирования вашей системы в облаке.

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

Некоторые программы, схемы лицензирования которых основаны на количестве процессоров, требуют проверки (валидизации) на специальном сервере лицензирования. Любое ПО, в котором налагается такое требование, в облачной среде может оказаться неработоспособным, если оно не является достаточно интеллектуальным, чтобы "на лету" распознать замену физического сервера лицензирования на виртуальный. Даже если такое ПО и может распознать замену, вам все равно потребуется убедиться в том, что сервер лицензирования позволит вам запустить то количество серверов, которое вам требуется.

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

1 Впрочем, этот сценарий еще не самый худший. В наихудшем случае вы имеете дело с ПО, которое явным образом запрещается использовать в облаке или в виртуализованных средах.

Источник: Риз Дж., Облачные вычисления: Пер. с англ. — СПб.: БХВ-Петербург, 2011. — 288 с.: ил.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете промотать до конца и оставить ответ. Pinging в настоящее время не допускается.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100