UP2IT 2017, DEV&QA Stream 1
Володимир Смірнов, Managing Director, Apptimized Operations (Суми)
"Складнощі і специфіка побудови систем роздачі адалт контенту"
12. Как сделать правильный
transcoding cloud
• Сервер с процессором с поддержкой Intel
QuickSync
• Linux Ubuntu 17.10
• Intel Media SDK
• Ffmpeg 2.7 собранный с поддержкой Intel QS VA-
API
• Task queue - Celery
15. Условия
• Час 1080p видеоконтента занимает ±15-18 GB во всех
вариациях
• Работа на типовом железе
• Размер библиотеки при запуске - 1 500 часов
• Репликация и резервное хранение данных создает
оверхед > 300%
• Проигрывание 400 роликов в 1080p - 4.5 Gbps и ±12000
IOPS
• Экономия на инфраструктуре, использование хранилища
для docker контейнеров, хранилища конфигураций
• Удобный программный интерфейс для доступа к
хранилищу
16. • Варианты:
• Распределенные ФС: GlusterFS, Ceph, Lustre
• Объектное файловое хранилище: Сeph, OpenStack Swift,
Sheepdog, Nimbus, Riak Cloud Storage
• Решение: Ceph
• Причины:
• Open-source & всегда бесплатно, активное коммьюнити
• 3 модели хранения: object, block & VFS
• Используется в продакшне: Yahoo, Redhat Cloud, Dropbox,
Cisco, CERN, Deutsche Telekom, Canonical, Suse.
• S3-совместимое API для объектного хранилища
• Стабильная работа в условиях низких скоростей между
нодами
17. Uploader Rados Gateway
Ceph MDS
STOR 1
HP DL580
SSD
SAS HDD
SAS HDD
…
STOR 2
HP DL580
SSD
SAS HDD
SAS HDD
…
STOR 3
HP DL580
SSD
SAS HDD
SAS HDD
…
CDN
Transcoders
Кластер хранения
21. Условия
• Unicast :(
• Усредненная нагрузка - 10 Gbps
• Пиковая нагрузка - 80 Gbps
• Задержка старта проигрывания - не больше 1.5
секунды
• Разные цены на трафик в зависимости от региона
22. Решение
• Сложная HTTP балансировка с 302 ответом
• Munin
• MaxMind GeoIP
• Внутренняя система статистики с поддержкой A/B тестирования
• Кеширование результатов для географических зон - город,
область, страна
• nginx + lua-nginx-module
• Форк nginx-rtmp-module
• Pull контента через librados и 3 уровня кеша:
• RAM
• SSD
• HDD
• Использование edge серверов от сторонних провайдеров для
быстрого и дешевого масштабирования