← назад к разделу

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

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

Главное

  • Платят за то, что включено, по факту: машина по времени, хранилище по гигабайт-месяцам, функции по вызовам, трафик по гигабайтам наружу.
  • Остановленная машина не бесплатна: её диски и публичный адрес продолжают оплачиваться.
  • Скидки за обязательство держать ресурс год или три доходят до половины цены; прерываемые машины дешевле в разы, но их могут забрать за минуту.
  • Исходящий трафик стоит денег, входящий обычно нет; раздача файлов и обмен между зонами растут незаметно.
  • Без тегов на ресурсах счёт — безликая куча строк; тег надо ещё включить в отчётах, иначе он не появится как ось.
  • Бюджет с оповещением ставят до того, как что-то запустили: он не ограничивает трату, но предупреждает.

Единицы оплаты

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

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

Скидки: обязательства и прерываемые машины

Зарезервированный ресурс — скидка за обещание держать машину такого класса год или три; на постоянной нагрузке это до половины цены. Цена ошибки выше, чем кажется: бронь привязана к семейству машин и региону, и переезд на другое семейство скидку не увозит. Более гибкий вариант — обязательство тратить определённую сумму в час на вычисления, без привязки к конкретной машине.

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

Три ловушки со словом «включено»

Первая — остановленная машина. Процессор перестаёт стоить, а диски, снимки и зарезервированный публичный адрес оплачиваются дальше. «Гасим тестовые машины на ночь» экономит меньше, чем ждали, а забытые диски от удалённых машин копятся месяцами.

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

Третья — размер с запасом. Машину взяли в четыре раза больше нужной «чтобы точно хватило», база стоит на классе, который загружен на десять процентов. Подгонка размера — регулярный просмотр загрузки и уменьшение того, что простаивает; в облаке уменьшить машину так же просто, как увеличить.

Как увидеть, куда уходят деньги

Начинают с тегов. Тег — пара «ключ-значение» на ресурсе: команда, сервис, среда. Когда всё помечено, счёт раскладывается по командам и сервисам, и видно, кто за что платит. Просто навесить тег недостаточно: его надо включить как ось разбивки в настройках отчётов, иначе он там не появится.

Дальше — бюджет с оповещением. Он не ограничивает трату (машины не выключатся), но пишет, когда расход превысил порог или прогноз на месяц вышел за план. Ставят его до первого запуска. И регулярный разбор: раз в месяц заглянуть в отчёт, чтобы каждая значимая строка была объяснима, а забытые ресурсы удалены.

Глубже: как считать, что дешевле — управляемое или своё

Сравнивать цену управляемой базы с ценой машины под свой PostgreSQL некорректно: в машине нет копий, реплики, обновлений и ночных дежурств. Честный расчёт добавляет к своей машине вторую под реплику, хранилище копий и долю времени человека, который за этим следит. На малых и средних объёмах управляемое выигрывает почти всегда; на очень больших, когда администратор всё равно есть, своё может выйти дешевле — и это уже расчёт, а не ощущение.

Глубже: что провайдер даёт бесплатно, а что нет

У каждого провайдера есть бесплатный уровень: маленькие машины и хранилище на первый год или навсегда в ограниченном объёме. Он годится для учёбы и прототипа и не годится как основа оценки: боевой сервис быстро выходит за его пределы. Отдельно стоит помнить про сервисы, у которых плата не за работу, а за существование: балансировщик, NAT-шлюз, зарезервированный адрес стоят часами независимо от трафика, и именно они чаще всего остаются после экспериментов.

Что почитать дальше