У нас было 300 подписчиков, 3 Edge сервера, 1 Origin, браузеры всех сортов и расцветок и один поток 480р, а так же задача разработать систему для проведения вебинаров. И это все было просто необходимо, потому что если один раз начал стримить WebRTC с низкой задержкой, потом уже трудно остановиться. Единственное, что вызывало вопросы — выбор облачной платформы для размещения серверов. Потому что нет ничего более огорченного, расстроенного и озлобленного, чем зрители, которые получают видеопоток с артефактами и фризами.
А если серьезно, то в двух предыдущих статьях нашего блога мы подробно рассмотрели процесс развертывания WebRTC CDN с балансировкой и автоматическим масштабированием на базе Amazon Web Services и Google Cloud Platform, а теперь сравним эти платформы и разберемся, какая платформа будет лучшей в сочетании цена-качество услуг.
Краткий обзор платформ
Google Cloud Platform — набор облачных служб,которые выполняются на той же инфраструктуре, что Google Search и YouTube. Сервис доступен для пользователей с 2011 года. На текущий момент к платформе добавлены многочисленные облачные сервисы и возможности, охватывающие разнообразные информационные операции, процессы, программные решения, вычислительные мощности и хранилища данных. Google Cloud Platform использует сервис Compute Engine для обработки вычислительных процессов. Compute Engine поддерживает большинство основных облачных услуг — развертывание контейнера, масштабируемость и обработка данных. На платформе реализована виртуальная сеть Cloud с поддержкой подсетей Public IP, собственный брандмауэр, и необходимые настройки DNS.
Amazon Web Services — одна из первых облачных платформ. Являясь первопроходцем в этой области завоевала большую часть рынка. На платформе AWS доступно более 160 полнофункциональных сервисов, которые позволяют построить с нуля инфраструктуру любой сложности. В Amazon Web Services центральной вычислительной службой является сервис Elastic Compute Cloud (EC2), который для многих IT специалистов давно стал синонимом понятия «масштабируемые вычисления по требованию». В области анализа данных AWS предлагает отдельный сервис Quick Sight, который предоставляет собой легкую в использовании бизнес-аналитику с готовыми шаблонами и по стоимости в несколько раз дешевле, чем традиционные BI-решения. Хранение информации обеспечивается сервисом AWS Simple Storage Service, который известен как S3. AWS Simple Storage Service признан является промышленным стандартом объектно-ориентированного хранения данных. Для архивации данных используется сервис Amazon Glacier. В Amazon Web Services вы можете использовать Virtual Private Cloud для создания VPN с настройкой подсети, таблицы маршрутизации, частных диапазонов IP-адресов и сетевых шлюзов. Кроме того, есть сервис Route 53 для реализации веб-службы DNS.
Разница в развертывании WCS на платформах Amazon Web Services и Google Cloud Platform
На момент написания этой статьи Web Call Server не доступен как готовый образ в GCP Marketplace. С этим фактом связана разница в развертывании и лицензировании.
При развертывании WCS на базе AWS пользователь, в зависимости от реализуемого проекта, может выбрать — запустить готовый WCS инстанс из AWS Marketplace с встроенной в инстанс почасовой лицензией в несколько кликов, или запустить виртуальную машину и вручную установить WCS и активировать стандартную ежемесячную подписку. Во втором случае, кроме стоимости ежемесячной подписки, которая, по правилам биллинга, формируется исходя из максимального числа серверов на которых использовалась лицензия, еще оплачивается аренда инстанса.
Мы рекомендуем использовать почасовую лицензию Amazon Marketplace для запуска WCS на короткие периоды (часы, дни), для запуска на длительные периоды — месяцы, годы — приобрести стандартную ежемесячную лицензию
При развертывании WCS на базе Google Cloud Platform доступна только ручная установка программного обеспечения на виртуальную машину. Для работы автоматического масштабирования и балансировки нагрузки нужно будет создать образ виртуальной машины с установленным и настроенным WCS. В таком случае доступна только стандартная ежемесячная подписка. Причем, как написано выше, окончательная стоимость лицензии формируется исходя из максимального числа серверов, на которых использовалась лицензия. Поэтому не получится сэкономить на стоимости подписки Web Call Server при запуске серверов на короткий период.
Разница в ценообразовании
Если функционал платформ практически одинаков, то ценовые политики различаются.
AWS для каждого продукта на платформе предлагает калькулятор стоимости. Из-за того, что стоимость каждого продукта считается отдельно, большое количество задействованных переменных затрудняет получение точных оценок итоговой стоимости инфраструктуры.
Google Cloud Planform, в свою очередь, ставит своей целью предлагать «удобные для клиентов» цены. Поэтому используются большие скидки и гибкий подход к тарификации.
Давайте посчитаем и сравним, какую платформу будет выгоднее использовать для организации CDN с балансировкой и автоматическим масштабированием для проведения вебинара длительностью 1 час, с расчетом на 30 и 300 зрителей.
Архитектура CDN будет такой же, как и в предыдущих статьях по развертыванию:
- один Origin сервер;
- один Edge в составе балансировщика нагрузки, который позволяет во время пиковой нагрузки увеличить число Edge серверов до трех и более.
Итак, предположим, что на Origin сервере опубликован один видеопоток разрешением 854×480 (480p) с битрейтом 1000 кбит/с. и 30 зрителей смотрят этот поток без транскодирования на Edge серверах. Так как в нашем примере не много подписчиков, то можем использовать минимальные инстансы. (Цены, указанные в таблицах, действовали на момент написания статьи. Из-за гибких ценовых политик площадок, цены доступные для Вас могут отличаться, как в меньшую, так и в большую сторону.)
Параметр | Amazon Web Services t3.micro ( 2 vCPUs, 1 GB memory, HDD 20 GB); USD/hr | Google Cloud Platform n1-standard-1 (1 vCPU, 3.75 GB memory, HDD 20 GB); USD/hr |
Стоимость лицензии WCS | $0.01 | $75 |
Стоимость аренды инстанса | $0.011 | $0.047 |
Стоимость аренды дискового пространства | $0.025 GB/month | $0.04 GB/month |
Стоимость трафика для инстанса | $0.09 per GB | $0.04 per GB |
Итого за 1 инстанс WCS | $0.512 | $75,847 |
Приблизительное количество и стоимость трафика в CDN | 12.6 GB $1.134 | 12,6 GB $0.504 |
Итоговая Стоимость CDN (4 инстанса) | $3.182 | $303,892 |
Трафик внутри CDN не тарифицируется на обоих платформах. Внешний трафик от Edge к зрителям в GCP тарифицируется в зависимости от географического расположения датацентров и клиентов. Для расчетов мы используем среднее значение $0.04 за ГБ. Из-за стоимости лицензии WCS итоговая стоимость CDN на базе Google Cloud Platform достаточно высока. В этом случае даже более низкая стоимость трафика не играет значительной роли.
При прогнозируемом увеличении числа зрителей, нужно увеличить серверные мощности. Для Edge мы рекомендуем конфигурацию сервера 16 vCPUs, 64 GB memory и 10 TB трафика. Для 300 зрителей будут использоваться 3 Edge.
Теперь рассчитаем варианты развертывания CDN для 300 пользователей на один час:
Параметр | Amazon Web Services m5.4xlarge ( 16 vCPUs, 64 GB memory, HDD 20 GB); USD/hr | Google Cloud Platform n1-standard-16 (16 vCPUs, 60 GB memory, HDD 20 GB); USD/hr |
Стоимость лицензии WCS | $0.768 | $75 |
Стоимость аренды инстанса | $0.816 | $0.76 |
Стоимость аренды дискового пространства | $0.025 GB/month | $0.04 GB/month |
Стоимость трафика для инстанса | $0.09 per GB | $0.04 per GB |
Итого 1 сервер | $2.084 | $76.56 |
Приблизительное количество и стоимость трафика в CDN | 126 GB $11.34 | 126 GB $5.04 |
Стоимость CDN | $45.36 | $311.28 |
И на месяц (720 часов):
Параметр | Amazon Web Services m5.4xlarge ( 16 vCPUs, 64 GB memory, HDD 20 GB); USD/hr Почасовая лицензия WCS | Amazon Web Services m5.4xlarge ( 16 vCPUs, 64 GB memory, HDD 20 GB); USD/hr Стандартная лицензия WCS | Google Cloud Platform n1-standard-16 (16 vCPUs, 60 GB memory, HDD 20 GB); USD/hr Стандартная лицензия WCS |
Стоимость лицензии WCS | $0.768 *720 | $75 | $75 |
Стоимость аренды инстанса | $0.816 *720 | $0.816 *720 | $0.76 *720 |
Стоимость аренды дискового пространства | $0.025 per GB / month | $0.025 per GB / month | $0.040 per GB / month |
Стоимость трафика для инстанса | $0.09 per GB | $0.09 per GB | $0.04 per GB |
Итого 1 сервер | $1 115.06 | $663.02 | $623 |
Приблизительное количество и стоимость трафика в CDN | 88.6 TB $8 164.8 | 88.6 TB $8 164.8 | 88.6 TB $3 628.8 |
Стоимость CDN | $12 625.04 | $10 816.88 | $6 120,8 |
В итоге, как видите, для длительного развертывания выгоднее использовать стандартную лицензию WCS. Итоговая стоимость развертывания WebRTC CDN с балансировщиком и автоматическим масштабированием при использовании стандартной лицензии WCS на площадках AWS и GCP зависит от стоимости трафика для конкретной географической зоны. Из-за достаточно высокой итоговой стоимости CDN для длительной эксплуатации развертывание на платформе Amazon Web Services можно рекомендовать, если у вас уже есть инфраструктура глубоко интегрированная в сервисы AWS. Во-первых, чтобы не плодить зоопарк из сервисов, а во-вторых из-за гибкой ценовой политики включение CDN в существующую инфраструктуру может стоить дешевле. Эти же утверждения справедливы и для краткосрочных развертываний на платформе Google Cloud Platform.
Расчеты здесь являются приблизительной оценкой расходов, поскольку ценообразование у обоих платформ не отличается прозрачностью. Может взыматься отдельная плата за хранение образов для развертывания, бекапов, аренду доменных имен и белых IP адресов, и прочее. Но эти приблизительные расчеты позволяют оценить в сравнении итоговую стоимость CDN.
Конечный выбор платформы для развертывания WebRTC CDN с балансировщиком и автоматическим масштабированием зависит не только от сугубо технических или экономических соображений, но и от личного предпочтения. Надеемся, что после прочтения статьи, будет немного проще сделать выбор, в пользу того или другого сервиса для организации ваших видеотрансляций.
Хорошего стриминга!