Исходящий трафик из облака: скрытая статья бюджета, которую легко пропустить
Почему стоимость передачи данных из облака во внешний мир часто становится неприятным сюрпризом - и как её контролировать.
Компании переходят в облако с расчётом на предсказуемые расходы. Платишь за то, что используешь, мощности масштабируются, затраты понятны. На практике многие обнаруживают, что счёт за облако регулярно выходит за ожидаемые рамки.
Одна из самых частых причин - стоимость исходящего трафика, egress. Это плата за передачу данных из облака во внешний мир: к пользователям, в другой регион, в другое облако или обратно в свой датацентр.
Как устроена ценовая модель
Большинство облачных провайдеров не берут плату за входящий трафик - данные внутрь идут бесплатно или почти бесплатно. Исходящий трафик стоит денег. Причём тарифы часто ступенчатые: первые несколько гигабайт в месяц дешевле, дальше дороже.
Есть и менее очевидные случаи. Передача данных между разными зонами доступности внутри одного региона - тоже может стоить денег. Трафик между разными регионами одного провайдера - стоит. Трафик из одного облака в другое - стоит заметно.
Если архитектура не проектировалась с учётом этих тарифов, несоответствие обнаруживается постфактум - когда приходит счёт.
Типичные сценарии неожиданных расходов
Первый сценарий - аналитика на больших данных. Данные хранятся в облачном хранилище, обрабатываются в облачных вычислениях того же провайдера - это обычно бесплатно. Но результаты выгружаются во внешнюю BI-систему или передаются партнёрам - это уже egress.
Второй - резервное копирование в другое место. Компании часто делают бэкапы из облака А в облако Б или в собственный датацентр для надёжности. Это разумная практика. Но стоимость регулярной передачи терабайтов данных может быть значительной.
Третий - многорегиональные сервисы. Если приложение обслуживает пользователей в разных странах и данные перемещаются между регионами для синхронизации - это постоянный поток исходящего трафика, иногда не посчитанный в первоначальной оценке.
Четвёртый - переход между провайдерами или частичный выход из облака. Перенести терабайты данных обратно "на землю" или к другому провайдеру - это одноразовый, но иногда очень заметный расход.
Что можно сделать
Первый шаг - видимость. Включить детальный мониторинг по статьям расходов, чтобы понять, какая доля счёта приходится на трафик. У большинства провайдеров это настраивается.
Второй - архитектурный анализ. Посмотреть, где в системе возникает исходящий трафик: что идёт наружу, как часто, в каком объёме. Иногда незначительные изменения - размещение кэша ближе к пользователю, перенос обработки в тот же регион, где хранятся данные - значительно снижают трафик.
Третий - оценка при проектировании. Если в компании идёт проектирование нового сервиса или миграция - включить оценку egress как отдельную статью в финансовую модель.
Несколько контрольных вопросов
- Известна ли вам доля расходов на трафик в текущем счёте за облако?
- Есть ли у вас понимание, какие потоки данных генерируют наибольший исходящий трафик?
- Учитывалась ли стоимость egress при проектировании текущей архитектуры?
- Как изменится стоимость трафика, если объём данных вырастет в два раза?
- Есть ли у вас оценка стоимости возможного перехода к другому провайдеру или возврата данных?
Облако - это удобно. Но его экономика устроена так, что входить легко, а данные хранить и выгружать - по тарифу. Знать этот тариф и планировать с его учётом - часть работы с облаком как с финансовым активом.