Как оптимизировать затраты на облачную инфраструктуру?

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

Эффективное использование ресурсов актуально в любом деле: и при производстве фанеры, и в офисном делопроизводстве, и при эксплуатации компьютерной техники.

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

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

Мощность компьютерной инфраструктуры зависит от разных параметров. Например, можно изменить число процессоров виртуальной машины, объём её оперативной памяти, число и размер жёстких дисков, а можно, сохранив характеристики отдельных машин, увеличить их число в пуле (если таковой имеется). О способах масштабирования рассказано в нашей статье «Масштабирование в облаке».

Однако нагрузка на компьютерную инфраструктуру предприятия может не только увеличиваться, но и уменьшаться.

Прямые потери

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

Если компьютерная инфраструктура предприятия построена на собственном «железном» оборудовании, с текущей нерациональностью ничего не поделаешь — оборудование уже куплено, оно где-то стоит и его нужно использовать.

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

Но возможность «возвращать» незадействованную мощность имеется в компьютерном облаке, в котором можно выключить виртуальную машину или изменить её характеристики в любой момент. Например, облако 1cloud тарифицирует свои услуги с интервалом в 10 минут. Это означает, что вам придётся платить только за нужные вам ресурсы. Конечно, если вы не забыли вовремя отключить ненужные. В противном случае, возникнут потери от оплаты неиспользуемых ресурсов.

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

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

У пользователей 1cloud есть два способа управлять этими характеристиками: панель управления для ручных корректировок и прикладной интерфейс (API) для автоматизированного взаимодействия.

Косвенные потери

Однако опасность потерь не ограничивается лишь оплатой неиспользуемых ресурсов. Потери могут возникнуть совсем по другой причине.

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

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

Да, конечно, такие задержки могут возникнуть из-за слабого интернет-канала клиента. — А что если нет? Что если с текущей нагрузкой не справляется ваша инфраструктура, и с задержками сталкиваются все посетители вашего сайта?

Фактическая нагрузка на публичный сайт никогда не бывает стабильной. Её колебания могут быть связаны с днями недели, с временем суток, с праздниками и т. п.

Очень резко нагрузка может возрасти, например, после публикации рекламы. — Чем большую аудиторию она охватила, чем привлекательнее ваше предложение, тем больше посетителей придёт на ваш сайт и, соответственно, повысит нагрузку на него.

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

Что следует сделать при планировании кампании? — Во-первых, постараться провести её не одномоментно, а распределить на какой-то, достаточно продолжительный, календарный или временно́й период. Заодно, это оптимизирует и работу ваших сотрудников, нагрузка на которых будет меняться более плавно. Во-вторых, своевременно увеличить производительность вашей компьютерной облачной инфраструктуры, чтобы все посетители вашего сайта были обслужены на высшем уровне.

Как их сократить

Мы уже выяснили, что причиной напрасных расходов могут быть как переизбыток производительности, так и её недостаток.

График

Для обеспечения оптимального соотношения производительности и нагрузки следует применять два подхода: планирование и мониторинг. Первый — позволит не допустить нежелательной ситуации, второй — вовремя на неё прореагировать.

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

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

Наличие прикладного интерфейса (API) в облаке 1cloud позволяет автоматизировать управление вычислительными ресурсами. Например, можно включать и выключать виртуальные машины по расписанию или данным системы мониторинга. Можно изменять их характеристики. Можно создавать новые машины или удалять имеющиеся.

Таким образом, у системного администратора клиентской облачной инфраструктуры есть возможность оптимизировать соотношение её производительности и фактической текущей нагрузки.

График

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

Мы уже выяснили, что фактическая нагрузка на реальную компьютерную систему всегда изменяется. Чтобы в системе не возникало перегрузки, в ней должен быть предусмотрен запас производительности.

Вопрос о его размере, не имеет однозначного ответа. Если нагрузка изменяется не очень часто и не очень резко, запас может быть поменьше, например, 20%. Если нагрузка изменяется часто и резко, запас производительности должен быть больше: например, 100% и выше.

Заключение

В облаке 1cloud имеются средства для оптимизации вычислительной облачной инфраструктуры и повышения эффективности её использования.

 

P. S. Ещё немного интересных статей: